Published site at 02d263e7dde146956fda0ec245aeae85926ab12f.
diff --git a/acid-semantics.html b/acid-semantics.html
index 234a583..b289a0d 100644
--- a/acid-semantics.html
+++ b/acid-semantics.html
@@ -456,7 +456,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf
index 206bb6b..b4d7715 100644
--- a/apache_hbase_reference_guide.pdf
+++ b/apache_hbase_reference_guide.pdf
Binary files differ
diff --git a/apidocs/deprecated-list.html b/apidocs/deprecated-list.html
index 7d3863b..1a5ae7d 100644
--- a/apidocs/deprecated-list.html
+++ b/apidocs/deprecated-list.html
@@ -206,7 +206,7 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.ASCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedString.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedString.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -216,17 +216,37 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt8.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt8.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/RawString.html#ASCENDING">org.apache.hadoop.hbase.types.RawString.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#ASCENDING">org.apache.hadoop.hbase.types.RawBytes.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt32.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt64.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt64.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#ASCENDING">org.apache.hadoop.hbase.types.RawBytes.ASCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -236,35 +256,15 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt8.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt8.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt32.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedString.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedString.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlobVar.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedBlobVar.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedNumeric.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedNumeric.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlobVar.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedBlobVar.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/BufferedMutator.html#CLASSNAME_KEY">org.apache.hadoop.hbase.client.BufferedMutator.CLASSNAME_KEY</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
@@ -284,7 +284,7 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.DESCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedString.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedString.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -294,17 +294,37 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt8.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt8.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/RawString.html#DESCENDING">org.apache.hadoop.hbase.types.RawString.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#DESCENDING">org.apache.hadoop.hbase.types.RawBytes.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt32.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt64.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt64.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#DESCENDING">org.apache.hadoop.hbase.types.RawBytes.DESCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -314,35 +334,15 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt8.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt8.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt32.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedString.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedString.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlobVar.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedBlobVar.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedNumeric.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedNumeric.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlobVar.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedBlobVar.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/mapreduce/SimpleTotalOrderPartitioner.html#END">org.apache.hadoop.hbase.mapreduce.SimpleTotalOrderPartitioner.END</a>
 <div class="block"><span class="deprecationComment">since 0.90.0</span></div>
@@ -562,29 +562,29 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-byte:A-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], byte[])</a>
-<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
-             any more.</span></div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-byte:A-">org.apache.hadoop.hbase.client.Table.checkAndMutate(byte[], byte[])</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
    any more.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], Filter)</a>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-byte:A-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], byte[])</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
              any more.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">org.apache.hadoop.hbase.client.Table.checkAndMutate(byte[], Filter)</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
    any more.</span></div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], Filter)</a>
+<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
+             any more.</span></div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html#containsTable-org.apache.hadoop.hbase.TableName-">org.apache.hadoop.hbase.rsgroup.RSGroupInfo.containsTable(TableName)</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. The rsgroup information will be stored in
diff --git a/apidocs/org/apache/hadoop/hbase/CellBuilderType.html b/apidocs/org/apache/hadoop/hbase/CellBuilderType.html
index a65e979..8c7b1ca 100644
--- a/apidocs/org/apache/hadoop/hbase/CellBuilderType.html
+++ b/apidocs/org/apache/hadoop/hbase/CellBuilderType.html
@@ -243,7 +243,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/CellBuilderType.html#line.24">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/CellBuilderType.html#line.27">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -263,7 +263,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/CellBuilderType.html#line.24">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/CellBuilderType.html#line.27">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/KeepDeletedCells.html b/apidocs/org/apache/hadoop/hbase/KeepDeletedCells.html
index 3e952f8..97e046a 100644
--- a/apidocs/org/apache/hadoop/hbase/KeepDeletedCells.html
+++ b/apidocs/org/apache/hadoop/hbase/KeepDeletedCells.html
@@ -266,7 +266,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/KeepDeletedCells.html#line.51">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/KeepDeletedCells.html#line.28">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -286,7 +286,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/KeepDeletedCells.html#line.51">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/KeepDeletedCells.html#line.28">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/MemoryCompactionPolicy.html b/apidocs/org/apache/hadoop/hbase/MemoryCompactionPolicy.html
index db2c715..87c1d1a 100644
--- a/apidocs/org/apache/hadoop/hbase/MemoryCompactionPolicy.html
+++ b/apidocs/org/apache/hadoop/hbase/MemoryCompactionPolicy.html
@@ -279,7 +279,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase">MemoryCompactionPolicy</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/MemoryCompactionPolicy.html#line.52">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase">MemoryCompactionPolicy</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/MemoryCompactionPolicy.html#line.29">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -299,7 +299,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase">MemoryCompactionPolicy</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/MemoryCompactionPolicy.html#line.52">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase">MemoryCompactionPolicy</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/MemoryCompactionPolicy.html#line.29">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/Cell.html b/apidocs/org/apache/hadoop/hbase/class-use/Cell.html
index f789597..f2532d1 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/Cell.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/Cell.html
@@ -669,17 +669,17 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Add the specified KeyValue to this Put operation.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Add an existing delete marker to this Delete object.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Add the specified KeyValue to this Put operation.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected int</code></td>
 <td class="colLast"><span class="typeNameLabel">Result.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Result.html#binarySearch-org.apache.hadoop.hbase.Cell:A-byte:A-byte:A-">binarySearch</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>[]&nbsp;kvs,
@@ -809,52 +809,44 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
 <div class="block">If the filter returns the match code SEEK_NEXT_USING_HINT, then it should also tell which is
  the next key it must seek to.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
 <div class="block">Pick the next cell that the scanner should seek to.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -862,7 +854,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -870,6 +862,14 @@
 <div class="block">Give the filter a chance to transform the passed KeyValue.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -905,19 +905,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -925,11 +917,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -937,43 +937,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -981,7 +949,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -991,15 +967,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -1007,6 +975,38 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterColumn-org.apache.hadoop.hbase.Cell-">filterColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -1015,69 +1015,53 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>
 <div class="block">Filters a row based on the row key.</div>
@@ -1085,27 +1069,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -1113,40 +1105,40 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
 <div class="block">If the filter returns the match code SEEK_NEXT_USING_HINT, then it should also tell which is
  the next key it must seek to.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
 <div class="block">Pick the next cell that the scanner should seek to.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -1154,7 +1146,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -1162,6 +1154,14 @@
 <div class="block">Give the filter a chance to transform the passed KeyValue.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -1173,19 +1173,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells)</code>
 <div class="block">Filters that never filter by modifying the returned List of Cells can inherit this
  implementation that does nothing.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html b/apidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html
index a568121..30bd49d 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html
@@ -197,19 +197,19 @@
 <td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Increment.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType)</code>
 <div class="block">get a CellBuilder instance that already has relevant Type and Row set.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-org.apache.hadoop.hbase.Cell.Type-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType,
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html b/apidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html
index 9d1951a..0268875 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html
@@ -159,19 +159,19 @@
 <td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Increment.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType)</code>
 <div class="block">get a CellBuilder instance that already has relevant Type and Row set.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-org.apache.hadoop.hbase.Cell.Type-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType,
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/CellScanner.html b/apidocs/org/apache/hadoop/hbase/class-use/CellScanner.html
index 759cec0..2ce60ae 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/CellScanner.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/CellScanner.html
@@ -165,11 +165,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Result.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Result.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Result.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Result.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html b/apidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html
index 89c66b3..9f06a3c 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html
@@ -125,18 +125,18 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Returns a ClusterMetrics for this HBase cluster.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#getInitialClusterMetrics--">getInitialClusterMetrics</a></span>()</code>
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/ServerName.html b/apidocs/org/apache/hadoop/hbase/class-use/ServerName.html
index bab0e88..c3dbfea 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/ServerName.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/ServerName.html
@@ -147,6 +147,13 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
+                      byte[]&nbsp;regionName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
                       byte[]&nbsp;regionName)</code>
@@ -154,20 +161,13 @@
 <div class="block">Get the ServerName of region server serving the specified region</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
-                      byte[]&nbsp;regionName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -292,6 +292,12 @@
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#isKilledRS-org.apache.hadoop.hbase.ServerName-">isKilledRS</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#isKilledRS-org.apache.hadoop.hbase.ServerName-">isKilledRS</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -299,18 +305,18 @@
  it possible to do fault tolerance testing for dead servers in a deterministic way.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#isKilledRS-org.apache.hadoop.hbase.ServerName-">isKilledRS</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerName.html#isSameAddress-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.ServerName-">isSameAddress</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;left,
              <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;right)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killDataNode-org.apache.hadoop.hbase.ServerName-">killDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#killDataNode-org.apache.hadoop.hbase.ServerName-">killDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -318,13 +324,13 @@
  this causes master to exit doing basic clean up only.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killDataNode-org.apache.hadoop.hbase.ServerName-">killDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killMaster-org.apache.hadoop.hbase.ServerName-">killMaster</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#killMaster-org.apache.hadoop.hbase.ServerName-">killMaster</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -332,13 +338,13 @@
  this causes master to exit doing basic clean up only.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killMaster-org.apache.hadoop.hbase.ServerName-">killMaster</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killNameNode-org.apache.hadoop.hbase.ServerName-">killNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#killNameNode-org.apache.hadoop.hbase.ServerName-">killNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -346,13 +352,13 @@
  exit doing basic clean up only.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killNameNode-org.apache.hadoop.hbase.ServerName-">killNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killRegionServer-org.apache.hadoop.hbase.ServerName-">killRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#killRegionServer-org.apache.hadoop.hbase.ServerName-">killRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -360,13 +366,13 @@
  this causes the region server to exit doing basic clean up only.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killRegionServer-org.apache.hadoop.hbase.ServerName-">killRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killZkNode-org.apache.hadoop.hbase.ServerName-">killZkNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#killZkNode-org.apache.hadoop.hbase.ServerName-">killZkNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -374,12 +380,6 @@
  this causes master to exit doing basic clean up only.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#killZkNode-org.apache.hadoop.hbase.ServerName-">killZkNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#moveRegionAndWait-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-">moveRegionAndWait</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;destRegion,
@@ -389,19 +389,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#resumeRegionServer-org.apache.hadoop.hbase.ServerName-">resumeRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#resumeRegionServer-org.apache.hadoop.hbase.ServerName-">resumeRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Resume the region server</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#resumeRegionServer-org.apache.hadoop.hbase.ServerName-">resumeRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#startDataNode-org.apache.hadoop.hbase.ServerName-">startDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#startDataNode-org.apache.hadoop.hbase.ServerName-">startDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -409,13 +415,13 @@
  silently logs warning message.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#startDataNode-org.apache.hadoop.hbase.ServerName-">startDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#startNameNode-org.apache.hadoop.hbase.ServerName-">startNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#startNameNode-org.apache.hadoop.hbase.ServerName-">startNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -423,13 +429,13 @@
  warning message.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#startNameNode-org.apache.hadoop.hbase.ServerName-">startNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopDataNode-org.apache.hadoop.hbase.ServerName-">stopDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#stopDataNode-org.apache.hadoop.hbase.ServerName-">stopDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -437,52 +443,52 @@
  silently logs warning message.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopDataNode-org.apache.hadoop.hbase.ServerName-">stopDataNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopMaster-org.apache.hadoop.hbase.ServerName-">stopMaster</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#stopMaster-org.apache.hadoop.hbase.ServerName-">stopMaster</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Stops the given master, by attempting a gradual stop.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopMaster-org.apache.hadoop.hbase.ServerName-">stopMaster</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopNameNode-org.apache.hadoop.hbase.ServerName-">stopNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#stopNameNode-org.apache.hadoop.hbase.ServerName-">stopNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Stops the namenode if this is a distributed cluster, otherwise silently logs warning message.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopNameNode-org.apache.hadoop.hbase.ServerName-">stopNameNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Stops the given region server, by attempting a gradual stop.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopZkNode-org.apache.hadoop.hbase.ServerName-">stopZkNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#stopZkNode-org.apache.hadoop.hbase.ServerName-">stopZkNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -490,26 +496,27 @@
  silently logs warning message.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#stopZkNode-org.apache.hadoop.hbase.ServerName-">stopZkNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#suspendRegionServer-org.apache.hadoop.hbase.ServerName-">suspendRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#suspendRegionServer-org.apache.hadoop.hbase.ServerName-">suspendRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Suspend the region server</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#suspendRegionServer-org.apache.hadoop.hbase.ServerName-">suspendRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForDataNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                      long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForDataNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                       long&nbsp;timeout)</code>
@@ -517,14 +524,14 @@
 <div class="block">Wait for the specified datanode to join the cluster</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForDataNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                      long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForDataNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                     long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForDataNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                      long&nbsp;timeout)</code>
@@ -532,14 +539,14 @@
 <div class="block">Wait for the specified datanode to stop the thread / process.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForDataNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForDataNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                     long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForMasterToStop-org.apache.hadoop.hbase.ServerName-long-">waitForMasterToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                   long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForMasterToStop-org.apache.hadoop.hbase.ServerName-long-">waitForMasterToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                    long&nbsp;timeout)</code>
@@ -547,14 +554,14 @@
 <div class="block">Wait for the specified master to stop the thread / process.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForMasterToStop-org.apache.hadoop.hbase.ServerName-long-">waitForMasterToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                   long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForNameNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                      long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForNameNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                       long&nbsp;timeout)</code>
@@ -562,14 +569,14 @@
 <div class="block">Wait for the specified namenode to join the cluster</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForNameNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                      long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForNameNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                     long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForNameNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                      long&nbsp;timeout)</code>
@@ -577,14 +584,14 @@
 <div class="block">Wait for the specified namenode to stop</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForNameNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForNameNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                     long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForRegionServerToStop-org.apache.hadoop.hbase.ServerName-long-">waitForRegionServerToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                         long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForRegionServerToStop-org.apache.hadoop.hbase.ServerName-long-">waitForRegionServerToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                          long&nbsp;timeout)</code>
@@ -592,14 +599,14 @@
 <div class="block">Wait for the specified region server to stop the thread / process.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForRegionServerToStop-org.apache.hadoop.hbase.ServerName-long-">waitForRegionServerToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                         long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForZkNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                    long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForZkNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                     long&nbsp;timeout)</code>
@@ -607,14 +614,14 @@
 <div class="block">Wait for the specified zookeeper node to join the cluster</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForZkNodeToStart-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                    long&nbsp;timeout)</code>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForZkNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                   long&nbsp;timeout)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#waitForZkNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                    long&nbsp;timeout)</code>
@@ -622,13 +629,6 @@
 <div class="block">Wait for the specified zookeeper node to stop the thread / process.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#waitForZkNodeToStop-org.apache.hadoop.hbase.ServerName-long-">waitForZkNodeToStop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                   long&nbsp;timeout)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/apidocs/org/apache/hadoop/hbase/class-use/TableName.html b/apidocs/org/apache/hadoop/hbase/class-use/TableName.html
index dfe7cdd..5db8f5b 100644
--- a/apidocs/org/apache/hadoop/hbase/class-use/TableName.html
+++ b/apidocs/org/apache/hadoop/hbase/class-use/TableName.html
@@ -245,20 +245,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-       boolean&nbsp;major)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Compact all of a table's reagion in the mini hbase cluster</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        boolean&nbsp;major)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Call flushCache on all regions of the specified table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+       boolean&nbsp;major)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Compact all of a table's reagion in the mini hbase cluster</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">TableName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TableName.html#compareTo-org.apache.hadoop.hbase.TableName-">compareTo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -676,6 +676,13 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
+                      byte[]&nbsp;regionName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
                       byte[]&nbsp;regionName)</code>
@@ -683,13 +690,6 @@
 <div class="block">Get the ServerName of region server serving the specified region</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getServerHoldingRegion-org.apache.hadoop.hbase.TableName-byte:A-">getServerHoldingRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
-                      byte[]&nbsp;regionName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.regionserver.HRegion</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#getSplittableRegion-org.apache.hadoop.hbase.TableName-int-">getSplittableRegion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -841,13 +841,25 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Table.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of this table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of the table whose region we want to locate.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutator.html#getName--">getName</a></span>()</code>
 <div class="block">Gets the fully qualified table name instance of the table that this BufferedMutator writes to.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getName--">getName</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getName--">getName</a></span>()</code>
 <div class="block">Gets the fully qualified table name instance of this table.</div>
 </td>
 </tr>
@@ -860,19 +872,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of the table whose region we want to locate.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Table.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of this table.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getName--">getName</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getName--">getName</a></span>()</code>
 <div class="block">Gets the fully qualified table name instance of this table.</div>
 </td>
 </tr>
@@ -888,7 +888,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotDescription.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorParams.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
@@ -898,7 +898,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorParams.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotDescription.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]</code></td>
diff --git a/apidocs/org/apache/hadoop/hbase/client/CompactType.html b/apidocs/org/apache/hadoop/hbase/client/CompactType.html
index d3fb6ef..1ad2a3e 100644
--- a/apidocs/org/apache/hadoop/hbase/client/CompactType.html
+++ b/apidocs/org/apache/hadoop/hbase/client/CompactType.html
@@ -236,7 +236,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactType.html#line.23">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactType.html#line.33">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -256,7 +256,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactType.html#line.23">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactType.html#line.33">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/CompactionState.html b/apidocs/org/apache/hadoop/hbase/client/CompactionState.html
index 8bbb145..edc2c8a 100644
--- a/apidocs/org/apache/hadoop/hbase/client/CompactionState.html
+++ b/apidocs/org/apache/hadoop/hbase/client/CompactionState.html
@@ -258,7 +258,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactionState.html#line.26">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactionState.html#line.28">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -278,7 +278,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactionState.html#line.26">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/CompactionState.html#line.28">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/Consistency.html b/apidocs/org/apache/hadoop/hbase/client/Consistency.html
index 3ee9b12..a6026b9 100644
--- a/apidocs/org/apache/hadoop/hbase/client/Consistency.html
+++ b/apidocs/org/apache/hadoop/hbase/client/Consistency.html
@@ -253,7 +253,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Consistency.html#line.24">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Consistency.html#line.28">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -273,7 +273,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Consistency.html#line.24">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Consistency.html#line.28">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/Durability.html b/apidocs/org/apache/hadoop/hbase/client/Durability.html
index cb6c535..f1df6e1 100644
--- a/apidocs/org/apache/hadoop/hbase/client/Durability.html
+++ b/apidocs/org/apache/hadoop/hbase/client/Durability.html
@@ -292,7 +292,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Durability.html#line.56">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Durability.html#line.25">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -312,7 +312,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Durability.html#line.56">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Durability.html#line.25">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/IsolationLevel.html b/apidocs/org/apache/hadoop/hbase/client/IsolationLevel.html
index 6f117d6..f4e82fe 100644
--- a/apidocs/org/apache/hadoop/hbase/client/IsolationLevel.html
+++ b/apidocs/org/apache/hadoop/hbase/client/IsolationLevel.html
@@ -256,7 +256,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/IsolationLevel.html#line.23">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/IsolationLevel.html#line.28">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -276,7 +276,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/IsolationLevel.html#line.23">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/IsolationLevel.html#line.28">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html b/apidocs/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html
index 815ae13..d36257e 100644
--- a/apidocs/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html
+++ b/apidocs/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html
@@ -255,7 +255,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client">MobCompactPartitionPolicy</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html#line.40">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client">MobCompactPartitionPolicy</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html#line.29">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -275,7 +275,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client">MobCompactPartitionPolicy</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html#line.40">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client">MobCompactPartitionPolicy</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html#line.29">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/Scan.ReadType.html b/apidocs/org/apache/hadoop/hbase/client/Scan.ReadType.html
index 65eb619..b67da98 100644
--- a/apidocs/org/apache/hadoop/hbase/client/Scan.ReadType.html
+++ b/apidocs/org/apache/hadoop/hbase/client/Scan.ReadType.html
@@ -249,7 +249,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Scan.ReadType.html#line.25">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Scan.ReadType.html#line.30">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -269,7 +269,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Scan.ReadType.html#line.25">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/Scan.ReadType.html#line.30">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/SnapshotType.html b/apidocs/org/apache/hadoop/hbase/client/SnapshotType.html
index 4fd1bd2..e77e0dd 100644
--- a/apidocs/org/apache/hadoop/hbase/client/SnapshotType.html
+++ b/apidocs/org/apache/hadoop/hbase/client/SnapshotType.html
@@ -246,7 +246,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client">SnapshotType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/SnapshotType.html#line.27">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client">SnapshotType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/SnapshotType.html#line.28">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -266,7 +266,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client">SnapshotType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/SnapshotType.html#line.27">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client">SnapshotType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/SnapshotType.html#line.28">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Append.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Append.html
index ecddd6d..921f873 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Append.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Append.html
@@ -181,14 +181,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
 <div class="block">Appends values to one or more columns within a single row.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
 <div class="block">Appends values to one or more columns within a single row.</div>
 </td>
 </tr>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html b/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html
index 3d5ae4a..914b2e6 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html
@@ -134,14 +134,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
 <div class="block">checkAndMutate that atomically checks if a row matches the specified condition.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
 <div class="block">checkAndMutate that atomically checks if a row matches the specified condition.</div>
 </td>
 </tr>
@@ -155,14 +155,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
 <div class="block">Batch version of checkAndMutate.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
 <div class="block">Batch version of checkAndMutate.</div>
 </td>
 </tr>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html b/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html
index adbd36a..1659f33 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html
@@ -126,14 +126,14 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
 <div class="block">Batch version of checkAndMutate.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
 <div class="block">Batch version of checkAndMutate.</div>
 </td>
 </tr>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html
index 2b4ab1d..b16d4d5 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html
@@ -146,13 +146,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Delete.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Delete.html
index f4d7347..30a54ed 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Delete.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Delete.html
@@ -219,14 +219,14 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Delete-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
+<td class="colFirst"><code>default void</code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
 <div class="block">Deletes the specified cells/row.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>default void</code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
 <div class="block">Deletes the specified cells/row.</div>
 </td>
 </tr>
@@ -240,17 +240,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
-<div class="block">Deletes the specified cells/rows in bulk.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
 <div class="block">Batch Deletes the specified cells/rows from the table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
+<div class="block">Deletes the specified cells/rows in bulk.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#deleteAll-java.util.List-">deleteAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Durability.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Durability.html
index 8a4faaa..38156ad 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Durability.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Durability.html
@@ -192,14 +192,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#getDurability--">getDurability</a></span>()</code>
-<div class="block">Get the current durability</div>
+<td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getDurability--">getDurability</a></span>()</code>
+<div class="block">Returns the durability setting for the table.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getDurability--">getDurability</a></span>()</code>
-<div class="block">Returns the durability setting for the table.</div>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#getDurability--">getDurability</a></span>()</code>
+<div class="block">Get the current durability</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -225,8 +225,8 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
                     byte[]&nbsp;family,
                     byte[]&nbsp;qualifier,
                     long&nbsp;amount,
@@ -235,8 +235,8 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>default long</code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
                     byte[]&nbsp;family,
                     byte[]&nbsp;qualifier,
                     long&nbsp;amount,
@@ -253,14 +253,6 @@
 <td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>
 <div class="block">Set the durability for this mutation</div>
@@ -270,6 +262,14 @@
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Get.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Get.html
index 49a344a..bdc99e5 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Get.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Get.html
@@ -253,26 +253,26 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
-<div class="block">Test for the existence of columns in the table, as specified by the Get.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
 <div class="block">Test for the existence of columns in the table, as specified by the Get.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
+<div class="block">Test for the existence of columns in the table, as specified by the Get.</div>
+</td>
+</tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
 <div class="block">Extracts certain cells from a given row.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
 <div class="block">Extracts certain cells from a given row.</div>
 </td>
 </tr>
@@ -286,14 +286,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
+<td class="colFirst"><code>default boolean[]</code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
 <div class="block">Test for the existence of columns in the table, as specified by the Gets.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>default boolean[]</code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
 <div class="block">Test for the existence of columns in the table, as specified by the Gets.</div>
 </td>
 </tr>
@@ -304,17 +304,17 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
-<div class="block">Extracts certain cells from the given rows, in batch.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
 <div class="block">Extracts specified cells from the given rows, as a batch.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
+<div class="block">Extracts certain cells from the given rows, in batch.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getAll-java.util.List-">getAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Increment.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Increment.html
index 23b678e..f84564f 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Increment.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Increment.html
@@ -186,14 +186,14 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Increment-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
 <div class="block">Increments one or more columns within a single row.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
 <div class="block">Increments one or more columns within a single row.</div>
 </td>
 </tr>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html b/apidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html
index a9b7c30..dc5e1fe 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html
@@ -139,13 +139,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html
index f25a904..fe634bc 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html
@@ -286,15 +286,15 @@
 <td class="colLast"><span class="typeNameLabel">MutationSerialization.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MutationSerialization.html#getDeserializer-java.lang.Class-">getDeserializer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableOutputFormat.html" title="type parameter in TableOutputFormat">KEY</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">TableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>
 <div class="block">Creates a new record writer.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">MultiTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.io.serializer.Serializer&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MutationSerialization.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MutationSerialization.html#getSerializer-java.lang.Class-">getSerializer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;c)</code>&nbsp;</td>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Put.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Put.html
index b656adc..b65caf0 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Put.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Put.html
@@ -208,17 +208,17 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Put-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
-<div class="block">Puts some data to the table.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
 <div class="block">Puts some data in the table.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
+<div class="block">Puts some data to the table.</div>
+</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -229,17 +229,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
-<div class="block">Puts some data in the table, in batch.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
 <div class="block">Batch puts the specified data into the table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
+<div class="block">Puts some data in the table, in batch.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#putAll-java.util.List-">putAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Result.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Result.html
index 21f59b1..ab36258 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Result.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Result.html
@@ -410,13 +410,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
                org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
                org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
@@ -445,15 +445,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
-<div class="block">Extract the grouping columns from value to construct a new key.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -461,6 +452,15 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
+<div class="block">Extract the grouping columns from value to construct a new key.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
@@ -482,15 +482,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
-<div class="block">Extract the grouping columns from value to construct a new key.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -498,6 +489,15 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
+<div class="block">Extract the grouping columns from value to construct a new key.</div>
+</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html b/apidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html
index 83a71c1..01695bc 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html
@@ -106,43 +106,43 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>
-<div class="block">Gets a scanner on the current table for the given family.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>
 <div class="block">Gets a scanner on the current table for the given family.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
-          byte[]&nbsp;qualifier)</code>
-<div class="block">Gets a scanner on the current table for the given family and qualifier.</div>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>
+<div class="block">Gets a scanner on the current table for the given family.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
           byte[]&nbsp;qualifier)</code>
 <div class="block">Gets a scanner on the current table for the given family and qualifier.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
-<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
+<tr class="rowColor">
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
+          byte[]&nbsp;qualifier)</code>
+<div class="block">Gets a scanner on the current table for the given family and qualifier.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a>
  object.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
+</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html b/apidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html
index 60c4629..f65223c 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html
@@ -132,14 +132,14 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.RowMutations-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutations)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>
 <div class="block">Performs multiple mutations atomically on a single row.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
 <div class="block">Performs multiple mutations atomically on a single row.</div>
 </td>
 </tr>
diff --git a/apidocs/org/apache/hadoop/hbase/client/class-use/Scan.html b/apidocs/org/apache/hadoop/hbase/client/class-use/Scan.html
index 712696a..e27631b 100644
--- a/apidocs/org/apache/hadoop/hbase/client/class-use/Scan.html
+++ b/apidocs/org/apache/hadoop/hbase/client/class-use/Scan.html
@@ -396,18 +396,18 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
-<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a>
  object.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#scan-org.apache.hadoop.hbase.client.Scan-C-">scan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
@@ -695,13 +695,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Sets the scan defining the actual details like columns etc.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Sets the scan defining the actual details like columns etc.</div>
 </td>
 </tr>
diff --git a/apidocs/org/apache/hadoop/hbase/client/package-tree.html b/apidocs/org/apache/hadoop/hbase/client/package-tree.html
index e083d3a..b952b5a 100644
--- a/apidocs/org/apache/hadoop/hbase/client/package-tree.html
+++ b/apidocs/org/apache/hadoop/hbase/client/package-tree.html
@@ -233,17 +233,17 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/apidocs/org/apache/hadoop/hbase/client/package-use.html b/apidocs/org/apache/hadoop/hbase/client/package-use.html
index 1e948a2..0d3af57 100644
--- a/apidocs/org/apache/hadoop/hbase/client/package-use.html
+++ b/apidocs/org/apache/hadoop/hbase/client/package-use.html
@@ -610,31 +610,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Connection.html#org.apache.hadoop.hbase.mapred">Connection</a>
-<div class="block">A cluster connection encapsulating lower level individual connections to actual servers and
- a connection to zookeeper.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Put.html#org.apache.hadoop.hbase.mapred">Put</a>
 <div class="block">Used to perform Put operations for a single row.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Result.html#org.apache.hadoop.hbase.mapred">Result</a>
 <div class="block">Single row result of a <a href="../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client"><code>Get</code></a> or <a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> query.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Scan.html#org.apache.hadoop.hbase.mapred">Scan</a>
-<div class="block">Used to perform Scan operations.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Table.html#org.apache.hadoop.hbase.mapred">Table</a>
-<div class="block">Used to communicate with a single HBase table.</div>
-</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -653,34 +637,40 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Mutation.html#org.apache.hadoop.hbase.mapreduce">Mutation</a>&nbsp;</td>
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Connection.html#org.apache.hadoop.hbase.mapreduce">Connection</a>
+<div class="block">A cluster connection encapsulating lower level individual connections to actual servers and
+ a connection to zookeeper.</div>
+</td>
 </tr>
 <tr class="altColor">
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Mutation.html#org.apache.hadoop.hbase.mapreduce">Mutation</a>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Put.html#org.apache.hadoop.hbase.mapreduce">Put</a>
 <div class="block">Used to perform Put operations for a single row.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/RegionLocator.html#org.apache.hadoop.hbase.mapreduce">RegionLocator</a>
 <div class="block">Used to view region location information for a single HBase table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Result.html#org.apache.hadoop.hbase.mapreduce">Result</a>
 <div class="block">Single row result of a <a href="../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client"><code>Get</code></a> or <a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> query.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Scan.html#org.apache.hadoop.hbase.mapreduce">Scan</a>
 <div class="block">Used to perform Scan operations.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Table.html#org.apache.hadoop.hbase.mapreduce">Table</a>
 <div class="block">Used to communicate with a single HBase table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/TableDescriptor.html#org.apache.hadoop.hbase.mapreduce">TableDescriptor</a>
 <div class="block">TableDescriptor contains the details about an HBase table such as the descriptors of
  all the column families, is the table a catalog table, <code> hbase:meta </code>,
diff --git a/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html b/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html
index 078bd74..5524798 100644
--- a/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html
+++ b/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html
@@ -107,19 +107,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -127,11 +119,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -139,43 +139,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -183,7 +151,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -193,15 +169,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -209,6 +177,38 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterColumn-org.apache.hadoop.hbase.Cell-">filterColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
diff --git a/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html b/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html
index 1d1710c..877aafe 100644
--- a/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html
+++ b/apidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html
@@ -140,11 +140,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -160,16 +160,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>org.apache.hadoop.hbase.client.AsyncTable.CheckAndMutateWithFilterBuilder</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
-              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
-             any more.</span></div>
-</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default org.apache.hadoop.hbase.client.Table.CheckAndMutateWithFilterBuilder</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
               <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
@@ -179,18 +169,28 @@
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>org.apache.hadoop.hbase.client.AsyncTable.CheckAndMutateWithFilterBuilder</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
+              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
+             any more.</span></div>
+</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate.Builder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#ifMatches-org.apache.hadoop.hbase.filter.Filter-">ifMatches</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
@@ -413,81 +413,81 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>
-<div class="block">Creating this filter by reflection, it is used by <a href="../../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html" title="class in org.apache.hadoop.hbase.filter"><code>ParseFilter</code></a>,</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>
+<div class="block">Creating this filter by reflection, it is used by <a href="../../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html" title="class in org.apache.hadoop.hbase.filter"><code>ParseFilter</code></a>,</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -652,15 +652,15 @@
 <td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>
 <div class="block">Allows subclasses to set the <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter"><code>Filter</code></a> to be used.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/apidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html b/apidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html
index 5d81edf..4e2b853 100644
--- a/apidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html
+++ b/apidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html
@@ -175,13 +175,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
                org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
                org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
@@ -210,15 +210,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
-<div class="block">Extract the grouping columns from value to construct a new key.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -226,6 +217,15 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
+<div class="block">Extract the grouping columns from value to construct a new key.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
@@ -256,15 +256,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
-<div class="block">Extract the grouping columns from value to construct a new key.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -272,6 +263,15 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
+<div class="block">Extract the grouping columns from value to construct a new key.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableReduce.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableReduce.html#reduce-org.apache.hadoop.hbase.io.ImmutableBytesWritable-java.util.Iterator-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">reduce</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
@@ -342,13 +342,13 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">MultiTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -375,6 +375,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleTotalOrderPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SimpleTotalOrderPartitioner.html#getPartition-org.apache.hadoop.hbase.io.ImmutableBytesWritable-VALUE-int-">getPartition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+            <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SimpleTotalOrderPartitioner.html" title="type parameter in SimpleTotalOrderPartitioner">VALUE</a>&nbsp;value,
+            int&nbsp;reduces)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HRegionPartitioner.html#getPartition-org.apache.hadoop.hbase.io.ImmutableBytesWritable-VALUE-int-">getPartition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
             <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HRegionPartitioner.html" title="type parameter in HRegionPartitioner">VALUE</a>&nbsp;value,
             int&nbsp;numPartitions)</code>
@@ -382,12 +388,6 @@
  number of partitions i.e.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleTotalOrderPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SimpleTotalOrderPartitioner.html#getPartition-org.apache.hadoop.hbase.io.ImmutableBytesWritable-VALUE-int-">getPartition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-            <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SimpleTotalOrderPartitioner.html" title="type parameter in SimpleTotalOrderPartitioner">VALUE</a>&nbsp;value,
-            int&nbsp;reduces)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">GroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/GroupingTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
diff --git a/apidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html b/apidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html
index 35e3df7..39aa7d1 100644
--- a/apidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html
+++ b/apidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html
@@ -123,29 +123,29 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#getTimeRange--">getTimeRange</a></span>()</code>
 <div class="block">Gets the TimeRange used for this append.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html#getTimeRange--">getTimeRange</a></span>()</code>
 <div class="block">Gets the TimeRange used for this increment.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#getTimeRange--">getTimeRange</a></span>()</code>
-<div class="block">Method for retrieving the get's TimeRange</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#getTimeRange--">getTimeRange</a></span>()</code>
+<div class="block">Method for retrieving the get's TimeRange</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/apidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html b/apidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html
index 87d7aa2..e2a0115 100644
--- a/apidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html
+++ b/apidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html
@@ -115,18 +115,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CryptoCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/CryptoCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/DefaultCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CryptoCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/CryptoCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/CipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Get an Cipher</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/DefaultCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/apidocs/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html b/apidocs/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html
index e2bcdf9..9032d39 100644
--- a/apidocs/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html
+++ b/apidocs/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html
@@ -370,7 +370,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html#line.184">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html#line.26">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -390,7 +390,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html#line.184">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html#line.26">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/package-tree.html b/apidocs/org/apache/hadoop/hbase/package-tree.html
index dca6917..ee79ccc 100644
--- a/apidocs/org/apache/hadoop/hbase/package-tree.html
+++ b/apidocs/org/apache/hadoop/hbase/package-tree.html
@@ -198,8 +198,8 @@
 <ul>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompareOperator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/apidocs/org/apache/hadoop/hbase/package-use.html b/apidocs/org/apache/hadoop/hbase/package-use.html
index 845ee8a..ac44e2c 100644
--- a/apidocs/org/apache/hadoop/hbase/package-use.html
+++ b/apidocs/org/apache/hadoop/hbase/package-use.html
@@ -124,50 +124,43 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapred">org.apache.hadoop.hbase.mapred</a></td>
-<td class="colLast">
-<div class="block">Provides HBase <a href="https://cwiki.apache.org/confluence/display/HADOOP2/HadoopMapReduce">MapReduce</a>
-Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mapreduce">org.apache.hadoop.hbase.mapreduce</a></td>
 <td class="colLast">
 <div class="block">Provides HBase <a href="https://cwiki.apache.org/confluence/display/HADOOP2/HadoopMapReduce">MapReduce</a>
 Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.quotas">org.apache.hadoop.hbase.quotas</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver">org.apache.hadoop.hbase.regionserver</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.replication">org.apache.hadoop.hbase.replication</a></td>
 <td class="colLast">
 <div class="block">Multi Cluster Replication</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.rsgroup">org.apache.hadoop.hbase.rsgroup</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security">org.apache.hadoop.hbase.security</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.snapshot">org.apache.hadoop.hbase.snapshot</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.testing">org.apache.hadoop.hbase.testing</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.util">org.apache.hadoop.hbase.util</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
@@ -580,23 +573,6 @@
 </tbody>
 </table>
 </li>
-<li class="blockList"><a name="org.apache.hadoop.hbase.mapred">
-<!--   -->
-</a>
-<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
-<caption><span>Classes in <a href="../../../../org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a> used by <a href="../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colOne" scope="col">Class and Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/TableName.html#org.apache.hadoop.hbase.mapred">TableName</a>
-<div class="block">Immutable POJO class for representing a table name.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
 <li class="blockList"><a name="org.apache.hadoop.hbase.mapreduce">
 <!--   -->
 </a>
diff --git a/apidocs/org/apache/hadoop/hbase/quotas/package-tree.html b/apidocs/org/apache/hadoop/hbase/quotas/package-tree.html
index c3af662..cf987ee 100644
--- a/apidocs/org/apache/hadoop/hbase/quotas/package-tree.html
+++ b/apidocs/org/apache/hadoop/hbase/quotas/package-tree.html
@@ -127,9 +127,9 @@
 <ul>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">RpcThrottlingException.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/apidocs/org/apache/hadoop/hbase/regionserver/BloomType.html b/apidocs/org/apache/hadoop/hbase/regionserver/BloomType.html
index 4656849..826eb95 100644
--- a/apidocs/org/apache/hadoop/hbase/regionserver/BloomType.html
+++ b/apidocs/org/apache/hadoop/hbase/regionserver/BloomType.html
@@ -269,7 +269,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/BloomType.html#line.42">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/BloomType.html#line.33">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -289,7 +289,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/BloomType.html#line.42">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/BloomType.html#line.33">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html b/apidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html
index 2372da7..fca4a50 100644
--- a/apidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html
+++ b/apidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html
@@ -278,7 +278,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.37">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.74">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -298,7 +298,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.37">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.74">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/apidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html b/apidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html
index 8f53dc4..2a40cd6 100644
--- a/apidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html
+++ b/apidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html
@@ -123,14 +123,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>
 <div class="block">Getter for accessing the metadata associated with the key.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -142,23 +142,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValues--">getValues</a></span>()</code>
-<div class="block">It clone all bytes of all elements.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getValues--">getValues</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValues--">getValues</a></span>()</code>
-<div class="block">It clone all bytes of all elements.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getValues--">getValues</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getValues--">getValues</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValues--">getValues</a></span>()</code>
+<div class="block">It clone all bytes of all elements.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getValues--">getValues</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValues--">getValues</a></span>()</code>
+<div class="block">It clone all bytes of all elements.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -171,14 +171,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>
 <div class="block">Getter for accessing the metadata associated with the key.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#removeValue-org.apache.hadoop.hbase.util.Bytes-">removeValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
diff --git a/apidocs/org/apache/hadoop/hbase/util/class-use/Order.html b/apidocs/org/apache/hadoop/hbase/util/class-use/Order.html
index 6e023a6..e7aff78 100644
--- a/apidocs/org/apache/hadoop/hbase/util/class-use/Order.html
+++ b/apidocs/org/apache/hadoop/hbase/util/class-use/Order.html
@@ -133,30 +133,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -165,30 +141,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#getOrder--">getOrder</a></span>()</code>
-<div class="block">Retrieve the sort <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><code>Order</code></a> imposed by this data type, or null when
- natural ordering is not preserved.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Union2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union2.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Union4.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union4.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
@@ -196,8 +153,51 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#getOrder--">getOrder</a></span>()</code>
+<div class="block">Retrieve the sort <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><code>Order</code></a> imposed by this data type, or null when
+ natural ordering is not preserved.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Union4.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union4.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawShort.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawShort.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Union2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union2.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/apidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html b/apidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html
index 3eef4ba..3eb3f8e 100644
--- a/apidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html
+++ b/apidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html
@@ -124,52 +124,52 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="type parameter in TerminatedWrapper">T</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedString.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>byte[]</code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a></code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="type parameter in TerminatedWrapper">T</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html" title="type parameter in DataType">T</a></code></td>
@@ -178,32 +178,24 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedString.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedFloat32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang">Number</a></code></td>
@@ -215,17 +207,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
-      int&nbsp;length)</code>
-<div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
-      int&nbsp;index)</code>
-<div class="block">Read the field at <code>index</code>.</div>
-</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
@@ -236,6 +222,20 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
+      int&nbsp;length)</code>
+<div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
+      int&nbsp;index)</code>
+<div class="block">Read the field at <code>index</code>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RawBytesTerminated.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytesTerminated.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
       int&nbsp;length)</code>
 <div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
@@ -315,12 +315,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Byte-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Byte-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Byte-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Byte-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -349,15 +349,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      byte[]&nbsp;val,
-      int&nbsp;voff,
-      int&nbsp;vlen)</code>
-<div class="block">Write <code>val</code> into <code>dst</code>, respecting <code>voff</code> and <code>vlen</code>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">RawBytesFixedLength.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytesFixedLength.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       byte[]&nbsp;val,
       int&nbsp;voff,
@@ -366,16 +357,16 @@
  <code>length</code>.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       byte[]&nbsp;val,
       int&nbsp;voff,
       int&nbsp;vlen)</code>
-<div class="block">Write a subset of <code>val</code> to <code>dst</code>.</div>
+<div class="block">Write <code>val</code> into <code>dst</code>, respecting <code>voff</code> and <code>vlen</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">RawBytesTerminated.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytesTerminated.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       byte[]&nbsp;val,
@@ -385,6 +376,15 @@
  <code>length</code>.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      byte[]&nbsp;val,
+      int&nbsp;voff,
+      int&nbsp;vlen)</code>
+<div class="block">Write a subset of <code>val</code> to <code>dst</code>.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Double-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
@@ -407,22 +407,22 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt64.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Long-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Long-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Long-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt64.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Long-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -447,33 +447,33 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      <a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a>&nbsp;val)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="type parameter in TerminatedWrapper">T</a>&nbsp;val)</code>
 <div class="block">Write instance <code>val</code> into buffer <code>dst</code>.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html" title="type parameter in DataType">T</a>&nbsp;val)</code>
 <div class="block">Write instance <code>val</code> into buffer <code>dst</code>.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      <a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a>&nbsp;val)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html#encodeByte-org.apache.hadoop.hbase.util.PositionedByteRange-byte-">encodeByte</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
@@ -538,17 +538,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
-<div class="block">Skip <code>src</code>'s position forward over one encoded value.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -556,33 +546,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
-<div class="block">Skip <code>src</code>'s position forward over one encoded value.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -590,8 +554,44 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
+<div class="block">Skip <code>src</code>'s position forward over one encoded value.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
+<div class="block">Skip <code>src</code>'s position forward over one encoded value.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">RawShort.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawShort.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected int</code></td>
 <td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#terminatorPosition-org.apache.hadoop.hbase.util.PositionedByteRange-">terminatorPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
@@ -664,11 +664,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -692,12 +692,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
    byte[]&nbsp;dst)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
    byte[]&nbsp;dst)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -709,14 +709,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
    byte[]&nbsp;dst,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
    byte[]&nbsp;dst,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
@@ -729,11 +729,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -743,11 +743,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -759,13 +759,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
@@ -776,12 +776,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
    byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
    byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -791,12 +791,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -808,14 +808,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
@@ -828,11 +828,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -841,12 +841,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
       int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
       int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -856,12 +856,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
        long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
        long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -872,11 +872,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -885,12 +885,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
         short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
         short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -901,11 +901,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -913,11 +913,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -927,13 +927,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
@@ -943,11 +943,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -991,11 +991,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -1004,12 +1004,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
                    int&nbsp;copyLength)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
                    int&nbsp;copyLength)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1018,11 +1018,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/apidocs/overview-tree.html b/apidocs/overview-tree.html
index 9730d2b..a3457fe 100644
--- a/apidocs/overview-tree.html
+++ b/apidocs/overview-tree.html
@@ -519,12 +519,12 @@
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableInputFormat</span></a> (implements org.apache.hadoop.mapred.JobConfigurable)</li>
 </ul>
 </li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableMapReduceUtil</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableMapReduceUtil</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableMapReduceUtil</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">TableName</span></a> (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableRecordReader</span></a> (implements org.apache.hadoop.mapred.RecordReader&lt;K,V&gt;)</li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableRecordReaderImpl</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableRecordReaderImpl</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableRecordReaderImpl</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableSnapshotInputFormat</span></a> (implements org.apache.hadoop.mapred.InputFormat&lt;K,V&gt;)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">MultiTableSnapshotInputFormat</span></a> (implements org.apache.hadoop.mapred.InputFormat&lt;K,V&gt;)</li>
@@ -922,31 +922,31 @@
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">BloomType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompareOperator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">RpcThrottlingException.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/RegexStringComparator.EngineType.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">RegexStringComparator.EngineType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.security.<a href="org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security"><span class="typeNameLink">SecurityCapability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.compress.<a href="org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress"><span class="typeNameLink">Compression.Algorithm</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.encoding.<a href="org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding"><span class="typeNameLink">DataBlockEncoding</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.compress.<a href="org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress"><span class="typeNameLink">Compression.Algorithm</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/book.html b/book.html
index 1fa66ef..db3b30f 100644
--- a/book.html
+++ b/book.html
@@ -46227,7 +46227,7 @@
 <div id="footer">
 <div id="footer-text">
 Version 3.0.0-alpha-2-SNAPSHOT<br>
-Last updated 2021-07-25 20:04:58 UTC
+Last updated 2021-07-26 20:05:48 UTC
 </div>
 </div>
 <link rel="stylesheet" href="./coderay-asciidoctor.css">
diff --git a/bulk-loads.html b/bulk-loads.html
index 811d72e..1135a09 100644
--- a/bulk-loads.html
+++ b/bulk-loads.html
@@ -161,7 +161,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/checkstyle-aggregate.html b/checkstyle-aggregate.html
index 7e5f578..d665a4d 100644
--- a/checkstyle-aggregate.html
+++ b/checkstyle-aggregate.html
@@ -158,7 +158,7 @@
 <td>4451</td>
 <td>0</td>
 <td>0</td>
-<td>8994</td></tr></table></div>
+<td>8992</td></tr></table></div>
 <div class="section">
 <h2><a name="Files"></a>Files</h2>
 <table border="0" class="table table-striped">
@@ -6596,7 +6596,7 @@
 <td><a href="#org.apache.hadoop.hbase.util.CommonFSUtils.java">org/apache/hadoop/hbase/util/CommonFSUtils.java</a></td>
 <td>0</td>
 <td>0</td>
-<td>3</td></tr>
+<td>1</td></tr>
 <tr class="b">
 <td><a href="#org.apache.hadoop.hbase.util.CompressionTest.java">org/apache/hadoop/hbase/util/CompressionTest.java</a></td>
 <td>0</td>
@@ -7283,7 +7283,7 @@
 <tr class="b">
 <td>annotation</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_annotation.html#MissingDeprecated">MissingDeprecated</a></td>
-<td>7</td>
+<td>5</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
 <tr class="a">
 <td>blocks</td>
@@ -7382,7 +7382,7 @@
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_javadoc.html#JavadocTagContinuationIndentation">JavadocTagContinuationIndentation</a>
 <ul>
 <li>offset: <tt>&quot;2&quot;</tt></li></ul></td>
-<td>531</td>
+<td>533</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
 <tr class="a">
 <td></td>
@@ -7405,7 +7405,7 @@
 <ul>
 <li>max: <tt>&quot;100&quot;</tt></li>
 <li>ignorePattern: <tt>&quot;^package.*|^import.*|a href|href|http://|https://|ftp://|org.apache.thrift.|com.google.protobuf.|hbase.protobuf.generated&quot;</tt></li></ul></td>
-<td>846</td>
+<td>844</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
 <tr class="a">
 <td></td>
@@ -35823,8 +35823,8 @@
 <th>Line</th></tr>
 <tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
-<td>annotation</td>
-<td>MissingDeprecated</td>
+<td>javadoc</td>
+<td>JavadocTagContinuationIndentation</td>
 <td>Javadoc comment at column 14 has parse error. Details: mismatched input ':' expecting &lt;EOF&gt; while parsing JAVADOC</td>
 <td>46</td></tr></table></div>
 <div class="section">
@@ -48627,7 +48627,7 @@
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 101).</td>
-<td>2418</td></tr></table></div>
+<td>2406</td></tr></table></div>
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.regionserver.HStoreFile.java">org/apache/hadoop/hbase/regionserver/HStoreFile.java</h3>
 <table border="0" class="table table-striped">
@@ -50907,8 +50907,8 @@
 <th>Line</th></tr>
 <tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
-<td>annotation</td>
-<td>MissingDeprecated</td>
+<td>javadoc</td>
+<td>JavadocTagContinuationIndentation</td>
 <td>Javadoc comment at column 54 has parse error. Details: no viable alternative at input '(' while parsing JAVADOC_INLINE_TAG</td>
 <td>59</td></tr>
 <tr class="b">
@@ -52230,19 +52230,19 @@
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 104).</td>
-<td>206</td></tr>
+<td>205</td></tr>
 <tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
-<td>619</td></tr>
+<td>608</td></tr>
 <tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'object def rcurly' has incorrect indentation level 4, expected level should be one of the following: 6, 8.</td>
-<td>734</td></tr></table></div>
+<td>723</td></tr></table></div>
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.regionserver.TestCompactionState.java">org/apache/hadoop/hbase/regionserver/TestCompactionState.java</h3>
 <table border="0" class="table table-striped">
@@ -68376,19 +68376,7 @@
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
-<td>350</td></tr>
-<tr class="b">
-<td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
-<td>sizes</td>
-<td>LineLength</td>
-<td>Line is longer than 100 characters (found 102).</td>
-<td>774</td></tr>
-<tr class="a">
-<td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
-<td>sizes</td>
-<td>LineLength</td>
-<td>Line is longer than 100 characters (found 103).</td>
-<td>779</td></tr></table></div>
+<td>347</td></tr></table></div>
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.util.CompressionTest.java">org/apache/hadoop/hbase/util/CompressionTest.java</h3>
 <table border="0" class="table table-striped">
@@ -74190,7 +74178,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/checkstyle.rss b/checkstyle.rss
index 90f92c2..9a69350 100644
--- a/checkstyle.rss
+++ b/checkstyle.rss
@@ -26,7 +26,7 @@
     <copyright>&#169;2007 - 2021 The Apache Software Foundation</copyright>
     <item>
       <title>File: 4451,
-             Errors: 8994,
+             Errors: 8992,
              Warnings: 0,
              Infos: 0
       </title>
@@ -746,7 +746,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.NonThreadSafeMemStoreSizing.java">org/apache/hadoop/hbase/regionserver/NonThreadSafeMemStoreSizing.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoderImpl.java">org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoderImpl.java</a>
                 </td>
                 <td>
                   0
@@ -760,7 +760,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoderImpl.java">org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoderImpl.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.NonThreadSafeMemStoreSizing.java">org/apache/hadoop/hbase/regionserver/NonThreadSafeMemStoreSizing.java</a>
                 </td>
                 <td>
                   0
@@ -2510,7 +2510,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.DateTieredStoreEngine.java">org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.MobUtils.java">org/apache/hadoop/hbase/mob/MobUtils.java</a>
                 </td>
                 <td>
                   0
@@ -2524,7 +2524,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.MobUtils.java">org/apache/hadoop/hbase/mob/MobUtils.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.DateTieredStoreEngine.java">org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.java</a>
                 </td>
                 <td>
                   0
@@ -2888,7 +2888,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.SinusoidalFileListGenerator.java">org/apache/hadoop/hbase/regionserver/compactions/SinusoidalFileListGenerator.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestPreadReversedScanner.java">org/apache/hadoop/hbase/client/TestPreadReversedScanner.java</a>
                 </td>
                 <td>
                   0
@@ -2902,7 +2902,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestPreadReversedScanner.java">org/apache/hadoop/hbase/client/TestPreadReversedScanner.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.SinusoidalFileListGenerator.java">org/apache/hadoop/hbase/regionserver/compactions/SinusoidalFileListGenerator.java</a>
                 </td>
                 <td>
                   0
@@ -4848,20 +4848,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestQuotaObserverChore.java">org/apache/hadoop/hbase/quotas/TestQuotaObserverChore.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.util.HFileArchiveTestingUtil.java">org/apache/hadoop/hbase/util/HFileArchiveTestingUtil.java</a>
                 </td>
                 <td>
@@ -4890,6 +4876,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestQuotaObserverChore.java">org/apache/hadoop/hbase/quotas/TestQuotaObserverChore.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure2.TestProcedureEvents.java">org/apache/hadoop/hbase/procedure2/TestProcedureEvents.java</a>
                 </td>
                 <td>
@@ -6710,20 +6710,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.snapshot.TestRegionSnapshotTask.java">org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.snapshot.TestRestoreSnapshotHelper.java">org/apache/hadoop/hbase/snapshot/TestRestoreSnapshotHelper.java</a>
                 </td>
                 <td>
@@ -6738,6 +6724,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.snapshot.TestRegionSnapshotTask.java">org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestSwitchToStreamRead.java">org/apache/hadoop/hbase/regionserver/TestSwitchToStreamRead.java</a>
                 </td>
                 <td>
@@ -8348,20 +8348,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.SpaceViolationPolicyEnforcementFactory.java">org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcementFactory.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.MetricsMasterFileSystem.java">org/apache/hadoop/hbase/master/MetricsMasterFileSystem.java</a>
                 </td>
                 <td>
@@ -8376,6 +8362,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.SpaceViolationPolicyEnforcementFactory.java">org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcementFactory.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestHStoreFile.java">org/apache/hadoop/hbase/regionserver/TestHStoreFile.java</a>
                 </td>
                 <td>
@@ -8544,20 +8544,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.CellSet.java">org/apache/hadoop/hbase/regionserver/CellSet.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.PeerProcedureHandler.java">org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.java</a>
                 </td>
                 <td>
@@ -8572,6 +8558,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.CellSet.java">org/apache/hadoop/hbase/regionserver/CellSet.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.MasterProcedureManager.java">org/apache/hadoop/hbase/procedure/MasterProcedureManager.java</a>
                 </td>
                 <td>
@@ -10140,20 +10140,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestMetaTableAccessor.java">org/apache/hadoop/hbase/TestMetaTableAccessor.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRegionServerCrashDisableWAL.java">org/apache/hadoop/hbase/regionserver/TestRegionServerCrashDisableWAL.java</a>
                 </td>
                 <td>
@@ -10168,6 +10154,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestMetaTableAccessor.java">org/apache/hadoop/hbase/TestMetaTableAccessor.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rest.RESTServlet.java">org/apache/hadoop/hbase/rest/RESTServlet.java</a>
                 </td>
                 <td>
@@ -10294,20 +10294,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestWALCellCodecWithCompression.java">org/apache/hadoop/hbase/regionserver/wal/TestWALCellCodecWithCompression.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestMultiVersions.java">org/apache/hadoop/hbase/TestMultiVersions.java</a>
                 </td>
                 <td>
@@ -10322,6 +10308,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestWALCellCodecWithCompression.java">org/apache/hadoop/hbase/regionserver/wal/TestWALCellCodecWithCompression.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.balancer.ClusterStatusChore.java">org/apache/hadoop/hbase/master/balancer/ClusterStatusChore.java</a>
                 </td>
                 <td>
@@ -10420,7 +10420,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestCreateTableProcedureMuitipleRegions.java">org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedureMuitipleRegions.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestCleanupMetaReplicaThroughConfig.java">org/apache/hadoop/hbase/client/TestCleanupMetaReplicaThroughConfig.java</a>
                 </td>
                 <td>
                   0
@@ -10434,7 +10434,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestCleanupMetaReplicaThroughConfig.java">org/apache/hadoop/hbase/client/TestCleanupMetaReplicaThroughConfig.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestCreateTableProcedureMuitipleRegions.java">org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedureMuitipleRegions.java</a>
                 </td>
                 <td>
                   0
@@ -10672,7 +10672,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestTableSpaceQuotaViolationNotifier.java">org/apache/hadoop/hbase/quotas/TestTableSpaceQuotaViolationNotifier.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.assignment.TestReportRegionStateTransitionRetry.java">org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionRetry.java</a>
                 </td>
                 <td>
                   0
@@ -10686,7 +10686,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.assignment.TestReportRegionStateTransitionRetry.java">org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionRetry.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestTableSpaceQuotaViolationNotifier.java">org/apache/hadoop/hbase/quotas/TestTableSpaceQuotaViolationNotifier.java</a>
                 </td>
                 <td>
                   0
@@ -11134,7 +11134,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.DeallocateRewriteByteBuffAllocator.java">org/apache/hadoop/hbase/io/DeallocateRewriteByteBuffAllocator.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.types.StructBuilder.java">org/apache/hadoop/hbase/types/StructBuilder.java</a>
                 </td>
                 <td>
                   0
@@ -11148,7 +11148,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.types.StructBuilder.java">org/apache/hadoop/hbase/types/StructBuilder.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.DeallocateRewriteByteBuffAllocator.java">org/apache/hadoop/hbase/io/DeallocateRewriteByteBuffAllocator.java</a>
                 </td>
                 <td>
                   0
@@ -11246,20 +11246,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.flush.FlushTableSubprocedure.java">org/apache/hadoop/hbase/procedure/flush/FlushTableSubprocedure.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.locking.LockProcedure.java">org/apache/hadoop/hbase/master/locking/LockProcedure.java</a>
                 </td>
                 <td>
@@ -11274,6 +11260,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.flush.FlushTableSubprocedure.java">org/apache/hadoop/hbase/procedure/flush/FlushTableSubprocedure.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestHBaseInterClusterReplicationEndpointFilterEdits.java">org/apache/hadoop/hbase/replication/regionserver/TestHBaseInterClusterReplicationEndpointFilterEdits.java</a>
                 </td>
                 <td>
@@ -11876,20 +11876,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestSuperUserQuotaPermissions.java">org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestReplicasClient.java">org/apache/hadoop/hbase/client/TestReplicasClient.java</a>
                 </td>
                 <td>
@@ -11904,6 +11890,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestSuperUserQuotaPermissions.java">org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.crypto.aes.AESDecryptor.java">org/apache/hadoop/hbase/io/crypto/aes/AESDecryptor.java</a>
                 </td>
                 <td>
@@ -12212,20 +12212,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.visibility.TestVisibilityLabelsWithDefaultVisLabelService.java">org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithDefaultVisLabelService.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestSyncReplicationStandbyKillMaster.java">org/apache/hadoop/hbase/replication/TestSyncReplicationStandbyKillMaster.java</a>
                 </td>
                 <td>
@@ -12240,6 +12226,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.visibility.TestVisibilityLabelsWithDefaultVisLabelService.java">org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithDefaultVisLabelService.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.provider.SimpleSaslClientAuthenticationProvider.java">org/apache/hadoop/hbase/security/provider/SimpleSaslClientAuthenticationProvider.java</a>
                 </td>
                 <td>
@@ -12646,20 +12646,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.RatioBasedCompactionPolicy.java">org/apache/hadoop/hbase/regionserver/compactions/RatioBasedCompactionPolicy.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.master.ReplicationHFileCleaner.java">org/apache/hadoop/hbase/replication/master/ReplicationHFileCleaner.java</a>
                 </td>
                 <td>
@@ -12674,6 +12660,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.RatioBasedCompactionPolicy.java">org/apache/hadoop/hbase/regionserver/compactions/RatioBasedCompactionPolicy.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.ClientIdGenerator.java">org/apache/hadoop/hbase/client/ClientIdGenerator.java</a>
                 </td>
                 <td>
@@ -13500,7 +13500,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.WrongRegionException.java">org/apache/hadoop/hbase/regionserver/WrongRegionException.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.AsyncMasterRequestRpcRetryingCaller.java">org/apache/hadoop/hbase/client/AsyncMasterRequestRpcRetryingCaller.java</a>
                 </td>
                 <td>
                   0
@@ -13514,7 +13514,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.AsyncMasterRequestRpcRetryingCaller.java">org/apache/hadoop/hbase/client/AsyncMasterRequestRpcRetryingCaller.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.WrongRegionException.java">org/apache/hadoop/hbase/regionserver/WrongRegionException.java</a>
                 </td>
                 <td>
                   0
@@ -16776,20 +16776,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestFSHLog.java">org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestBufferedMutator.java">org/apache/hadoop/hbase/client/TestBufferedMutator.java</a>
                 </td>
                 <td>
@@ -16804,6 +16790,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestFSHLog.java">org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rest.model.TableRegionModel.java">org/apache/hadoop/hbase/rest/model/TableRegionModel.java</a>
                 </td>
                 <td>
@@ -17266,7 +17266,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestReadAndWriteRegionInfoFile.java">org/apache/hadoop/hbase/regionserver/TestReadAndWriteRegionInfoFile.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.AbstractTestCITimeout.java">org/apache/hadoop/hbase/client/AbstractTestCITimeout.java</a>
                 </td>
                 <td>
                   0
@@ -17280,7 +17280,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.AbstractTestCITimeout.java">org/apache/hadoop/hbase/client/AbstractTestCITimeout.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestReadAndWriteRegionInfoFile.java">org/apache/hadoop/hbase/regionserver/TestReadAndWriteRegionInfoFile.java</a>
                 </td>
                 <td>
                   0
@@ -17714,20 +17714,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRegionIncrement.java">org/apache/hadoop/hbase/regionserver/TestRegionIncrement.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  6
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestSourceFSConfigurationProvider.java">org/apache/hadoop/hbase/replication/regionserver/TestSourceFSConfigurationProvider.java</a>
                 </td>
                 <td>
@@ -17742,6 +17728,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRegionIncrement.java">org/apache/hadoop/hbase/regionserver/TestRegionIncrement.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  6
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination.java">org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.java</a>
                 </td>
                 <td>
@@ -17896,7 +17896,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestKeepDeletes.java">org/apache/hadoop/hbase/regionserver/TestKeepDeletes.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.MockRegionServerServices.java">org/apache/hadoop/hbase/MockRegionServerServices.java</a>
                 </td>
                 <td>
                   0
@@ -17910,7 +17910,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.MockRegionServerServices.java">org/apache/hadoop/hbase/MockRegionServerServices.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestKeepDeletes.java">org/apache/hadoop/hbase/regionserver/TestKeepDeletes.java</a>
                 </td>
                 <td>
                   0
@@ -17952,7 +17952,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestShutdownWhileWALBroken.java">org/apache/hadoop/hbase/regionserver/TestShutdownWhileWALBroken.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.TestMobUtils.java">org/apache/hadoop/hbase/mob/TestMobUtils.java</a>
                 </td>
                 <td>
                   0
@@ -17966,7 +17966,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.TestMobUtils.java">org/apache/hadoop/hbase/mob/TestMobUtils.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestShutdownWhileWALBroken.java">org/apache/hadoop/hbase/regionserver/TestShutdownWhileWALBroken.java</a>
                 </td>
                 <td>
                   0
@@ -19487,7 +19487,7 @@
                   0
                 </td>
                 <td>
-                  3
+                  1
                 </td>
               </tr>
                           <tr>
@@ -20164,20 +20164,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestNodeHealthCheckChore.java">org/apache/hadoop/hbase/TestNodeHealthCheckChore.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestEnableTableProcedure.java">org/apache/hadoop/hbase/master/procedure/TestEnableTableProcedure.java</a>
                 </td>
                 <td>
@@ -20192,6 +20178,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestNodeHealthCheckChore.java">org/apache/hadoop/hbase/TestNodeHealthCheckChore.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.wal.TestSyncReplicationWALProvider.java">org/apache/hadoop/hbase/wal/TestSyncReplicationWALProvider.java</a>
                 </td>
                 <td>
@@ -24196,20 +24196,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.ZKProcedureUtil.java">org/apache/hadoop/hbase/procedure/ZKProcedureUtil.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  5
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.DrainingServerTracker.java">org/apache/hadoop/hbase/master/DrainingServerTracker.java</a>
                 </td>
                 <td>
@@ -24224,6 +24210,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.ZKProcedureUtil.java">org/apache/hadoop/hbase/procedure/ZKProcedureUtil.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  5
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.balancer.TestStochasticLoadBalancerRegionReplicaHighReplication.java">org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaHighReplication.java</a>
                 </td>
                 <td>
@@ -24994,20 +24994,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.FileSystemUtilizationChore.java">org/apache/hadoop/hbase/quotas/FileSystemUtilizationChore.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  4
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.util.ShutdownHookManager.java">org/apache/hadoop/hbase/util/ShutdownHookManager.java</a>
                 </td>
                 <td>
@@ -25022,6 +25008,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.FileSystemUtilizationChore.java">org/apache/hadoop/hbase/quotas/FileSystemUtilizationChore.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  4
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.visibility.ParseException.java">org/apache/hadoop/hbase/security/visibility/ParseException.java</a>
                 </td>
                 <td>
@@ -26450,20 +26450,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestMasterRestartAfterDisablingTable.java">org/apache/hadoop/hbase/master/TestMasterRestartAfterDisablingTable.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncTableAdminApi2.java">org/apache/hadoop/hbase/client/TestAsyncTableAdminApi2.java</a>
                 </td>
                 <td>
@@ -26478,6 +26464,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestMasterRestartAfterDisablingTable.java">org/apache/hadoop/hbase/master/TestMasterRestartAfterDisablingTable.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.RawAsyncTableImpl.java">org/apache/hadoop/hbase/client/RawAsyncTableImpl.java</a>
                 </td>
                 <td>
@@ -28032,7 +28032,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.tool.TestSecureBulkLoadHFiles.java">org/apache/hadoop/hbase/tool/TestSecureBulkLoadHFiles.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.DummyAsyncClusterConnection.java">org/apache/hadoop/hbase/client/DummyAsyncClusterConnection.java</a>
                 </td>
                 <td>
                   0
@@ -28046,7 +28046,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.DummyAsyncClusterConnection.java">org/apache/hadoop/hbase/client/DummyAsyncClusterConnection.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.tool.TestSecureBulkLoadHFiles.java">org/apache/hadoop/hbase/tool/TestSecureBulkLoadHFiles.java</a>
                 </td>
                 <td>
                   0
@@ -28130,7 +28130,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.InvalidMutationDurabilityException.java">org/apache/hadoop/hbase/regionserver/InvalidMutationDurabilityException.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.RowMutations.java">org/apache/hadoop/hbase/client/RowMutations.java</a>
                 </td>
                 <td>
                   0
@@ -28144,7 +28144,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.RowMutations.java">org/apache/hadoop/hbase/client/RowMutations.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.InvalidMutationDurabilityException.java">org/apache/hadoop/hbase/regionserver/InvalidMutationDurabilityException.java</a>
                 </td>
                 <td>
                   0
@@ -29530,7 +29530,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rsgroup.TestMigrateRSGroupInfo.java">org/apache/hadoop/hbase/rsgroup/TestMigrateRSGroupInfo.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestClockSkewDetection.java">org/apache/hadoop/hbase/master/TestClockSkewDetection.java</a>
                 </td>
                 <td>
                   0
@@ -29544,7 +29544,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestClockSkewDetection.java">org/apache/hadoop/hbase/master/TestClockSkewDetection.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rsgroup.TestMigrateRSGroupInfo.java">org/apache/hadoop/hbase/rsgroup/TestMigrateRSGroupInfo.java</a>
                 </td>
                 <td>
                   0
@@ -31168,20 +31168,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.bucket.TestFileIOEngine.java">org/apache/hadoop/hbase/io/hfile/bucket/TestFileIOEngine.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestFromClientSideWithCoprocessor.java">org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor.java</a>
                 </td>
                 <td>
@@ -31196,6 +31182,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.bucket.TestFileIOEngine.java">org/apache/hadoop/hbase/io/hfile/bucket/TestFileIOEngine.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.chaos.actions.ChangeEncodingAction.java">org/apache/hadoop/hbase/chaos/actions/ChangeEncodingAction.java</a>
                 </td>
                 <td>
@@ -31854,20 +31854,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestPerColumnFamilyFlush.java">org/apache/hadoop/hbase/regionserver/TestPerColumnFamilyFlush.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  3
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestNamespaceReplication.java">org/apache/hadoop/hbase/replication/TestNamespaceReplication.java</a>
                 </td>
                 <td>
@@ -31882,6 +31868,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestPerColumnFamilyFlush.java">org/apache/hadoop/hbase/regionserver/TestPerColumnFamilyFlush.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  3
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.metrics.impl.HBaseMetrics2HadoopMetricsAdapter.java">org/apache/hadoop/hbase/metrics/impl/HBaseMetrics2HadoopMetricsAdapter.java</a>
                 </td>
                 <td>
@@ -33058,7 +33058,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.assignment.TestRaceBetweenSCPAndTRSP.java">org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndTRSP.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.TestExpiredMobFileCleaner.java">org/apache/hadoop/hbase/mob/TestExpiredMobFileCleaner.java</a>
                 </td>
                 <td>
                   0
@@ -33072,7 +33072,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.TestExpiredMobFileCleaner.java">org/apache/hadoop/hbase/mob/TestExpiredMobFileCleaner.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.assignment.TestRaceBetweenSCPAndTRSP.java">org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndTRSP.java</a>
                 </td>
                 <td>
                   0
@@ -33422,20 +33422,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestLogRollPeriod.java">org/apache/hadoop/hbase/regionserver/wal/TestLogRollPeriod.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestSnapshotMetadata.java">org/apache/hadoop/hbase/client/TestSnapshotMetadata.java</a>
                 </td>
                 <td>
@@ -33450,6 +33436,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestLogRollPeriod.java">org/apache/hadoop/hbase/regionserver/wal/TestLogRollPeriod.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.chaos.policies.Policy.java">org/apache/hadoop/hbase/chaos/policies/Policy.java</a>
                 </td>
                 <td>
@@ -34528,20 +34528,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.TestMetricsIO.java">org/apache/hadoop/hbase/io/TestMetricsIO.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.FromClientSideBase.java">org/apache/hadoop/hbase/client/FromClientSideBase.java</a>
                 </td>
                 <td>
@@ -34556,6 +34542,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.TestMetricsIO.java">org/apache/hadoop/hbase/io/TestMetricsIO.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.MasterRegistry.java">org/apache/hadoop/hbase/client/MasterRegistry.java</a>
                 </td>
                 <td>
@@ -35802,20 +35802,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.RegionSizeReportingChore.java">org/apache/hadoop/hbase/quotas/RegionSizeReportingChore.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.java">org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java</a>
                 </td>
                 <td>
@@ -35830,6 +35816,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.RegionSizeReportingChore.java">org/apache/hadoop/hbase/quotas/RegionSizeReportingChore.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mapreduce.TableReducer.java">org/apache/hadoop/hbase/mapreduce/TableReducer.java</a>
                 </td>
                 <td>
@@ -37356,7 +37356,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestSCP.java">org/apache/hadoop/hbase/master/procedure/TestSCP.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestResultFromCoprocessor.java">org/apache/hadoop/hbase/client/TestResultFromCoprocessor.java</a>
                 </td>
                 <td>
                   0
@@ -37370,7 +37370,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestResultFromCoprocessor.java">org/apache/hadoop/hbase/client/TestResultFromCoprocessor.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestSCP.java">org/apache/hadoop/hbase/master/procedure/TestSCP.java</a>
                 </td>
                 <td>
                   0
@@ -38882,7 +38882,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.access.TestCoprocessorWhitelistMasterObserver.java">org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestScanWithoutFetchingData.java">org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.java</a>
                 </td>
                 <td>
                   0
@@ -38896,7 +38896,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestScanWithoutFetchingData.java">org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.access.TestCoprocessorWhitelistMasterObserver.java">org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.java</a>
                 </td>
                 <td>
                   0
@@ -39386,20 +39386,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestHFileWriterV3.java">org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  3
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.RestoreSnapshotFromClientGetCompactionStateTestBase.java">org/apache/hadoop/hbase/client/RestoreSnapshotFromClientGetCompactionStateTestBase.java</a>
                 </td>
                 <td>
@@ -39414,6 +39400,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestHFileWriterV3.java">org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  3
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.MetricsMasterQuotaSourceFactory.java">org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactory.java</a>
                 </td>
                 <td>
@@ -40240,20 +40240,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestCacheOnWrite.java">org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMobRestoreSnapshotFromClientGetCompactionState.java">org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientGetCompactionState.java</a>
                 </td>
                 <td>
@@ -40268,6 +40254,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestCacheOnWrite.java">org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rest.model.TestTableRegionModel.java">org/apache/hadoop/hbase/rest/model/TestTableRegionModel.java</a>
                 </td>
                 <td>
@@ -41444,20 +41444,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.MasterWalManager.java">org/apache/hadoop/hbase/master/MasterWalManager.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.RegionReplicaInfo.java">org/apache/hadoop/hbase/master/http/RegionReplicaInfo.java</a>
                 </td>
                 <td>
@@ -41472,7 +41458,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.SimpleMasterProcedureManager.java">org/apache/hadoop/hbase/procedure/SimpleMasterProcedureManager.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.MasterWalManager.java">org/apache/hadoop/hbase/master/MasterWalManager.java</a>
                 </td>
                 <td>
                   0
@@ -41500,6 +41486,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure.SimpleMasterProcedureManager.java">org/apache/hadoop/hbase/procedure/SimpleMasterProcedureManager.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.chaos.ChaosService.java">org/apache/hadoop/hbase/chaos/ChaosService.java</a>
                 </td>
                 <td>
@@ -41570,7 +41570,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestNewStartedRegionServerVersion.java">org/apache/hadoop/hbase/master/TestNewStartedRegionServerVersion.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMobRestoreSnapshotFromClientAfterTruncate.java">org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterTruncate.java</a>
                 </td>
                 <td>
                   0
@@ -41584,7 +41584,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMobRestoreSnapshotFromClientAfterTruncate.java">org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterTruncate.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestNewStartedRegionServerVersion.java">org/apache/hadoop/hbase/master/TestNewStartedRegionServerVersion.java</a>
                 </td>
                 <td>
                   0
@@ -43922,20 +43922,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.Compressor.java">org/apache/hadoop/hbase/regionserver/wal/Compressor.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  8
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.RejectReplicationRequestStateChecker.java">org/apache/hadoop/hbase/replication/regionserver/RejectReplicationRequestStateChecker.java</a>
                 </td>
                 <td>
@@ -43950,6 +43936,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.Compressor.java">org/apache/hadoop/hbase/regionserver/wal/Compressor.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  8
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.TestMobCompactionOptMode.java">org/apache/hadoop/hbase/mob/TestMobCompactionOptMode.java</a>
                 </td>
                 <td>
@@ -44496,7 +44496,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestFSWALEntry.java">org/apache/hadoop/hbase/regionserver/wal/TestFSWALEntry.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncAccessControlAdminApi.java">org/apache/hadoop/hbase/client/TestAsyncAccessControlAdminApi.java</a>
                 </td>
                 <td>
                   0
@@ -44524,7 +44524,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncAccessControlAdminApi.java">org/apache/hadoop/hbase/client/TestAsyncAccessControlAdminApi.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestFSWALEntry.java">org/apache/hadoop/hbase/regionserver/wal/TestFSWALEntry.java</a>
                 </td>
                 <td>
                   0
@@ -45196,7 +45196,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.policies.TestNoInsertsViolationPolicyEnforcement.java">org/apache/hadoop/hbase/quotas/policies/TestNoInsertsViolationPolicyEnforcement.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestReseekTo.java">org/apache/hadoop/hbase/io/hfile/TestReseekTo.java</a>
                 </td>
                 <td>
                   0
@@ -45210,7 +45210,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestReseekTo.java">org/apache/hadoop/hbase/io/hfile/TestReseekTo.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.policies.TestNoInsertsViolationPolicyEnforcement.java">org/apache/hadoop/hbase/quotas/policies/TestNoInsertsViolationPolicyEnforcement.java</a>
                 </td>
                 <td>
                   0
@@ -46442,7 +46442,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.TestDateTieredCompactor.java">org/apache/hadoop/hbase/regionserver/compactions/TestDateTieredCompactor.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestRegionReplicaReplicationEndpoint.java">org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.java</a>
                 </td>
                 <td>
                   0
@@ -46456,7 +46456,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestRegionReplicaReplicationEndpoint.java">org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.TestDateTieredCompactor.java">org/apache/hadoop/hbase/regionserver/compactions/TestDateTieredCompactor.java</a>
                 </td>
                 <td>
                   0
@@ -46624,7 +46624,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestCompactionWithByteBuff.java">org/apache/hadoop/hbase/regionserver/TestCompactionWithByteBuff.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.RestoreSnapshotFromClientSchemaChangeTestBase.java">org/apache/hadoop/hbase/client/RestoreSnapshotFromClientSchemaChangeTestBase.java</a>
                 </td>
                 <td>
                   0
@@ -46638,7 +46638,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.RestoreSnapshotFromClientSchemaChangeTestBase.java">org/apache/hadoop/hbase/client/RestoreSnapshotFromClientSchemaChangeTestBase.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestCompactionWithByteBuff.java">org/apache/hadoop/hbase/regionserver/TestCompactionWithByteBuff.java</a>
                 </td>
                 <td>
                   0
@@ -47814,7 +47814,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.ipc.TestCallRunner.java">org/apache/hadoop/hbase/ipc/TestCallRunner.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.CloneSnapshotFromClientNormalTestBase.java">org/apache/hadoop/hbase/client/CloneSnapshotFromClientNormalTestBase.java</a>
                 </td>
                 <td>
                   0
@@ -47828,7 +47828,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.CloneSnapshotFromClientNormalTestBase.java">org/apache/hadoop/hbase/client/CloneSnapshotFromClientNormalTestBase.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.ipc.TestCallRunner.java">org/apache/hadoop/hbase/ipc/TestCallRunner.java</a>
                 </td>
                 <td>
                   0
@@ -48514,7 +48514,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rsgroup.TestEnableRSGroupsCompatibility.java">org/apache/hadoop/hbase/rsgroup/TestEnableRSGroupsCompatibility.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestLruCachedBlock.java">org/apache/hadoop/hbase/io/hfile/TestLruCachedBlock.java</a>
                 </td>
                 <td>
                   0
@@ -48528,7 +48528,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestLruCachedBlock.java">org/apache/hadoop/hbase/io/hfile/TestLruCachedBlock.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rsgroup.TestEnableRSGroupsCompatibility.java">org/apache/hadoop/hbase/rsgroup/TestEnableRSGroupsCompatibility.java</a>
                 </td>
                 <td>
                   0
@@ -49382,7 +49382,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRegionReplicas.java">org/apache/hadoop/hbase/regionserver/TestRegionReplicas.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestScanner.java">org/apache/hadoop/hbase/regionserver/TestScanner.java</a>
                 </td>
                 <td>
                   0
@@ -49396,7 +49396,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestScanner.java">org/apache/hadoop/hbase/regionserver/TestScanner.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRegionReplicas.java">org/apache/hadoop/hbase/regionserver/TestRegionReplicas.java</a>
                 </td>
                 <td>
                   0
@@ -50376,7 +50376,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestSyncFuture.java">org/apache/hadoop/hbase/regionserver/wal/TestSyncFuture.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.DummyAsyncTable.java">org/apache/hadoop/hbase/client/DummyAsyncTable.java</a>
                 </td>
                 <td>
                   0
@@ -50390,7 +50390,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.DummyAsyncTable.java">org/apache/hadoop/hbase/client/DummyAsyncTable.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestSyncFuture.java">org/apache/hadoop/hbase/regionserver/wal/TestSyncFuture.java</a>
                 </td>
                 <td>
                   0
@@ -51216,20 +51216,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestSeekOptimizations.java">org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestCacheOnWriteInSchema.java">org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.java</a>
                 </td>
                 <td>
@@ -51258,6 +51244,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestSeekOptimizations.java">org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.BasicMemStoreCompactionStrategy.java">org/apache/hadoop/hbase/regionserver/BasicMemStoreCompactionStrategy.java</a>
                 </td>
                 <td>
@@ -52028,7 +52028,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestSplitOrMergeStatus.java">org/apache/hadoop/hbase/client/TestSplitOrMergeStatus.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMutationGetCellBuilder.java">org/apache/hadoop/hbase/client/TestMutationGetCellBuilder.java</a>
                 </td>
                 <td>
                   0
@@ -52042,7 +52042,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMutationGetCellBuilder.java">org/apache/hadoop/hbase/client/TestMutationGetCellBuilder.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestSplitOrMergeStatus.java">org/apache/hadoop/hbase/client/TestSplitOrMergeStatus.java</a>
                 </td>
                 <td>
                   0
@@ -52602,20 +52602,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.ReversedStoreScanner.java">org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  2
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.SplitWALCallable.java">org/apache/hadoop/hbase/regionserver/SplitWALCallable.java</a>
                 </td>
                 <td>
@@ -52630,6 +52616,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.ReversedStoreScanner.java">org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  2
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.procedure2.ProcedureInMemoryChore.java">org/apache/hadoop/hbase/procedure2/ProcedureInMemoryChore.java</a>
                 </td>
                 <td>
@@ -55416,20 +55416,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestScannerSelectionUsingTTL.java">org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncNamespaceAdminApi.java">org/apache/hadoop/hbase/client/TestAsyncNamespaceAdminApi.java</a>
                 </td>
                 <td>
@@ -55444,6 +55430,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestScannerSelectionUsingTTL.java">org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.compress.ReusableStreamGzipCodec.java">org/apache/hadoop/hbase/io/compress/ReusableStreamGzipCodec.java</a>
                 </td>
                 <td>
@@ -55458,20 +55458,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.SpaceViolationPolicyEnforcement.java">org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcement.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.util.FSRegionScanner.java">org/apache/hadoop/hbase/util/FSRegionScanner.java</a>
                 </td>
                 <td>
@@ -55486,6 +55472,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.SpaceViolationPolicyEnforcement.java">org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcement.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestGlobalReplicationThrottler.java">org/apache/hadoop/hbase/replication/regionserver/TestGlobalReplicationThrottler.java</a>
                 </td>
                 <td>
@@ -56564,20 +56564,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.StoreFileScanner.java">org/apache/hadoop/hbase/regionserver/StoreFileScanner.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  12
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.ManualMobMaintHFileCleaner.java">org/apache/hadoop/hbase/mob/ManualMobMaintHFileCleaner.java</a>
                 </td>
                 <td>
@@ -56592,6 +56578,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.StoreFileScanner.java">org/apache/hadoop/hbase/regionserver/StoreFileScanner.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  12
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.TestHFileBlockIndex.java">org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.java</a>
                 </td>
                 <td>
@@ -56998,20 +56998,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.monitoring.TestTaskMonitor.java">org/apache/hadoop/hbase/monitoring/TestTaskMonitor.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.wal.TestWALSplitValueCompression.java">org/apache/hadoop/hbase/wal/TestWALSplitValueCompression.java</a>
                 </td>
                 <td>
@@ -57026,6 +57012,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.monitoring.TestTaskMonitor.java">org/apache/hadoop/hbase/monitoring/TestTaskMonitor.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.cleaner.TimeToLiveProcedureWALCleaner.java">org/apache/hadoop/hbase/master/cleaner/TimeToLiveProcedureWALCleaner.java</a>
                 </td>
                 <td>
@@ -57054,7 +57054,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestDeleteMobTable.java">org/apache/hadoop/hbase/regionserver/TestDeleteMobTable.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncMetaRegionLocator.java">org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.java</a>
                 </td>
                 <td>
                   0
@@ -57068,7 +57068,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncMetaRegionLocator.java">org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestDeleteMobTable.java">org/apache/hadoop/hbase/regionserver/TestDeleteMobTable.java</a>
                 </td>
                 <td>
                   0
@@ -57516,7 +57516,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.filter.TestFilterListOnMini.java">org/apache/hadoop/hbase/filter/TestFilterListOnMini.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.filter.TestFilterFromRegionSide.java">org/apache/hadoop/hbase/filter/TestFilterFromRegionSide.java</a>
                 </td>
                 <td>
                   0
@@ -57530,7 +57530,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.filter.TestFilterFromRegionSide.java">org/apache/hadoop/hbase/filter/TestFilterFromRegionSide.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.filter.TestFilterListOnMini.java">org/apache/hadoop/hbase/filter/TestFilterListOnMini.java</a>
                 </td>
                 <td>
                   0
@@ -58594,7 +58594,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.RegionMetrics.java">org/apache/hadoop/hbase/RegionMetrics.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TableExistsException.java">org/apache/hadoop/hbase/TableExistsException.java</a>
                 </td>
                 <td>
                   0
@@ -58608,7 +58608,7 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TableExistsException.java">org/apache/hadoop/hbase/TableExistsException.java</a>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.RegionMetrics.java">org/apache/hadoop/hbase/RegionMetrics.java</a>
                 </td>
                 <td>
                   0
@@ -59378,20 +59378,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.JMXListener.java">org/apache/hadoop/hbase/JMXListener.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.mob.DefaultMobStoreFlusher.java">org/apache/hadoop/hbase/mob/DefaultMobStoreFlusher.java</a>
                 </td>
                 <td>
@@ -59406,6 +59392,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.JMXListener.java">org/apache/hadoop/hbase/JMXListener.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.wal.TestDurability.java">org/apache/hadoop/hbase/regionserver/wal/TestDurability.java</a>
                 </td>
                 <td>
@@ -61702,20 +61702,6 @@
               </tr>
                           <tr>
                 <td>
-                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.SpaceQuotaSnapshotNotifierFactory.java">org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotNotifierFactory.java</a>
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  0
-                </td>
-                <td>
-                  1
-                </td>
-              </tr>
-                          <tr>
-                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.ResizableBlockCache.java">org/apache/hadoop/hbase/io/hfile/ResizableBlockCache.java</a>
                 </td>
                 <td>
@@ -61730,6 +61716,20 @@
               </tr>
                           <tr>
                 <td>
+                  <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.SpaceQuotaSnapshotNotifierFactory.java">org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotNotifierFactory.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  1
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.tool.HFileContentValidator.java">org/apache/hadoop/hbase/tool/HFileContentValidator.java</a>
                 </td>
                 <td>
diff --git a/coc.html b/coc.html
index 2e37613..4e67bc7 100644
--- a/coc.html
+++ b/coc.html
@@ -230,7 +230,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/dependencies.html b/dependencies.html
index db18020..e1ff009 100644
--- a/dependencies.html
+++ b/dependencies.html
@@ -302,7 +302,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/dependency-convergence.html b/dependency-convergence.html
index a5ebd7c..cf2e758 100644
--- a/dependency-convergence.html
+++ b/dependency-convergence.html
@@ -866,7 +866,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/dependency-info.html b/dependency-info.html
index d345dcb..d7fc940 100644
--- a/dependency-info.html
+++ b/dependency-info.html
@@ -183,7 +183,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/dependency-management.html b/dependency-management.html
index fe77edf..b038edb 100644
--- a/dependency-management.html
+++ b/dependency-management.html
@@ -1190,7 +1190,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/devapidocs/allclasses-frame.html b/devapidocs/allclasses-frame.html
index 5427ac2..523d1c5 100644
--- a/devapidocs/allclasses-frame.html
+++ b/devapidocs/allclasses-frame.html
@@ -592,7 +592,6 @@
 <li><a href="org/apache/hadoop/hbase/io/hfile/CombinedBlockCache.CombinedCacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">CombinedBlockCache.CombinedCacheStats</a></li>
 <li><a href="org/apache/hadoop/hbase/hbtop/screen/help/CommandDescription.html" title="class in org.apache.hadoop.hbase.hbtop.screen.help" target="classFrame">CommandDescription</a></li>
 <li><a href="org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CommonFSUtils</a></li>
-<li><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CommonFSUtils.DfsBuilderUtility</a></li>
 <li><a href="org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CommonFSUtils.StreamLacksCapabilityException</a></li>
 <li><a href="org/apache/hadoop/hbase/io/crypto/aes/CommonsCryptoAES.html" title="class in org.apache.hadoop.hbase.io.crypto.aes" target="classFrame">CommonsCryptoAES</a></li>
 <li><a href="org/apache/hadoop/hbase/io/crypto/aes/CommonsCryptoAESDecryptor.html" title="class in org.apache.hadoop.hbase.io.crypto.aes" target="classFrame">CommonsCryptoAESDecryptor</a></li>
diff --git a/devapidocs/allclasses-noframe.html b/devapidocs/allclasses-noframe.html
index 7247e6e..98070f5 100644
--- a/devapidocs/allclasses-noframe.html
+++ b/devapidocs/allclasses-noframe.html
@@ -592,7 +592,6 @@
 <li><a href="org/apache/hadoop/hbase/io/hfile/CombinedBlockCache.CombinedCacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CombinedBlockCache.CombinedCacheStats</a></li>
 <li><a href="org/apache/hadoop/hbase/hbtop/screen/help/CommandDescription.html" title="class in org.apache.hadoop.hbase.hbtop.screen.help">CommandDescription</a></li>
 <li><a href="org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils</a></li>
-<li><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></li>
 <li><a href="org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.StreamLacksCapabilityException</a></li>
 <li><a href="org/apache/hadoop/hbase/io/crypto/aes/CommonsCryptoAES.html" title="class in org.apache.hadoop.hbase.io.crypto.aes">CommonsCryptoAES</a></li>
 <li><a href="org/apache/hadoop/hbase/io/crypto/aes/CommonsCryptoAESDecryptor.html" title="class in org.apache.hadoop.hbase.io.crypto.aes">CommonsCryptoAESDecryptor</a></li>
diff --git a/devapidocs/deprecated-list.html b/devapidocs/deprecated-list.html
index 32fea91..07aa953 100644
--- a/devapidocs/deprecated-list.html
+++ b/devapidocs/deprecated-list.html
@@ -488,27 +488,7 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlob.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedBlob.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt16.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt16.ASCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#ASCENDING">org.apache.hadoop.hbase.types.RawBytes.ASCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawString.html#ASCENDING">org.apache.hadoop.hbase.types.RawString.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -523,17 +503,27 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedNumeric.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedNumeric.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlobVar.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedBlobVar.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawString.html#ASCENDING">org.apache.hadoop.hbase.types.RawString.ASCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt16.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt16.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedNumeric.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedNumeric.ASCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt32.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -543,7 +533,17 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedInt32.ASCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlob.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedBlob.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#ASCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.ASCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#ASCENDING">org.apache.hadoop.hbase.types.RawBytes.ASCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -605,27 +605,7 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlob.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedBlob.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will b removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt16.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt16.DESCENDING</a>
-<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#DESCENDING">org.apache.hadoop.hbase.types.RawBytes.DESCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawString.html#DESCENDING">org.apache.hadoop.hbase.types.RawString.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -640,17 +620,27 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat32.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedNumeric.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedNumeric.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlobVar.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedBlobVar.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawString.html#DESCENDING">org.apache.hadoop.hbase.types.RawString.DESCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt16.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt16.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedNumeric.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedNumeric.DESCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt32.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -660,7 +650,17 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedInt32.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedInt32.DESCENDING</a>
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedBlob.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedBlob.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will b removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/OrderedFloat64.html#DESCENDING">org.apache.hadoop.hbase.types.OrderedFloat64.DESCENDING</a>
+<div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/types/RawBytes.html#DESCENDING">org.apache.hadoop.hbase.types.RawBytes.DESCENDING</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0</span></div>
 </td>
 </tr>
@@ -991,17 +991,17 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-byte:A-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], byte[])</a>
-<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
-             any more.</span></div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-byte:A-">org.apache.hadoop.hbase.client.Table.checkAndMutate(byte[], byte[])</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
    any more.</span></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-byte:A-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], byte[])</a>
+<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
+             any more.</span></div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/regionserver/Region.html#checkAndMutate-byte:A-byte:A-byte:A-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.client.Mutation-">org.apache.hadoop.hbase.regionserver.Region.checkAndMutate(byte[], byte[], byte[], CompareOperator, ByteArrayComparable, Mutation)</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0. Use
@@ -1018,17 +1018,17 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], Filter)</a>
-<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
-             any more.</span></div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">org.apache.hadoop.hbase.client.Table.checkAndMutate(byte[], Filter)</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
    any more.</span></div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">org.apache.hadoop.hbase.client.AsyncTable.checkAndMutate(byte[], Filter)</a>
+<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
+             any more.</span></div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/regionserver/Region.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-org.apache.hadoop.hbase.client.Mutation-">org.apache.hadoop.hbase.regionserver.Region.checkAndMutate(byte[], Filter, Mutation)</a>
 <div class="block"><span class="deprecationComment">since 3.0.0 and will be removed in 4.0.0. Use
@@ -1797,14 +1797,14 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="org/apache/hadoop/hbase/client/ImmutableScan.html#setAsyncPrefetch-boolean-">org.apache.hadoop.hbase.client.ImmutableScan.setAsyncPrefetch(boolean)</a></td>
-</tr>
-<tr class="rowColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/client/Scan.html#setAsyncPrefetch-boolean-">org.apache.hadoop.hbase.client.Scan.setAsyncPrefetch(boolean)</a>
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. After building sync client upon async
              client, the implementation is always 'async prefetch', so this flag is useless now.</span></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/hadoop/hbase/client/ImmutableScan.html#setAsyncPrefetch-boolean-">org.apache.hadoop.hbase.client.ImmutableScan.setAsyncPrefetch(boolean)</a></td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><a href="org/apache/hadoop/hbase/http/HttpServer.Builder.html#setBindAddress-java.lang.String-">org.apache.hadoop.hbase.http.HttpServer.Builder.setBindAddress(String)</a>
 <div class="block"><span class="deprecationComment">Since 0.99.0. Use <a href="org/apache/hadoop/hbase/http/HttpServer.Builder.html#addEndpoint-java.net.URI-"><code>HttpServer.Builder.addEndpoint(URI)</code></a> instead.</span></div>
diff --git a/devapidocs/index-all.html b/devapidocs/index-all.html
index e28cf4c..904a84c 100644
--- a/devapidocs/index-all.html
+++ b/devapidocs/index-all.html
@@ -7895,8 +7895,6 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.Builder.html#Builder--">Builder()</a></span> - Constructor for class org.apache.hadoop.hbase.testing.<a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.Builder.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterOption.Builder</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#BUILDER">BUILDER</a></span> - Static variable in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.BuilderBase.html#BuilderBase--">BuilderBase()</a></span> - Constructor for class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.BuilderBase.html" title="class in org.apache.hadoop.hbase.client">AsyncRpcRetryingCallerFactory.BuilderBase</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.SaslNegotiateHandler.BuilderPayloadSetter.html#BuilderPayloadSetter--">BuilderPayloadSetter()</a></span> - Constructor for class org.apache.hadoop.hbase.io.asyncfs.<a href="org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.SaslNegotiateHandler.BuilderPayloadSetter.html" title="class in org.apache.hadoop.hbase.io.asyncfs">FanOutOneBlockAsyncDFSOutputSaslHelper.SaslNegotiateHandler.BuilderPayloadSetter</a></dt>
@@ -8509,6 +8507,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/ipc/CellBlockBuilder.ByteBufferOutputStreamSupplier.html#ByteBufferOutputStreamSupplier--">ByteBufferOutputStreamSupplier()</a></span> - Constructor for class org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/CellBlockBuilder.ByteBufferOutputStreamSupplier.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder.ByteBufferOutputStreamSupplier</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html#byteBufferPositionedReadMethod">byteBufferPositionedReadMethod</a></span> - Static variable in class org.apache.hadoop.hbase.io.util.<a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.util">BlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/ByteBufferTag.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">ByteBufferTag</span></a> - Class in <a href="org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a></dt>
 <dd>
 <div class="block">This is a <a href="org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase"><code>Tag</code></a> implementation in which value is backed by
@@ -15246,8 +15246,6 @@
 <dd>
 <div class="block">Commits the mob file.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HStore.html#commitFile-org.apache.hadoop.fs.Path-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-">commitFile(Path, long, MonitoredTask)</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html#commitMergedRegion-org.apache.hadoop.hbase.client.RegionInfo-">commitMergedRegion(RegionInfo)</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a></dt>
 <dd>
 <div class="block">Commit a merged region, moving it from the merges temporary directory to
@@ -15261,6 +15259,10 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html#commitStoreFile-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-">commitStoreFile(Path, Path)</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HStore.html#commitStoreFiles-java.util.List-boolean-">commitStoreFiles(List&lt;Path&gt;, boolean)</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></dt>
+<dd>
+<div class="block">Commit the given <code>files</code>.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/mapreduce/TableOutputCommitter.html#commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">commitTask(TaskAttemptContext)</a></span> - Method in class org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableOutputCommitter.html" title="class in org.apache.hadoop.hbase.mapreduce">TableOutputCommitter</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HRegion.PrepareFlushResult.html#committedFiles">committedFiles</a></span> - Variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HRegion.PrepareFlushResult.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.PrepareFlushResult</a></dt>
@@ -15293,8 +15295,6 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.html#CommonFSUtils--">CommonFSUtils()</a></span> - Constructor for class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils</a></dt>
 <dd>&nbsp;</dd>
-<dt><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CommonFSUtils.DfsBuilderUtility</span></a> - Class in <a href="org/apache/hadoop/hbase/util/package-summary.html">org.apache.hadoop.hbase.util</a></dt>
-<dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CommonFSUtils.StreamLacksCapabilityException</span></a> - Exception in <a href="org/apache/hadoop/hbase/util/package-summary.html">org.apache.hadoop.hbase.util</a></dt>
 <dd>
 <div class="block">Helper exception for those cases where the place where we need to check a stream capability
@@ -21201,16 +21201,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/master/RegionState.html#createForTesting-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.master.RegionState.State-">createForTesting(RegionInfo, RegionState.State)</a></span> - Static method in class org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/RegionState.html" title="class in org.apache.hadoop.hbase.master">RegionState</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.html#createForWal-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-">createForWal(FileSystem, Path, boolean)</a></span> - Static method in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils</a></dt>
-<dd>
-<div class="block">Attempt to use builder API via reflection to create a file with the given parameters and
- replication enabled.</div>
-</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.html#createForWal-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-boolean-">createForWal(FileSystem, Path, boolean, int, short, long, boolean)</a></span> - Static method in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils</a></dt>
-<dd>
-<div class="block">Attempt to use builder API via reflection to create a file with the given parameters and
- replication enabled.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/HFileBlock.html#createFromBuff-org.apache.hadoop.hbase.nio.ByteBuff-boolean-long-int-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.ByteBuffAllocator-">createFromBuff(ByteBuff, boolean, long, int, HFileContext, ByteBuffAllocator)</a></span> - Static method in class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></dt>
 <dd>
 <div class="block">Creates a block from an existing buffer starting with a header.</div>
@@ -27873,8 +27863,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#DFS_REPLICATION_BYTES">DFS_REPLICATION_BYTES</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">ColumnFamilyDescriptorBuilder</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#DfsBuilderUtility--">DfsBuilderUtility()</a></span> - Constructor for class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.SaslNegotiateHandler.html#dfsClient">dfsClient</a></span> - Variable in class org.apache.hadoop.hbase.io.asyncfs.<a href="org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.SaslNegotiateHandler.html" title="class in org.apache.hadoop.hbase.io.asyncfs">FanOutOneBlockAsyncDFSOutputSaslHelper.SaslNegotiateHandler</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/HBaseTestingUtility.html#dfsCluster">dfsCluster</a></span> - Variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></dt>
@@ -65781,6 +65769,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/MetricsRegionServerWrapperImpl.html#initBlockCache--">initBlockCache()</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/MetricsRegionServerWrapperImpl.html" title="class in org.apache.hadoop.hbase.regionserver">MetricsRegionServerWrapperImpl</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html#initByteBufferPositionReadableMethod--">initByteBufferPositionReadableMethod()</a></span> - Static method in class org.apache.hadoop.hbase.io.util.<a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.util">BlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/ipc/SimpleServerRpcConnection.html#initByteBuffToReadInto-int-">initByteBuffToReadInto(int)</a></span> - Method in class org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/SimpleServerRpcConnection.html" title="class in org.apache.hadoop.hbase.ipc">SimpleServerRpcConnection</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#initCellFilters--">initCellFilters()</a></span> - Method in class org.apache.hadoop.hbase.replication.<a href="org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html" title="class in org.apache.hadoop.hbase.replication">ChainWALEntryFilter</a></dt>
@@ -74306,6 +74296,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/HFileLink.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/HFileLink.html" title="class in org.apache.hadoop.hbase.io">HFileLink</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.io.util.<a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.util">BlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/util/MemorySizeUtil.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.io.util.<a href="org/apache/hadoop/hbase/io/util/MemorySizeUtil.html" title="class in org.apache.hadoop.hbase.io.util">MemorySizeUtil</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/AbstractRpcClient.html" title="class in org.apache.hadoop.hbase.ipc">AbstractRpcClient</a></dt>
@@ -82118,8 +82110,6 @@
 <dd>
 <div class="block">Copy the data to the output stream and update position in buffer.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HStore.html#moveCompactedFilesIntoPlace-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.List-org.apache.hadoop.hbase.security.User-">moveCompactedFilesIntoPlace(CompactionRequestImpl, List&lt;Path&gt;, User)</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html#moveCost">moveCost</a></span> - Variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">MoveCostFunction</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">MoveCostFunction</span></a> - Class in <a href="org/apache/hadoop/hbase/master/balancer/package-summary.html">org.apache.hadoop.hbase.master.balancer</a></dt>
@@ -82151,8 +82141,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/MoveWithoutAck.html#movedRegions">movedRegions</a></span> - Variable in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/MoveWithoutAck.html" title="class in org.apache.hadoop.hbase.util">MoveWithoutAck</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/HStore.html#moveFileIntoPlace-org.apache.hadoop.fs.Path-">moveFileIntoPlace(Path)</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/master/region/MasterRegionUtils.html#moveFilesUnderDir-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-java.lang.String-">moveFilesUnderDir(FileSystem, Path, Path, String)</a></span> - Static method in class org.apache.hadoop.hbase.master.region.<a href="org/apache/hadoop/hbase/master/region/MasterRegionUtils.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegionUtils</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/WindowMovingAverage.html#moveForwardMostRecentPosistion--">moveForwardMostRecentPosistion()</a></span> - Method in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/WindowMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WindowMovingAverage</a></dt>
@@ -90752,6 +90740,10 @@
 <div class="block">Read from an input stream at least <code>necessaryLen</code> and if possible,
  <code>extraLen</code> also if available.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtraDirectly-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtraDirectly(ByteBuff, FSDataInputStream, long, int, int)</a></span> - Static method in class org.apache.hadoop.hbase.io.util.<a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.util">BlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtraOnHeap-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtraOnHeap(ByteBuff, FSDataInputStream, long, int, int)</a></span> - Static method in class org.apache.hadoop.hbase.io.util.<a href="org/apache/hadoop/hbase/io/util/BlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.util">BlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/ipc/SimpleServerRpcConnection.html#preambleBuffer">preambleBuffer</a></span> - Variable in class org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/SimpleServerRpcConnection.html" title="class in org.apache.hadoop.hbase.ipc">SimpleServerRpcConnection</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/coprocessor/RegionObserver.html#preAppend-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.client.Append-">preAppend(ObserverContext&lt;RegionCoprocessorEnvironment&gt;, Append)</a></span> - Method in interface org.apache.hadoop.hbase.coprocessor.<a href="org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a></dt>
@@ -101256,12 +101248,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/tool/BulkLoadHFilesTool.html#replicate">replicate</a></span> - Variable in class org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/BulkLoadHFilesTool.html" title="class in org.apache.hadoop.hbase.tool">BulkLoadHFilesTool</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#REPLICATE">REPLICATE</a></span> - Static variable in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#replicate-org.apache.hadoop.fs.FSDataOutputStreamBuilder-">replicate(FSDataOutputStreamBuilder&lt;?, ?&gt;)</a></span> - Static method in class org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></dt>
-<dd>
-<div class="block">Attempt to use builder API via reflection to call the replicate method on the given builder.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#replicateAllUserTables">replicateAllUserTables</a></span> - Variable in class org.apache.hadoop.hbase.replication.<a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#replicateAllUserTables--">replicateAllUserTables()</a></span> - Method in class org.apache.hadoop.hbase.replication.<a href="org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></dt>
diff --git a/devapidocs/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html b/devapidocs/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html
index eb53bac..65c0fd0 100644
--- a/devapidocs/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html
+++ b/devapidocs/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html
@@ -286,7 +286,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase">HConstants.OperationStatusCode</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html#line.110">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase">HConstants.OperationStatusCode</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html#line.653">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -306,7 +306,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase">HConstants.OperationStatusCode</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html#line.110">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase">HConstants.OperationStatusCode</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HConstants.OperationStatusCode.html#line.653">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/backup/class-use/BackupType.html b/devapidocs/org/apache/hadoop/hbase/backup/class-use/BackupType.html
index 296108f..08291fa 100644
--- a/devapidocs/org/apache/hadoop/hbase/backup/class-use/BackupType.html
+++ b/devapidocs/org/apache/hadoop/hbase/backup/class-use/BackupType.html
@@ -112,13 +112,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup">BackupType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BackupInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/BackupInfo.html#type">type</a></span></code>
-<div class="block">Backup type, full or incremental</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">BackupRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/BackupRequest.html#type">type</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup">BackupType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BackupRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/BackupRequest.html#type">type</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BackupInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/BackupInfo.html#type">type</a></span></code>
+<div class="block">Backup type, full or incremental</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html b/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
index fb6b0e0..90b539a 100644
--- a/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
@@ -166,10 +166,10 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupPhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupPhase</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupState.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupRestoreConstants.BackupCommand.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupRestoreConstants.BackupCommand</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupPhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupPhase</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupRestoreConstants.BackupCommand.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupRestoreConstants.BackupCommand</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupState.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupState</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/Abortable.html b/devapidocs/org/apache/hadoop/hbase/class-use/Abortable.html
index 09b90d5..a79a7e5 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/Abortable.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/Abortable.html
@@ -747,30 +747,30 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">MasterFifoRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MasterFifoRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
       <a href="../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html" title="interface in org.apache.hadoop.hbase.ipc">PriorityFunction</a>&nbsp;priority,
       <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterFifoRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MasterFifoRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">SimpleRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
       <a href="../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html" title="interface in org.apache.hadoop.hbase.ipc">PriorityFunction</a>&nbsp;priority,
       <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfo,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
-          <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfos,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
           <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>
 <div class="block">Master based locks on namespaces/tables/regions.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfo,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
+          <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -1043,21 +1043,21 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#abortable">abortable</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/wal/AbstractWALRoller.html" title="type parameter in AbstractWALRoller">T</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractWALRoller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/AbstractWALRoller.html#abortable">abortable</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#abortable">abortable</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html#abortable">abortable</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#abortable">abortable</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -1069,7 +1069,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+    org.apache.hadoop.conf.Configuration&nbsp;conf,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
+    <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+    org.apache.hadoop.conf.Configuration&nbsp;conf,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
+    <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>
+<div class="block">Set up the provider to create wals.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
     org.apache.hadoop.conf.Configuration&nbsp;conf,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
     <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
@@ -1083,27 +1099,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
     org.apache.hadoop.conf.Configuration&nbsp;conf,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
     <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
-    org.apache.hadoop.conf.Configuration&nbsp;conf,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
-    <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
-    org.apache.hadoop.conf.Configuration&nbsp;conf,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
-    <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>
-<div class="block">Set up the provider to create wals.</div>
-</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -1148,13 +1148,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html#abortable">abortable</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ZKClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/ZKClusterId.html#abortable">abortable</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html#abortable">abortable</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ZKNodeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/ZKNodeTracker.html#abortable">abortable</a></span></code>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CacheEvictionStats.html b/devapidocs/org/apache/hadoop/hbase/class-use/CacheEvictionStats.html
index 8bfe125..66d4db5 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CacheEvictionStats.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CacheEvictionStats.html
@@ -187,11 +187,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/Cell.Type.html b/devapidocs/org/apache/hadoop/hbase/class-use/Cell.Type.html
index a6be391..8b35fd0 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/Cell.Type.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/Cell.Type.html
@@ -136,31 +136,31 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.FirstOnRowCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.FirstOnRowCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.FirstOnRowByteBufferExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.FirstOnRowByteBufferExtendedCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.LastOnRowByteBufferExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.LastOnRowByteBufferExtendedCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.LastOnRowCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.LastOnRowCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.FirstOnRowDeleteFamilyCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.FirstOnRowDeleteFamilyCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Cell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/Cell.html#getType--">getType</a></span>()</code>
 <div class="block">Returns the type of cell in a human readable format using <a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><code>Cell.Type</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.FirstOnRowCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.FirstOnRowCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.FirstOnRowByteBufferExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.FirstOnRowByteBufferExtendedCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.LastOnRowByteBufferExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.LastOnRowByteBufferExtendedCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.LastOnRowCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.LastOnRowCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.FirstOnRowDeleteFamilyCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.FirstOnRowDeleteFamilyCell.html#getType--">getType</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#toType-byte-">toType</a></span>(byte&nbsp;type)</code>&nbsp;</td>
@@ -189,15 +189,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/RawCellBuilder.html" title="interface in org.apache.hadoop.hbase">RawCellBuilder</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/Cell.html b/devapidocs/org/apache/hadoop/hbase/class-use/Cell.html
index 9ce1bbb..9ead938 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/Cell.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/Cell.html
@@ -462,12 +462,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -689,13 +689,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;leftCell,
-       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;rightCell)</code>
-<div class="block">Lexographically compares two cells.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.MetaComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.MetaComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
        <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -703,7 +696,7 @@
  table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.KVComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.KVComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
        <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
@@ -712,16 +705,23 @@
  rowkey, colfam/qual, timestamp, type, mvcc</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;leftCell,
+       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;rightCell)</code>
+<div class="block">Lexographically compares two cells.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">MetaCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MetaCellComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-boolean-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;a,
-       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;b,
+<td class="colLast"><span class="typeNameLabel">CellComparatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparatorImpl.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-boolean-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;l,
+       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;r,
        boolean&nbsp;ignoreSequenceid)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CellComparatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparatorImpl.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-boolean-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;l,
-       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;r,
+<td class="colLast"><span class="typeNameLabel">MetaCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MetaCellComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-boolean-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;a,
+       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;b,
        boolean&nbsp;ignoreSequenceid)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -944,13 +944,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">MetaCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MetaCellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-byte:A-int-int-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-           byte[]&nbsp;right,
-           int&nbsp;roffset,
-           int&nbsp;rlength)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">CellComparatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparatorImpl.html#compareRows-org.apache.hadoop.hbase.Cell-byte:A-int-int-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
            byte[]&nbsp;right,
            int&nbsp;roffset,
@@ -959,6 +952,13 @@
  stopRow in Scan.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">MetaCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MetaCellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-byte:A-int-int-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+           byte[]&nbsp;right,
+           int&nbsp;roffset,
+           int&nbsp;rlength)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-byte:A-int-int-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -971,23 +971,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">MetaCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MetaCellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">CellComparatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparatorImpl.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
 <div class="block">Compares the rows of the left and right cell.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;leftCell,
-           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;rightCell)</code>
-<div class="block">Lexographically compares the rows of two cells.</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.KVComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.KVComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
@@ -996,6 +984,18 @@
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">MetaCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MetaCellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;leftCell,
+           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;rightCell)</code>
+<div class="block">Lexographically compares the rows of two cells.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) static int</code></td>
 <td class="colLast"><span class="typeNameLabel">CellComparatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparatorImpl.html#compareRows-org.apache.hadoop.hbase.Cell-int-org.apache.hadoop.hbase.Cell-int-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
            int&nbsp;leftRowLength,
@@ -1009,18 +1009,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compareTimestamps-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareTimestamps</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;leftCell,
-                 <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;rightCell)</code>
-<div class="block">Compares cell's timestamps in DESCENDING order.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.KVComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.KVComparator.html#compareTimestamps-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareTimestamps</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
                  <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">CellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html#compareTimestamps-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareTimestamps</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;leftCell,
+                 <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;rightCell)</code>
+<div class="block">Compares cell's timestamps in DESCENDING order.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#compareValue-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.filter.ByteArrayComparable-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -1197,12 +1197,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -1582,13 +1582,6 @@
            int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRowColumn-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRowColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-                 <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
-<div class="block">Compares the row and column of two keyvalues for equality</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.KVComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.KVComparator.html#matchingRowColumn-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRowColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
                  <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
@@ -1596,6 +1589,13 @@
 <div class="block">Compares the row and column of two keyvalues for equality</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRowColumn-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRowColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+                 <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
+<div class="block">Compares the row and column of two keyvalues for equality</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRowColumnBytes-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRowColumnBytes</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
@@ -1614,13 +1614,6 @@
             int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
-<div class="block">Compares the row of two keyvalues for equality</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.KVComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.KVComparator.html#matchingRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
             <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
@@ -1628,14 +1621,14 @@
 <div class="block">Compares the row of two keyvalues for equality</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRows-org.apache.hadoop.hbase.Cell-short-org.apache.hadoop.hbase.Cell-short-">matchingRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-            short&nbsp;lrowlength,
-            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right,
-            short&nbsp;rrowlength)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>static boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
+<div class="block">Compares the row of two keyvalues for equality</div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValue.KVComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.KVComparator.html#matchingRows-org.apache.hadoop.hbase.Cell-short-org.apache.hadoop.hbase.Cell-short-">matchingRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
             short&nbsp;lrowlength,
@@ -1644,6 +1637,13 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingRows-org.apache.hadoop.hbase.Cell-short-org.apache.hadoop.hbase.Cell-short-">matchingRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+            short&nbsp;lrowlength,
+            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right,
+            short&nbsp;rrowlength)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingTags-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">matchingTags</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
@@ -1678,14 +1678,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingValue-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-int-int-">matchingValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#matchingValue-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-int-int-">matchingValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
              <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right,
              int&nbsp;lvlength,
              int&nbsp;rvlength)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#matchingValue-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-int-int-">matchingValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#matchingValue-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-int-int-">matchingValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
              <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right,
              int&nbsp;lvlength,
              int&nbsp;rvlength)</code>&nbsp;</td>
@@ -1727,14 +1727,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static void</code></td>
-<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#setTimestamp-org.apache.hadoop.hbase.Cell-long-">setTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#setTimestamp-org.apache.hadoop.hbase.Cell-long-">setTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
             long&nbsp;ts)</code>
 <div class="block">Sets the given timestamp to the cell.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static void</code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#setTimestamp-org.apache.hadoop.hbase.Cell-long-">setTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">CellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellUtil.html#setTimestamp-org.apache.hadoop.hbase.Cell-long-">setTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
             long&nbsp;ts)</code>
 <div class="block">Sets the given timestamp to the cell.</div>
 </td>
@@ -2064,11 +2064,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#lastCell">lastCell</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BatchScanResultCache.html#lastCell">lastCell</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BatchScanResultCache.html#lastCell">lastCell</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#lastCell">lastCell</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2176,8 +2176,10 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Add an existing delete marker to this Delete object.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a></code></td>
@@ -2186,24 +2188,22 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Add an existing delete marker to this Delete object.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Add the specified KeyValue to this Put operation.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Append.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Add column and value to this Append operation.</div>
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Add the specified KeyValue to this Put operation.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected int</code></td>
 <td class="colLast"><span class="typeNameLabel">Result.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Result.html#binarySearch-org.apache.hadoop.hbase.Cell:A-byte:A-byte:A-">binarySearch</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>[]&nbsp;kvs,
             byte[]&nbsp;family,
@@ -2391,13 +2391,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodec.ByteBuffKeyValueDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodec.ByteBuffKeyValueDecoder.html#current">current</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BaseDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/BaseDecoder.html#current">current</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodec.ByteBuffKeyValueDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodec.ByteBuffKeyValueDecoder.html#current">current</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -2433,19 +2433,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodec.ByteBuffKeyValueDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodec.ByteBuffKeyValueDecoder.html#current--">current</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BaseDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/BaseDecoder.html#current--">current</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/BaseDecoder.html#current--">current</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodec.ByteBuffKeyValueDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodec.ByteBuffKeyValueDecoder.html#current--">current</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MessageCodec.MessageDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/MessageCodec.MessageDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodec.CellDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/CellCodec.CellDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>protected abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BaseDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/BaseDecoder.html#parseCell--">parseCell</a></span>()</code>
+<div class="block">Extract a Cell.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -2453,17 +2455,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.CellDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.CellDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.KeyValueDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.KeyValueDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/BaseDecoder.html#parseCell--">parseCell</a></span>()</code>
-<div class="block">Extract a Cell.</div>
-</td>
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellCodec.CellDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/CellCodec.CellDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.KeyValueDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.KeyValueDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.CellDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.CellDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2479,25 +2479,25 @@
 <td class="colLast"><span class="typeNameLabel">MessageCodec.MessageEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/MessageCodec.MessageEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodec.KeyValueEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodec.KeyValueEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/BaseEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.KeyValueEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.KeyValueEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CellCodec.CellEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/CellCodec.CellEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodec.KeyValueEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodec.KeyValueEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CellCodecWithTags.CellEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.CellEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.KeyValueEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.KeyValueEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -2817,10 +2817,47 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
+<div class="block">Pick the next cell that the scanner should seek to.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
+<div class="block">Filters that are not sure which key must be next seeked to, can inherit
+ this implementation that, by default, returns a null Cell.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2828,35 +2865,6 @@
 <td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
-<div class="block">Pick the next cell that the scanner should seek to.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
-<div class="block">Filters that are not sure which key must be next seeked to, can inherit
- this implementation that, by default, returns a null Cell.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
 <div class="block">If the filter returns the match code SEEK_NEXT_USING_HINT, then it should also tell which is
@@ -2865,14 +2873,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2885,32 +2885,32 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>
 <div class="block">By default no transformation takes place
 
  Give the filter a chance to transform the passed KeyValue.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterListBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListBase.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>
 <div class="block">For FilterList, we can consider a filter list as a node in a tree.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>
 <div class="block">Give the filter a chance to transform the passed KeyValue.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -2961,12 +2961,6 @@
           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
-            <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
-            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
             <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
@@ -2974,6 +2968,12 @@
 <div class="block">This method is used to determine a cell should be included or filtered out.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
+            <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
+            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#createKeyOnlyCell-org.apache.hadoop.hbase.Cell-">createKeyOnlyCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
@@ -2984,23 +2984,39 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -3008,7 +3024,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -3020,31 +3044,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -3052,46 +3052,46 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>
 <div class="block">A way to filter based on the column family, column qualifier and/or the column value.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterColumn-org.apache.hadoop.hbase.Cell-">filterColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
@@ -3110,7 +3110,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -3118,23 +3126,31 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -3146,43 +3162,43 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>abstract boolean</code></td>
@@ -3191,31 +3207,52 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterRowKey-org.apache.hadoop.hbase.Cell-">filterRowKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstRowCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
+<div class="block">Pick the next cell that the scanner should seek to.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
+<div class="block">Filters that are not sure which key must be next seeked to, can inherit
+ this implementation that, by default, returns a null Cell.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -3223,35 +3260,6 @@
 <td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
-<div class="block">Pick the next cell that the scanner should seek to.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
-<div class="block">Filters that are not sure which key must be next seeked to, can inherit
- this implementation that, by default, returns a null Cell.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>
 <div class="block">If the filter returns the match code SEEK_NEXT_USING_HINT, then it should also tell which is
@@ -3259,14 +3267,6 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-">getNextCellHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentKV)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.RowTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.RowTracker.html#lessThan-org.apache.hadoop.hbase.Cell-byte:A-">lessThan</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell,
         byte[]&nbsp;nextRowKey)</code>&nbsp;</td>
@@ -3285,32 +3285,32 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>
 <div class="block">By default no transformation takes place
 
  Give the filter a chance to transform the passed KeyValue.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FilterListBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListBase.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>
 <div class="block">For FilterList, we can consider a filter list as a node in a tree.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>
 <div class="block">Give the filter a chance to transform the passed KeyValue.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#transformCell-org.apache.hadoop.hbase.Cell-">transformCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#updatePrevCellList-int-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">updatePrevCellList</a></span>(int&nbsp;index,
@@ -3341,7 +3341,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -3372,7 +3372,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#filterRowCells-java.util.List-">filterRowCells</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;kvs)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter">FilterWrapper.FilterRowRetCode</a></code></td>
@@ -3519,7 +3519,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#getCell--">getCell</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#getCell--">getCell</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -3527,7 +3527,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#getCell--">getCell</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#getCell--">getCell</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -3541,19 +3557,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#getKey--">getKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#getKey--">getKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -3564,20 +3572,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#getKey--">getKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#toCell--">toCell</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#getKey--">getKey</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.SeekerState.html#toCell--">toCell</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#toCell--">toCell</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#toOffheapCell-java.nio.ByteBuffer-int-int-">toOffheapCell</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;valAndTagsBuffer,
@@ -3651,10 +3651,8 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
-<div class="block">Compare the given key against the current key</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -3663,8 +3661,10 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
+<div class="block">Compare the given key against the current key</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private int</code></td>
@@ -3673,23 +3673,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private int</code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#compressSingleKeyValue-java.io.DataOutputStream-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compressSingleKeyValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#compressSingleKeyValue-java.io.DataOutputStream-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compressSingleKeyValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
                       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
                       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;prevCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private int</code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#compressSingleKeyValue-java.io.DataOutputStream-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compressSingleKeyValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#compressSingleKeyValue-java.io.DataOutputStream-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compressSingleKeyValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
                       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
                       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;prevCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
       <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>
-<div class="block">Encodes a KeyValue.</div>
-</td>
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -3699,9 +3697,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
       <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>
+<div class="block">Encodes a KeyValue.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static int</code></td>
@@ -3723,19 +3723,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
               <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-              <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
+<td class="colFirst"><code>abstract int</code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+              <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingCtx,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
               <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
@@ -3746,13 +3746,23 @@
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract int</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-              <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingCtx,
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+              <a href="../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#seekToKeyInBlock-org.apache.hadoop.hbase.Cell-boolean-">seekToKeyInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell,
+                boolean&nbsp;seekBefore)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#seekToKeyInBlock-org.apache.hadoop.hbase.Cell-boolean-">seekToKeyInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell,
+                boolean&nbsp;seekBefore)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#seekToKeyInBlock-org.apache.hadoop.hbase.Cell-boolean-">seekToKeyInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key,
                 boolean&nbsp;seekBefore)</code>
 <div class="block">Moves the seeker position within the current block to:
@@ -3764,23 +3774,13 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#seekToKeyInBlock-org.apache.hadoop.hbase.Cell-boolean-">seekToKeyInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell,
-                boolean&nbsp;seekBefore)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#seekToKeyInBlock-org.apache.hadoop.hbase.Cell-boolean-">seekToKeyInBlock</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell,
-                boolean&nbsp;seekBefore)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">NoneEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/NoneEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RowIndexEncoderV1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexEncoderV1.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">NoneEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/NoneEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#writeKeyExcludingCommon-org.apache.hadoop.hbase.Cell-int-java.io.DataOutputStream-">writeKeyExcludingCommon</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -3843,13 +3843,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompoundBloomFilterWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.html#prevCell">prevCell</a></span></code>
-<div class="block">The prev Cell that was processed</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFilePrettyPrinter.KeyValueStatsCollector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFilePrettyPrinter.KeyValueStatsCollector.html#prevCell">prevCell</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFilePrettyPrinter.KeyValueStatsCollector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFilePrettyPrinter.KeyValueStatsCollector.html#prevCell">prevCell</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompoundBloomFilterWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.html#prevCell">prevCell</a></span></code>
+<div class="block">The prev Cell that was processed</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -4004,14 +4004,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompoundBloomFilterWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Add key/value to file.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">CompoundBloomFilterWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static int</code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlockIndex.BlockIndexReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockIndex.BlockIndexReader.html#binarySearchNonRootIndex-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.hbase.CellComparator-">binarySearchNonRootIndex</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key,
@@ -4697,13 +4697,13 @@
 <td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#cur">cur</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#current">current</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#current">current</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#current">current</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#delayedSeekKV">delayedSeekKV</a></span></code>&nbsp;</td>
@@ -4772,13 +4772,13 @@
 <td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#firstKey">firstKey</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#iter">iter</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#iter">iter</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#iter">iter</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MemStoreCompactorSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactorSegmentsIterator.html#kvs">kvs</a></span></code>&nbsp;</td>
@@ -4833,7 +4833,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -4841,9 +4843,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -4901,9 +4901,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">When a cell's size is too big (bigger than maxAlloc),
- copyCellInto does not allocate it on MSLAB.</div>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -4914,8 +4913,9 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">When a cell's size is too big (bigger than maxAlloc),
+ copyCellInto does not allocate it on MSLAB.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -4931,13 +4931,13 @@
 <td class="colLast"><span class="typeNameLabel">CellArrayMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellArrayMap.html#getCell-int-">getCell</a></span>(int&nbsp;i)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellFlatMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html#getCell-int-">getCell</a></span>(int&nbsp;i)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CellChunkMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellChunkMap.html#getCell-int-">getCell</a></span>(int&nbsp;i)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellFlatMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html#getCell-int-">getCell</a></span>(int&nbsp;i)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#getHighest-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">getHighest</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;first,
@@ -4961,11 +4961,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -4973,15 +4973,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#getNextIndexedKey--">getNextIndexedKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -5010,15 +5010,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#last--">last</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#last--">last</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#last--">last</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#last--">last</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#last--">last</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#last--">last</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -5034,6 +5034,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+                       boolean&nbsp;forceCloneOfBigCell)</code>
+<div class="block">If the segment has a memory allocator the cell is being cloned to this space, and returned;
+ otherwise the given cell is returned</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
                        boolean&nbsp;forceCloneOfBigCell)</code>
 <div class="block">If the segment has a memory allocator the cell is being cloned to this space, and returned;
@@ -5042,14 +5050,6 @@
  When a cell's size is too big (bigger than maxAlloc), it is not allocated on MSLAB.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-                       boolean&nbsp;forceCloneOfBigCell)</code>
-<div class="block">If the segment has a memory allocator the cell is being cloned to this space, and returned;
- otherwise the given cell is returned</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
@@ -5063,21 +5063,31 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreCompactorSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactorSegmentsIterator.html#next--">next</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreMergerSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreMergerSegmentsIterator.html#next--">next</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#next--">next</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">MemStoreCompactorSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactorSegmentsIterator.html#next--">next</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#next--">next</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#next--">next</a></span>()</code>
 <div class="block">Return the next Cell in this scanner, iterating the scanner</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#next--">next</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#next--">next</a></span>()</code>
+<div class="block">Return the next Cell in this scanner, iterating the scanner</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#next--">next</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#next--">next</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -5085,39 +5095,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreMergerSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreMergerSegmentsIterator.html#next--">next</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#next--">next</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#next--">next</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#next--">next</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#next--">next</a></span>()</code>
-<div class="block">Return the next Cell in this scanner, iterating the scanner</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#peek--">peek</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#peek--">peek</a></span>()</code>
-<div class="block">Look at the next Cell in this scanner, but do not iterate scanner.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#peek--">peek</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#peek--">peek</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#next--">next</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -5131,6 +5113,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#peek--">peek</a></span>()</code>
+<div class="block">Look at the next Cell in this scanner, but do not iterate scanner.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#peek--">peek</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#peek--">peek</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#peek--">peek</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#pollFirst--">pollFirst</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -5318,15 +5318,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;toElement)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;toElement)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
@@ -5343,20 +5343,20 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellFlatMap.CellFlatMapCollection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.CellFlatMapCollection.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellFlatMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html#keySet--">keySet</a></span>()</code>&nbsp;</td>
@@ -5493,21 +5493,21 @@
        boolean&nbsp;inclusive)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstCell)</code>
-<div class="block">Returns a subset of the segment cell set, which starts with the given cell</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;fromElement)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstCell)</code>
 <div class="block">Returns a subset of the segment cell set, which starts with the given cell</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstCell)</code>
+<div class="block">Returns a subset of the segment cell set, which starts with the given cell</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#tailSet-org.apache.hadoop.hbase.Cell-boolean-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;fromElement,
@@ -5552,38 +5552,38 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-   <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
    <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
 <div class="block">Adds a value to the memstore</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+   <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">DateTieredMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DateTieredMultiFileWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.BoundaryMultiWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.BoundaryMultiWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.SizeMultiWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.SizeMultiWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.BoundaryMultiWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.BoundaryMultiWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.SizeMultiWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.SizeMultiWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CellSink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSink.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Append the given cell</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html#append-org.apache.hadoop.hbase.Cell-">append</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html#appendDeleteFamilyBloomFilter-org.apache.hadoop.hbase.Cell-">appendDeleteFamilyBloomFilter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
@@ -5594,30 +5594,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
-<div class="block">Seek the scanner at or before the row of specified Cell, it firstly
- tries to seek the scanner at or after the specified Cell, return if
- peek KeyValue of scanner has the same row with specified Cell,
- otherwise seek the scanner at the first Cell of the row which is the
- previous row of specified KeyValue</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">NonReversedNonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/NonReversedNonLazyKeyValueScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
@@ -5629,6 +5607,28 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
+<div class="block">Seek the scanner at or before the row of specified Cell, it firstly
+ tries to seek the scanner at or after the specified Cell, return if
+ peek KeyValue of scanner has the same row with specified Cell,
+ otherwise seek the scanner at the first Cell of the row which is the
+ previous row of specified KeyValue</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#backwardSeek-org.apache.hadoop.hbase.Cell-">backwardSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#ceiling-org.apache.hadoop.hbase.Cell-">ceiling</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;e)</code>&nbsp;</td>
 </tr>
@@ -5670,32 +5670,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValueHeap.KVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.KVScannerComparator.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
        <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
 <div class="block">Compares two KeyValue</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
        <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.ReversedKVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.ReversedKVScannerComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
-           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
-<div class="block">Compares rows of two KeyValue</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#compare-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compare</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+       <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -5703,8 +5691,22 @@
            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.ReversedKVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.ReversedKVScannerComparator.html#compareRows-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">compareRows</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;left,
+           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;right)</code>
+<div class="block">Compares rows of two KeyValue</div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -5712,9 +5714,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#copyCellInto-org.apache.hadoop.hbase.Cell-">copyCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
@@ -5794,9 +5794,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">When a cell's size is too big (bigger than maxAlloc),
- copyCellInto does not allocate it on MSLAB.</div>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -5807,8 +5806,9 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Allocates slice in this LAB and copy the passed Cell into this area.</div>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#forceCopyOfBigCellInto-org.apache.hadoop.hbase.Cell-">forceCopyOfBigCellInto</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">When a cell's size is too big (bigger than maxAlloc),
+ copyCellInto does not allocate it on MSLAB.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -5887,15 +5887,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;toElement)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;toElement)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#headSet-org.apache.hadoop.hbase.Cell-">headSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstKeyOnRow)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
@@ -5927,14 +5927,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            boolean&nbsp;mslabUsed,
            <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
            boolean&nbsp;sizeAddedPreOperation)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            boolean&nbsp;mslabUsed,
            <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
            boolean&nbsp;sizeAddedPreOperation)</code>&nbsp;</td>
@@ -5972,6 +5972,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+                       boolean&nbsp;forceCloneOfBigCell)</code>
+<div class="block">If the segment has a memory allocator the cell is being cloned to this space, and returned;
+ otherwise the given cell is returned</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
                        boolean&nbsp;forceCloneOfBigCell)</code>
 <div class="block">If the segment has a memory allocator the cell is being cloned to this space, and returned;
@@ -5980,14 +5988,6 @@
  When a cell's size is too big (bigger than maxAlloc), it is not allocated on MSLAB.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-                       boolean&nbsp;forceCloneOfBigCell)</code>
-<div class="block">If the segment has a memory allocator the cell is being cloned to this space, and returned;
- otherwise the given cell is returned</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#maybeCloneWithAllocator-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-boolean-">maybeCloneWithAllocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
@@ -6075,14 +6075,6 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
-         <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-         <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
-<div class="block">Issue any synchronization and test needed before applying the update</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -6092,12 +6084,20 @@
  overflow</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
          <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
+         <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+         <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
+<div class="block">Issue any synchronization and test needed before applying the update</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CellFlatMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html#put-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-">put</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;k,
@@ -6125,36 +6125,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
-           boolean&nbsp;forward,
-           boolean&nbsp;useBloom)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
-           boolean&nbsp;forward,
-           boolean&nbsp;useBloom)</code>
-<div class="block">Similar to <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#seek-org.apache.hadoop.hbase.Cell-"><code>KeyValueScanner.seek(org.apache.hadoop.hbase.Cell)</code></a> (or <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#reseek-org.apache.hadoop.hbase.Cell-"><code>KeyValueScanner.reseek(org.apache.hadoop.hbase.Cell)</code></a> if forward is true) but only
- does a seek operation after checking that it is really necessary for the
- row/column combination specified by the kv parameter.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key,
-           boolean&nbsp;forward,
-           boolean&nbsp;useBloom)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
-           boolean&nbsp;forward,
-           boolean&nbsp;useBloom)</code>
-<div class="block">Pretend we have done a seek but don't do it yet, if possible.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key,
            boolean&nbsp;forward,
            boolean&nbsp;useBloom)</code>
@@ -6171,29 +6141,33 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
-<div class="block">Reseek the scanner at or after the specified KeyValue.</div>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
+           boolean&nbsp;forward,
+           boolean&nbsp;useBloom)</code>
+<div class="block">Similar to <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#seek-org.apache.hadoop.hbase.Cell-"><code>KeyValueScanner.seek(org.apache.hadoop.hbase.Cell)</code></a> (or <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#reseek-org.apache.hadoop.hbase.Cell-"><code>KeyValueScanner.reseek(org.apache.hadoop.hbase.Cell)</code></a> if forward is true) but only
+ does a seek operation after checking that it is really necessary for the
+ row/column combination specified by the kv parameter.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
+           boolean&nbsp;forward,
+           boolean&nbsp;useBloom)</code>
+<div class="block">Pretend we have done a seek but don't do it yet, if possible.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
+           boolean&nbsp;forward,
+           boolean&nbsp;useBloom)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#requestSeek-org.apache.hadoop.hbase.Cell-boolean-boolean-">requestSeek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key,
+           boolean&nbsp;forward,
+           boolean&nbsp;useBloom)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -6209,6 +6183,32 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
+<div class="block">Reseek the scanner at or after the specified KeyValue.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#reseek-org.apache.hadoop.hbase.Cell-">reseek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>(package private) static boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#reseekAtOrAfter-org.apache.hadoop.hbase.io.hfile.HFileScanner-org.apache.hadoop.hbase.Cell-">reseekAtOrAfter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFileScanner.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileScanner</a>&nbsp;s,
                <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;k)</code>&nbsp;</td>
@@ -6265,32 +6265,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
-<div class="block">Seek the scanner at or after the specified KeyValue.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>
 <div class="block">Seeks all scanners at or below the specified seek key.</div>
 </td>
@@ -6302,6 +6276,32 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
+<div class="block">Seek the scanner at or after the specified KeyValue.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotSegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SnapshotSegmentScanner.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekCell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#seek-org.apache.hadoop.hbase.Cell-">seek</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#seekAsDirection-org.apache.hadoop.hbase.Cell-">seekAsDirection</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>
 <div class="block">Do a reseek in a normal StoreScanner(scan forward)</div>
@@ -6352,27 +6352,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
-<div class="block">Seek the scanner at the first Cell of the row which is the previous row
- of specified key</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">NonReversedNonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/NonReversedNonLazyKeyValueScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;originalKey)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
@@ -6381,6 +6362,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
+<div class="block">Seek the scanner at the first Cell of the row which is the previous row
+ of specified key</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;originalKey)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedStoreScanner.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.html#seekToPreviousRow-org.apache.hadoop.hbase.Cell-">seekToPreviousRow</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;seekKey)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#setCurrentCell-org.apache.hadoop.hbase.Cell-">setCurrentCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;newVal)</code>&nbsp;</td>
 </tr>
@@ -6440,21 +6440,21 @@
        boolean&nbsp;inclusive)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstCell)</code>
-<div class="block">Returns a subset of the segment cell set, which starts with the given cell</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;fromElement)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstCell)</code>
 <div class="block">Returns a subset of the segment cell set, which starts with the given cell</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#tailSet-org.apache.hadoop.hbase.Cell-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;firstCell)</code>
+<div class="block">Returns a subset of the segment cell set, which starts with the given cell</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CellSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html#tailSet-org.apache.hadoop.hbase.Cell-boolean-">tailSet</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;fromElement,
@@ -6488,6 +6488,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+                                   <a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
+                                   <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                                    <a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
                                    <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>
@@ -6496,12 +6502,6 @@
  for details on this methods.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
-                                   <a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
-                                   <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#updateDeleteLatestVersionTimestamp-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.client.Get-int-byte:A-">updateDeleteLatestVersionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -6511,7 +6511,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
               boolean&nbsp;succ,
               boolean&nbsp;mslabUsed,
               <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
@@ -6519,7 +6519,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
               boolean&nbsp;succ,
               boolean&nbsp;mslabUsed,
               <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
@@ -6562,16 +6562,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
-   <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
    <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
 <div class="block">Adds the specified value to the memstore</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
+   <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CellFlatMap.CellFlatMapCollection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.CellFlatMapCollection.html#addAll-java.util.Collection-">addAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;collection)</code>&nbsp;</td>
@@ -6640,15 +6640,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedMobStoreScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResult,
-    <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;ctx)</code>
-<div class="block">Firstly reads the cells from the HBase.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
+    <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
-    <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
+    <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
+<div class="block">Gets the next row of keys from the top-most scanner.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -6659,9 +6659,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InternalScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
-    <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
-<div class="block">Grab the next row's worth of values.</div>
+<td class="colLast"><span class="typeNameLabel">ReversedMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ReversedMobStoreScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResult,
+    <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;ctx)</code>
+<div class="block">Firstly reads the cells from the HBase.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -6673,9 +6673,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
+<td class="colLast"><span class="typeNameLabel">InternalScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
     <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
-<div class="block">Gets the next row of keys from the top-most scanner.</div>
+<div class="block">Grab the next row's worth of values.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -6685,26 +6685,26 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRaw-java.util.List-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScanner.html#nextRaw-java.util.List-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result)</code>
 <div class="block">Grab the next row's worth of values.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRaw-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
-       <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRaw-java.util.List-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScanner.html#nextRaw-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
        <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
 <div class="block">Grab the next row's worth of values.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRaw-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
+       <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#populateFromJoinedHeap-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">populateFromJoinedHeap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;results,
@@ -6841,18 +6841,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
-      long&nbsp;readpoint,
-      <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
       long&nbsp;readpoint,
       <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
 <div class="block">Adds or replaces the specified KeyValues.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
+      long&nbsp;readpoint,
+      <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -7014,15 +7014,15 @@
 <td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#getKeyForNextColumn-org.apache.hadoop.hbase.Cell-">getKeyForNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Delegate to <a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-"><code>Filter.getNextCellHint(Cell)</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">UserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
@@ -7042,19 +7042,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Add the specified cell to the list of deletes to check against for this row operation.</div>
+<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Add the specified Cell to the list of deletes to check against for this row operation.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Add the specified cell to the list of deletes to check against for this row operation.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Add the specified Cell to the list of deletes to check against for this row operation.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -7062,11 +7062,8 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-           byte&nbsp;type)</code>
-<div class="block">Checks if the column is present in the list of requested columns by returning the match code
- instance.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+           byte&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -7078,12 +7075,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-           byte&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+           byte&nbsp;type)</code>
+<div class="block">Checks if the column is present in the list of requested columns by returning the match code
+ instance.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            byte&nbsp;type)</code>
 <div class="block">Checks if the column is present in the list of requested columns by returning the match code
  instance.</div>
@@ -7096,12 +7096,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
              long&nbsp;timestamp,
              byte&nbsp;type,
-             boolean&nbsp;ignoreCount)</code>
-<div class="block">Keeps track of the number of versions for the columns asked for.</div>
-</td>
+             boolean&nbsp;ignoreCount)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -7114,17 +7112,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
              long&nbsp;timestamp,
              byte&nbsp;type,
              boolean&nbsp;ignoreCount)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
              long&nbsp;timestamp,
              byte&nbsp;type,
-             boolean&nbsp;ignoreCount)</code>&nbsp;</td>
+             boolean&nbsp;ignoreCount)</code>
+<div class="block">Keeps track of the number of versions for the columns asked for.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -7137,38 +7137,36 @@
                     <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;currentCell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#doneWithColumn-org.apache.hadoop.hbase.Cell-">doneWithColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#doneWithColumn-org.apache.hadoop.hbase.Cell-">doneWithColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">This method is used to inform the column tracker that we are done with this column.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#doneWithColumn-org.apache.hadoop.hbase.Cell-">doneWithColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#getKeyForNextColumn-org.apache.hadoop.hbase.Cell-">getKeyForNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Delegate to <a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html#getNextCellHint-org.apache.hadoop.hbase.Cell-"><code>Filter.getNextCellHint(Cell)</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">UserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html#getNextKeyHint-org.apache.hadoop.hbase.Cell-">getNextKeyHint</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Retrieve the MatchCode for the next row or column</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -7176,11 +7174,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Retrieve the MatchCode for the next row or column</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static boolean</code></td>
@@ -7190,29 +7190,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Check if the specified cell buffer has been deleted by a previously seen delete.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">This method is not idempotent, we will save some info to judge VERSION_MASKED.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Check if the specified Cell buffer has been deleted by a previously seen delete.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NormalUserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Check if the specified cell buffer has been deleted by a previously seen delete.</div>
+</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">This method is not idempotent, we will save some info to judge VERSION_MASKED.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -7229,7 +7221,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StripeCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NormalUserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -7244,6 +7236,14 @@
 <td class="colLast"><span class="typeNameLabel">MajorCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StripeCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">UserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html#matchColumn-org.apache.hadoop.hbase.Cell-long-byte-">matchColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            long&nbsp;timestamp,
@@ -7258,13 +7258,13 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#moreRowsMayExistAfter-org.apache.hadoop.hbase.Cell-">moreRowsMayExistAfter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#moreRowsMayExistAfter-org.apache.hadoop.hbase.Cell-">moreRowsMayExistAfter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#moreRowsMayExistAfter-org.apache.hadoop.hbase.Cell-">moreRowsMayExistAfter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">UserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html#moreRowsMayExistAfter-org.apache.hadoop.hbase.Cell-">moreRowsMayExistAfter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
@@ -7352,11 +7352,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.EncryptedKvDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.EncryptedKvDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALCellCodec.CompressedKvDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALCellCodec.CompressedKvDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.EncryptedKvDecoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.EncryptedKvDecoder.html#parseCell--">parseCell</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -7369,15 +7369,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.EncryptedKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.EncryptedKvEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALCellCodec.CompressedKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">WALCellCodec.CompressedKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALCellCodec.EnsureKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.EnsureKvEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">WALCellCodec.EnsureKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.EnsureKvEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.EncryptedKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.EncryptedKvEncoder.html#write-org.apache.hadoop.hbase.Cell-">write</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
@@ -7430,26 +7430,26 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALCellFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/WALCellFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Applies the filter, possibly returning a different Cell instance.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -7472,26 +7472,26 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALCellFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/WALCellFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Applies the filter, possibly returning a different Cell instance.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static long</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationBarrierFamilyFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationBarrierFamilyFormat.html#getReplicationBarrier-org.apache.hadoop.hbase.Cell-">getReplicationBarrier</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
@@ -7608,13 +7608,13 @@
 <td class="colLast"><span class="typeNameLabel">ScannerResultGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/ScannerResultGenerator.html#putBack-org.apache.hadoop.hbase.Cell-">putBack</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowResultGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/RowResultGenerator.html#putBack-org.apache.hadoop.hbase.Cell-">putBack</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">ResultGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/ResultGenerator.html#putBack-org.apache.hadoop.hbase.Cell-">putBack</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowResultGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/RowResultGenerator.html#putBack-org.apache.hadoop.hbase.Cell-">putBack</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -7851,11 +7851,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;delCell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityNewVersionBehaivorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityNewVersionBehaivorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html#add-org.apache.hadoop.hbase.Cell-">add</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;delCell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -7917,11 +7917,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityNewVersionBehaivorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityNewVersionBehaivorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
@@ -8192,15 +8192,15 @@
 <td class="colLast"><span class="typeNameLabel">RowPrefixFixedLengthBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/RowPrefixFixedLengthBloomContext.html#getRowPrefixCell-org.apache.hadoop.hbase.Cell-">getRowPrefixCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RowBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/RowBloomContext.html#isNewKey-org.apache.hadoop.hbase.Cell-">isNewKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">BloomContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/BloomContext.html#isNewKey-org.apache.hadoop.hbase.Cell-">isNewKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Returns true if the cell is a new key as per the bloom type</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RowBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/RowBloomContext.html#isNewKey-org.apache.hadoop.hbase.Cell-">isNewKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RowColBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/RowColBloomContext.html#isNewKey-org.apache.hadoop.hbase.Cell-">isNewKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html b/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html
index fe1751e..8d99e06 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilder.html
@@ -237,10 +237,8 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType)</code>
-<div class="block">get a CellBuilder instance that already has relevant Type and Row set.</div>
-</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
@@ -248,15 +246,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Append.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType)</code>
+<div class="block">get a CellBuilder instance that already has relevant Type and Row set.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Append.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html b/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html
index 4e2a3f4..2566a23 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CellBuilderType.html
@@ -131,17 +131,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderFactory.html#create-org.apache.hadoop.hbase.CellBuilderType-">create</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>
-<div class="block">Allows creating a cell with the given CellBuilderType.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CellBuilderFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/CellBuilderFactory.html#create-org.apache.hadoop.hbase.CellBuilderType-">create</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>
 <div class="block">Create a CellBuilder instance.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderFactory.html#create-org.apache.hadoop.hbase.CellBuilderType-">create</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>
+<div class="block">Allows creating a cell with the given CellBuilderType.</div>
+</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -157,10 +157,8 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType)</code>
-<div class="block">get a CellBuilder instance that already has relevant Type and Row set.</div>
-</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
@@ -168,15 +166,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Delete.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Append.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Mutation.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;cellBuilderType)</code>
+<div class="block">get a CellBuilder instance that already has relevant Type and Row set.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Append.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Put.html#getCellBuilder-org.apache.hadoop.hbase.CellBuilderType-">getCellBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase">CellBuilderType</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellBuilder.html" title="interface in org.apache.hadoop.hbase">CellBuilder</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CellComparator.html b/devapidocs/org/apache/hadoop/hbase/class-use/CellComparator.html
index 7516bb8..f103f57 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CellComparator.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CellComparator.html
@@ -258,10 +258,8 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
-<div class="block">Compare the given key against the current key</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -270,8 +268,10 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
-          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#compareKey-org.apache.hadoop.hbase.CellComparator-org.apache.hadoop.hbase.Cell-">compareKey</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator,
+          <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;key)</code>
+<div class="block">Compare the given key against the current key</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -487,7 +487,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#cellComparator">cellComparator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#cellComparator">cellComparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
@@ -495,15 +495,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#cellComparator">cellComparator</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#comparator">comparator</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#cellComparator">cellComparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
@@ -511,31 +503,39 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#comparator">comparator</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html#comparator">comparator</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.StripeFlushRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.StripeFlushRequest.html#comparator">comparator</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#comparator">comparator</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html#comparator">comparator</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#comparator">comparator</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.StripeFlushRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.StripeFlushRequest.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
@@ -562,42 +562,24 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValueHeap.KVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.KVScannerComparator.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getComparator--">getComparator</a></span>()</code>
-<div class="block">Returns the Cell comparator used by this segment</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueHeap.KVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.KVScannerComparator.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFile.html#getComparator--">getComparator</a></span>()</code>
@@ -606,8 +588,26 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getComparator--">getComparator</a></span>()</code>
+<div class="block">Returns the Cell comparator used by this segment</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -641,24 +641,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-                <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                 <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
                 <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;kvComparator)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected abstract void</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-                <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;cellComparator)</code>
-<div class="block">Create the StoreEngine's components.</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
@@ -666,6 +652,20 @@
                 <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;kvComparator)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
+                <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract void</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
+                <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;cellComparator)</code>
+<div class="block">Create the StoreEngine's components.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createComponentsOnce-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponentsOnce</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                     <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
@@ -1014,16 +1014,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanWildcardColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanWildcardColumnTracker.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScanWildcardColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanWildcardColumnTracker.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
@@ -1042,17 +1042,17 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#getCellComparator--">getCellComparator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#getCellComparator--">getCellComparator</a></span>()</code>
 <div class="block">Return the comparator passed to this delete tracker</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#getCellComparator--">getCellComparator</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#getCellComparator--">getCellComparator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#getCellComparator--">getCellComparator</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1122,13 +1122,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CollectionBackedScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CollectionBackedScanner.html#comparator">comparator</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BloomContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/BloomContext.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CollectionBackedScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CollectionBackedScanner.html#comparator">comparator</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CellScanner.html b/devapidocs/org/apache/hadoop/hbase/class-use/CellScanner.html
index 2401c43..15eba62 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CellScanner.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CellScanner.html
@@ -358,11 +358,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#cellScanner--">cellScanner</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a></code></td>
@@ -395,16 +395,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
+    <a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
     <a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>
 <div class="block">This is a server side method, which is invoked over RPC.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
-    <a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -504,33 +504,33 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#setCellScanner-org.apache.hadoop.hbase.CellScanner-">setCellScanner</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#setCellScanner-org.apache.hadoop.hbase.CellScanner-">setCellScanner</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>
 <div class="block">Only used to send cells to rpc server, the returned cells should be set by
  <a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#setDone-org.apache.hadoop.hbase.CellScanner-"><code>HBaseRpcController.setDone(CellScanner)</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#setCellScanner-org.apache.hadoop.hbase.CellScanner-">setCellScanner</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#setCellScanner-org.apache.hadoop.hbase.CellScanner-">setCellScanner</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#setDone-org.apache.hadoop.hbase.CellScanner-">setDone</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#setDone-org.apache.hadoop.hbase.CellScanner-">setDone</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>
 <div class="block"><b>IMPORTANT:</b> always call this method if the call finished without any exception to tell
  the <code>HBaseRpcController</code> that we are done.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#setDone-org.apache.hadoop.hbase.CellScanner-">setDone</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#setDone-org.apache.hadoop.hbase.CellScanner-">setDone</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#setDone-org.apache.hadoop.hbase.CellScanner-">setDone</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&nbsp;cellScanner)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.Option.html b/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.Option.html
index 929831f..d9504ac 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.Option.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.Option.html
@@ -199,22 +199,22 @@
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>
 <div class="block">Get cluster status with a set of <a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><code>ClusterMetrics.Option</code></a> to get desired status.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html b/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html
index 189c9f7..24dcaa5 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/ClusterMetrics.html
@@ -266,11 +266,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getClusterMetrics--">getClusterMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
@@ -278,11 +278,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getClusterMetrics-java.util.EnumSet-">getClusterMetrics</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/EnumSet.html?is-external=true" title="class or interface in java.util">EnumSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase">ClusterMetrics.Option</a>&gt;&nbsp;options)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -340,7 +340,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -350,17 +350,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -370,14 +360,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -500,11 +500,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#updateClusterMetrics-org.apache.hadoop.hbase.ClusterMetrics-">updateClusterMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;st)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#updateClusterMetrics-org.apache.hadoop.hbase.ClusterMetrics-">updateClusterMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;st)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#updateClusterMetrics-org.apache.hadoop.hbase.ClusterMetrics-">updateClusterMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;st)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#updateClusterMetrics-org.apache.hadoop.hbase.ClusterMetrics-">updateClusterMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;st)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CompareOperator.html b/devapidocs/org/apache/hadoop/hbase/class-use/CompareOperator.html
index f7b002e..6b57013 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CompareOperator.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CompareOperator.html
@@ -209,15 +209,15 @@
          byte[]&nbsp;value)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#ifMatches-org.apache.hadoop.hbase.CompareOperator-byte:A-">ifMatches</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;compareOp,
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html#ifMatches-org.apache.hadoop.hbase.CompareOperator-byte:A-">ifMatches</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;compareOp,
          byte[]&nbsp;value)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html#ifMatches-org.apache.hadoop.hbase.CompareOperator-byte:A-">ifMatches</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;compareOp,
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#ifMatches-org.apache.hadoop.hbase.CompareOperator-byte:A-">ifMatches</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;compareOp,
          byte[]&nbsp;value)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -376,16 +376,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#op">op</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#op">op</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#op">op</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#op">op</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#op">op</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -404,7 +404,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#getCompareOperator--">getCompareOperator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#getCompareOperator--">getCompareOperator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
@@ -412,7 +412,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#getCompareOperator--">getCompareOperator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#getCompareOperator--">getCompareOperator</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -447,12 +447,6 @@
           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
-            <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
-            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
             <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
@@ -460,6 +454,12 @@
 <div class="block">This method is used to determine a cell should be included or filtered out.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
+            <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
+            <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/CoprocessorEnvironment.html b/devapidocs/org/apache/hadoop/hbase/class-use/CoprocessorEnvironment.html
index 4bc3bd4..c99a539 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/CoprocessorEnvironment.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/CoprocessorEnvironment.html
@@ -315,23 +315,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MultiRowMutationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MultiRowMutationEndpoint.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>
 <div class="block">Stores a reference to the coprocessor environment provided by the
  <a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver"><code>RegionCoprocessorHost</code></a> from the region where this
  coprocessor is loaded.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowMutationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MultiRowMutationEndpoint.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultiRowMutationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/MultiRowMutationEndpoint.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -349,7 +349,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ExampleMasterObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleMasterObserverWithMetrics.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BulkDeleteEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/BulkDeleteEndpoint.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -357,52 +357,52 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ExampleRegionObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleRegionObserverWithMetrics.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BulkDeleteEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/BulkDeleteEndpoint.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RefreshHFilesEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/RefreshHFilesEndpoint.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowCountEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/RowCountEndpoint.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>
-<div class="block">Stores a reference to the coprocessor environment provided by the
- <a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver"><code>RegionCoprocessorHost</code></a> from the region where this
- coprocessor is loaded.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ExampleRegionObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleRegionObserverWithMetrics.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;e)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowCountEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/RowCountEndpoint.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>
+<div class="block">Stores a reference to the coprocessor environment provided by the
+ <a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver"><code>RegionCoprocessorHost</code></a> from the region where this
+ coprocessor is loaded.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ExampleMasterObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleMasterObserverWithMetrics.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ExampleRegionObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleRegionObserverWithMetrics.html#start-org.apache.hadoop.hbase.CoprocessorEnvironment-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">BulkDeleteEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/BulkDeleteEndpoint.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RefreshHFilesEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/RefreshHFilesEndpoint.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RowCountEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/RowCountEndpoint.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ExampleRegionObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleRegionObserverWithMetrics.html#stop-org.apache.hadoop.hbase.CoprocessorEnvironment-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/CoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase">CoprocessorEnvironment</a>&nbsp;e)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCell.html b/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCell.html
index 6a1f70c..3c6df01 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCell.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCell.html
@@ -288,34 +288,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#build--">build</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NoTagsByteBufferKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/NoTagsByteBufferKeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ByteBufferKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ByteBufferKeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>default <a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html#deepClone--">deepClone</a></span>()</code>
-<div class="block">Does a deep copy of the contents to a new memory area and returns it as a new cell.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NoTagsKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/NoTagsKeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PrivateCellUtil.TagRewriteCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.TagRewriteCell.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
@@ -333,17 +315,35 @@
 <td class="colLast"><span class="typeNameLabel">PrivateCellUtil.ValueAndTagRewriteByteBufferExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.ValueAndTagRewriteByteBufferExtendedCell.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IndividualBytesFieldCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IndividualBytesFieldCellBuilder.html#innerBuild--">innerBuild</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>default <a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html#deepClone--">deepClone</a></span>()</code>
+<div class="block">Does a deep copy of the contents to a new memory area and returns it as a new cell.</div>
+</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NoTagsByteBufferKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/NoTagsByteBufferKeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NoTagsKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/NoTagsKeyValue.html#deepClone--">deepClone</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract <a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#innerBuild--">innerBuild</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValueBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/KeyValueBuilder.html#innerBuild--">innerBuild</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCell.html" title="interface in org.apache.hadoop.hbase">ExtendedCell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">IndividualBytesFieldCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IndividualBytesFieldCellBuilder.html#innerBuild--">innerBuild</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCellBuilder.html b/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCellBuilder.html
index fb0e546..c020604 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCellBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/ExtendedCellBuilder.html
@@ -142,11 +142,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#clear--">clear</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#clear--">clear</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#clear--">clear</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#clear--">clear</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
@@ -156,143 +156,143 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setFamily-byte:A-">setFamily</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setFamily-byte:A-">setFamily</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setFamily-byte:A-int-int-">setFamily</a></span>(byte[]&nbsp;family,
-         int&nbsp;fOffset,
-         int&nbsp;fLength)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setFamily-byte:A-">setFamily</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setFamily-byte:A-int-int-">setFamily</a></span>(byte[]&nbsp;family,
          int&nbsp;fOffset,
          int&nbsp;fLength)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setQualifier-byte:A-">setQualifier</a></span>(byte[]&nbsp;qualifier)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setFamily-byte:A-int-int-">setFamily</a></span>(byte[]&nbsp;family,
+         int&nbsp;fOffset,
+         int&nbsp;fLength)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setQualifier-byte:A-">setQualifier</a></span>(byte[]&nbsp;qualifier)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setQualifier-byte:A-int-int-">setQualifier</a></span>(byte[]&nbsp;qualifier,
-            int&nbsp;qOffset,
-            int&nbsp;qLength)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setQualifier-byte:A-">setQualifier</a></span>(byte[]&nbsp;qualifier)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setQualifier-byte:A-int-int-">setQualifier</a></span>(byte[]&nbsp;qualifier,
             int&nbsp;qOffset,
             int&nbsp;qLength)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setRow-byte:A-">setRow</a></span>(byte[]&nbsp;row)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setQualifier-byte:A-int-int-">setQualifier</a></span>(byte[]&nbsp;qualifier,
+            int&nbsp;qOffset,
+            int&nbsp;qLength)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setRow-byte:A-">setRow</a></span>(byte[]&nbsp;row)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setRow-byte:A-int-int-">setRow</a></span>(byte[]&nbsp;row,
-      int&nbsp;rOffset,
-      int&nbsp;rLength)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setRow-byte:A-">setRow</a></span>(byte[]&nbsp;row)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setRow-byte:A-int-int-">setRow</a></span>(byte[]&nbsp;row,
       int&nbsp;rOffset,
       int&nbsp;rLength)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setRow-byte:A-int-int-">setRow</a></span>(byte[]&nbsp;row,
+      int&nbsp;rOffset,
+      int&nbsp;rLength)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setSequenceId-long-">setSequenceId</a></span>(long&nbsp;seqId)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setSequenceId-long-">setSequenceId</a></span>(long&nbsp;seqId)</code>
 <div class="block">Internal usage.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setSequenceId-long-">setSequenceId</a></span>(long&nbsp;seqId)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-byte:A-">setTags</a></span>(byte[]&nbsp;tags)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setTags-byte:A-">setTags</a></span>(byte[]&nbsp;tags)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-byte:A-int-int-">setTags</a></span>(byte[]&nbsp;tags,
-       int&nbsp;tagsOffset,
-       int&nbsp;tagsLength)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-byte:A-">setTags</a></span>(byte[]&nbsp;tags)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setTags-byte:A-int-int-">setTags</a></span>(byte[]&nbsp;tags,
        int&nbsp;tagsOffset,
        int&nbsp;tagsLength)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-byte:A-int-int-">setTags</a></span>(byte[]&nbsp;tags,
+       int&nbsp;tagsOffset,
+       int&nbsp;tagsLength)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTimestamp-long-">setTimestamp</a></span>(long&nbsp;timestamp)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setTimestamp-long-">setTimestamp</a></span>(long&nbsp;timestamp)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setType-byte-">setType</a></span>(byte&nbsp;type)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTimestamp-long-">setTimestamp</a></span>(long&nbsp;timestamp)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setType-byte-">setType</a></span>(byte&nbsp;type)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setType-byte-">setType</a></span>(byte&nbsp;type)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setValue-byte:A-">setValue</a></span>(byte[]&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setType-org.apache.hadoop.hbase.Cell.Type-">setType</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase">Cell.Type</a>&nbsp;type)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setValue-byte:A-">setValue</a></span>(byte[]&nbsp;value)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setValue-byte:A-">setValue</a></span>(byte[]&nbsp;value)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setValue-byte:A-int-int-">setValue</a></span>(byte[]&nbsp;value,
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setValue-byte:A-int-int-">setValue</a></span>(byte[]&nbsp;value,
         int&nbsp;vOffset,
         int&nbsp;vLength)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setValue-byte:A-int-int-">setValue</a></span>(byte[]&nbsp;value,
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setValue-byte:A-int-int-">setValue</a></span>(byte[]&nbsp;value,
         int&nbsp;vOffset,
         int&nbsp;vLength)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/HBaseIOException.html b/devapidocs/org/apache/hadoop/hbase/class-use/HBaseIOException.html
index 9bbc75b..ad80f75 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/HBaseIOException.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/HBaseIOException.html
@@ -733,26 +733,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Used to assign a single region to a random server.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
@@ -761,8 +754,23 @@
  available/online servers available for assignment.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
+                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
+ simple round-robin assignment.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Round robin assignment: Segregate the regions into two types:
@@ -770,14 +778,6 @@
  1.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
-                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
- simple round-robin assignment.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#segregateRegionsAndAssignRegionsWithFavoredNodes-java.util.Collection-java.util.List-">segregateRegionsAndAssignRegionsWithFavoredNodes</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/HDFSBlocksDistribution.html b/devapidocs/org/apache/hadoop/hbase/class-use/HDFSBlocksDistribution.html
index 67c0b66..3819e7c 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/HDFSBlocksDistribution.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/HDFSBlocksDistribution.html
@@ -310,11 +310,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HDFSBlocksDistribution.html" title="class in org.apache.hadoop.hbase">HDFSBlocksDistribution</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#getHDFSBlockDistribution--">getHDFSBlockDistribution</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html#getHDFSBlockDistribution--">getHDFSBlockDistribution</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HDFSBlocksDistribution.html" title="class in org.apache.hadoop.hbase">HDFSBlocksDistribution</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html#getHDFSBlockDistribution--">getHDFSBlockDistribution</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#getHDFSBlockDistribution--">getHDFSBlockDistribution</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HDFSBlocksDistribution.html" title="class in org.apache.hadoop.hbase">HDFSBlocksDistribution</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/HRegionLocation.html b/devapidocs/org/apache/hadoop/hbase/class-use/HRegionLocation.html
index ccfbdf3..9063ab7 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/HRegionLocation.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/HRegionLocation.html
@@ -308,20 +308,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#loc">loc</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#loc">loc</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncBatchRpcRetryingCaller.RegionRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncBatchRpcRetryingCaller.RegionRequest.html#loc">loc</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClientScanner.OpenScannerResponse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.OpenScannerResponse.html#loc">loc</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#loc">loc</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -361,18 +361,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getRegionLocation-byte:A-int-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
-                 int&nbsp;replicaId,
-                 boolean&nbsp;reload)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getRegionLocation-byte:A-int-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
                  int&nbsp;replicaId,
                  boolean&nbsp;reload)</code>
 <div class="block">Finds the region with the given replica id on which the given row is being served.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getRegionLocation-byte:A-int-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
+                 int&nbsp;replicaId,
+                 boolean&nbsp;reload)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -384,24 +384,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getAllRegionLocations--">getAllRegionLocations</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#getAllRegionLocations--">getAllRegionLocations</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getAllRegionLocations--">getAllRegionLocations</a></span>()</code>
 <div class="block">Retrieves all of the regions associated with this table.</div>
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getAllRegionLocations--">getAllRegionLocations</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getAllRegionLocations--">getAllRegionLocations</a></span>()</code>
 <div class="block">Retrieves all of the regions associated with this table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#getAllRegionLocations--">getAllRegionLocations</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getKeysAndRegionsInRange-byte:A-byte:A-boolean-">getKeysAndRegionsInRange</a></span>(byte[]&nbsp;startKey,
@@ -420,17 +420,17 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getRegionLocation-byte:A-">getRegionLocation</a></span>(byte[]&nbsp;row)</code>
-<div class="block">Finds the region on which the given row is being served.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionLocation-byte:A-">getRegionLocation</a></span>(byte[]&nbsp;regionNameOrEncodedRegionName)</code>
 <div class="block">Get the region location for the passed region name.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getRegionLocation-byte:A-">getRegionLocation</a></span>(byte[]&nbsp;row)</code>
+<div class="block">Finds the region on which the given row is being served.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getRegionLocation-byte:A-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
@@ -447,18 +447,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#getRegionLocation-byte:A-int-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
-                 int&nbsp;replicaId,
-                 boolean&nbsp;reload)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getRegionLocation-byte:A-int-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
                  int&nbsp;replicaId,
                  boolean&nbsp;reload)</code>
 <div class="block">Finds the region with the given <code>replicaId</code> on which the given row is being served.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#getRegionLocation-byte:A-int-boolean-">getRegionLocation</a></span>(byte[]&nbsp;row,
+                 int&nbsp;replicaId,
+                 boolean&nbsp;reload)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionLocator.html#getRegionLocation-org.apache.hadoop.hbase.TableName-byte:A-int-org.apache.hadoop.hbase.client.RegionLocateType-boolean-long-">getRegionLocation</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -505,28 +505,28 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getRegionLocations-byte:A-boolean-">getRegionLocations</a></span>(byte[]&nbsp;row,
-                  boolean&nbsp;reload)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#getRegionLocations-byte:A-boolean-">getRegionLocations</a></span>(byte[]&nbsp;row,
-                  boolean&nbsp;reload)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getRegionLocations-byte:A-boolean-">getRegionLocations</a></span>(byte[]&nbsp;row,
                   boolean&nbsp;reload)</code>
 <div class="block">Find all the replicas for the region on which the given row is being served.</div>
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getRegionLocations-byte:A-boolean-">getRegionLocations</a></span>(byte[]&nbsp;row,
+                  boolean&nbsp;reload)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getRegionLocations-byte:A-boolean-">getRegionLocations</a></span>(byte[]&nbsp;row,
                   boolean&nbsp;reload)</code>
 <div class="block">Find all the replicas for the region on which the given row is being served.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#getRegionLocations-byte:A-boolean-">getRegionLocations</a></span>(byte[]&nbsp;row,
+                  boolean&nbsp;reload)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getTableHRegionLocations-org.apache.hadoop.hbase.TableName-">getTableHRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -703,16 +703,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#onError-org.apache.hadoop.hbase.HRegionLocation-">onError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc)</code>
-<div class="block">When a client runs into RegionNotServingException, it will call this method to
- update Selector's internal state.</div>
+<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSelector.html#onError-org.apache.hadoop.hbase.HRegionLocation-">onError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc)</code>
+<div class="block">This method is called when input location is stale, i.e, when clients run into
+ org.apache.hadoop.hbase.NotServingRegionException.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSelector.html#onError-org.apache.hadoop.hbase.HRegionLocation-">onError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc)</code>
-<div class="block">This method is called when input location is stale, i.e, when clients run into
- org.apache.hadoop.hbase.NotServingRegionException.</div>
+<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#onError-org.apache.hadoop.hbase.HRegionLocation-">onError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc)</code>
+<div class="block">When a client runs into RegionNotServingException, it will call this method to
+ update Selector's internal state.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -761,12 +761,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionLocator.html#updateCachedLocationOnError-org.apache.hadoop.hbase.HRegionLocation-java.lang.Throwable-">updateCachedLocationOnError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc,
+<td class="colLast"><span class="typeNameLabel">AsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncMetaRegionLocator.html#updateCachedLocationOnError-org.apache.hadoop.hbase.HRegionLocation-java.lang.Throwable-">updateCachedLocationOnError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;exception)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncMetaRegionLocator.html#updateCachedLocationOnError-org.apache.hadoop.hbase.HRegionLocation-java.lang.Throwable-">updateCachedLocationOnError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc,
+<td class="colLast"><span class="typeNameLabel">AsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionLocator.html#updateCachedLocationOnError-org.apache.hadoop.hbase.HRegionLocation-java.lang.Throwable-">updateCachedLocationOnError</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;loc,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;exception)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/KeepDeletedCells.html b/devapidocs/org/apache/hadoop/hbase/class-use/KeepDeletedCells.html
index 39326b5..c58dfe0 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/KeepDeletedCells.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/KeepDeletedCells.html
@@ -239,11 +239,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#keepDeletedCells">keepDeletedCells</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CustomizedScanInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CustomizedScanInfoBuilder.html#keepDeletedCells">keepDeletedCells</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CustomizedScanInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CustomizedScanInfoBuilder.html#keepDeletedCells">keepDeletedCells</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#keepDeletedCells">keepDeletedCells</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -256,15 +256,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#getKeepDeletedCells--">getKeepDeletedCells</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScanOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanOptions.html#getKeepDeletedCells--">getKeepDeletedCells</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanOptions.html#getKeepDeletedCells--">getKeepDeletedCells</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CustomizedScanInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CustomizedScanInfoBuilder.html#getKeepDeletedCells--">getKeepDeletedCells</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase">KeepDeletedCells</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CustomizedScanInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/CustomizedScanInfoBuilder.html#getKeepDeletedCells--">getKeepDeletedCells</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScanInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html#getKeepDeletedCells--">getKeepDeletedCells</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/KeyValue.html b/devapidocs/org/apache/hadoop/hbase/class-use/KeyValue.html
index a950dc1..0e5fe4a 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/KeyValue.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/KeyValue.html
@@ -642,15 +642,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>
 <div class="block">See <a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-"><code>StoreFileManager.getCandidateFilesForRowKeyBefore(KeyValue)</code></a>
  for details on this methods.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
@@ -661,6 +661,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+                                   <a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
+                                   <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                                    <a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
                                    <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>
@@ -669,12 +675,6 @@
  for details on this methods.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
-                                   <a href="../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
-                                   <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/NamespaceDescriptor.html b/devapidocs/org/apache/hadoop/hbase/class-use/NamespaceDescriptor.html
index 33f3f49..004c169 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/NamespaceDescriptor.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/NamespaceDescriptor.html
@@ -254,11 +254,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getNamespaceDescriptor-java.lang.String-">getNamespaceDescriptor</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getNamespaceDescriptor-java.lang.String-">getNamespaceDescriptor</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getNamespaceDescriptor-java.lang.String-">getNamespaceDescriptor</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getNamespaceDescriptor-java.lang.String-">getNamespaceDescriptor</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&gt;</code></td>
@@ -268,11 +268,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listNamespaceDescriptors--">listNamespaceDescriptors</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listNamespaceDescriptors--">listNamespaceDescriptors</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listNamespaceDescriptors--">listNamespaceDescriptors</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listNamespaceDescriptors--">listNamespaceDescriptors</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -290,18 +290,18 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">createNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#createNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">createNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>
 <div class="block">Create a new namespace.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">createNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">createNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">createNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -320,18 +320,18 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>
 <div class="block">Modify an existing namespace.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyNamespace-org.apache.hadoop.hbase.NamespaceDescriptor-">modifyNamespace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&nbsp;descriptor)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -468,21 +468,21 @@
 <td class="colLast"><span class="typeNameLabel">TableNamespaceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TableNamespaceManager.html#get-java.lang.String-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchema.html#getNamespace-java.lang.String-">getNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getNamespace-java.lang.String-">getNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Get a Namespace</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterSchemaServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchemaServiceImpl.html#getNamespace-java.lang.String-">getNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getNamespace-java.lang.String-">getNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<td class="colLast"><span class="typeNameLabel">ClusterSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchema.html#getNamespace-java.lang.String-">getNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Get a Namespace</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ClusterSchemaServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchemaServiceImpl.html#getNamespace-java.lang.String-">getNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -493,21 +493,21 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchema.html#getNamespaces--">getNamespaces</a></span>()</code>
+<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getNamespaces--">getNamespaces</a></span>()</code>
 <div class="block">Get all Namespaces</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterSchemaServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchemaServiceImpl.html#getNamespaces--">getNamespaces</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getNamespaces--">getNamespaces</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">ClusterSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchema.html#getNamespaces--">getNamespaces</a></span>()</code>
 <div class="block">Get all Namespaces</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ClusterSchemaServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterSchemaServiceImpl.html#getNamespaces--">getNamespaces</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">TableNamespaceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TableNamespaceManager.html#list--">list</a></span>()</code>&nbsp;</td>
@@ -645,11 +645,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#nsDescriptor">nsDescriptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CreateNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/CreateNamespaceProcedure.html#nsDescriptor">nsDescriptor</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CreateNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/CreateNamespaceProcedure.html#nsDescriptor">nsDescriptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#nsDescriptor">nsDescriptor</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/NamespaceDescriptor.html" title="class in org.apache.hadoop.hbase">NamespaceDescriptor</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/RegionLocations.html b/devapidocs/org/apache/hadoop/hbase/class-use/RegionLocations.html
index e153043..4348abc 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/RegionLocations.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/RegionLocations.html
@@ -326,7 +326,9 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ZKConnectionRegistry.html#getMetaRegionLocations--">getMetaRegionLocations</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionRegistry.html#getMetaRegionLocations--">getMetaRegionLocations</a></span>()</code>
+<div class="block">Get the location of meta region(s).</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
@@ -334,9 +336,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionRegistry.html#getMetaRegionLocations--">getMetaRegionLocations</a></span>()</code>
-<div class="block">Get the location of meta region(s).</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ZKConnectionRegistry.html#getMetaRegionLocations--">getMetaRegionLocations</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
@@ -347,18 +347,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  byte[]&nbsp;row,
-                  boolean&nbsp;reload)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   byte[]&nbsp;row,
                   boolean&nbsp;reload)</code>
 <div class="block">Return all the replicas for a region.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  byte[]&nbsp;row,
+                  boolean&nbsp;reload)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-int-org.apache.hadoop.hbase.client.RegionLocateType-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/RegionMetrics.html b/devapidocs/org/apache/hadoop/hbase/class-use/RegionMetrics.html
index 1ab85fe..72d4546 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/RegionMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/RegionMetrics.html
@@ -169,11 +169,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getRegionMetrics--">getRegionMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getRegionMetrics--">getRegionMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getRegionMetrics--">getRegionMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getRegionMetrics--">getRegionMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
@@ -258,22 +258,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
@@ -283,25 +283,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver for a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/Server.html b/devapidocs/org/apache/hadoop/hbase/class-use/Server.html
index 8e09c17..b44c924 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/Server.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/Server.html
@@ -838,13 +838,13 @@
 <td class="colLast"><span class="typeNameLabel">ReplicationSourceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html#server">server</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#server">server</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#server">server</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#server">server</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -884,19 +884,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-    org.apache.hadoop.fs.FileSystem&nbsp;fs,
-    <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
-    <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
-    <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
-    <a href="../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
-    <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
-    <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
     org.apache.hadoop.fs.FileSystem&nbsp;fs,
     <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
@@ -910,6 +897,19 @@
 <div class="block">Instantiation method used by region servers</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+    org.apache.hadoop.fs.FileSystem&nbsp;fs,
+    <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
+    <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
+    <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
+    <a href="../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
+    <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
+    <a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#initialize-org.apache.hadoop.hbase.Server-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.wal.WALFactory-">initialize</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/ServerName.html b/devapidocs/org/apache/hadoop/hbase/class-use/ServerName.html
index 219178d..ff51019 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/ServerName.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/ServerName.html
@@ -256,15 +256,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HRegionLocation.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -376,7 +376,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -384,7 +384,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -1191,19 +1191,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminRequestRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdminRequestRetryingCaller.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncServerRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.AdminRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.AdminRequestCallerBuilder.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminRequestRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdminRequestRetryingCaller.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.AdminRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.AdminRequestCallerBuilder.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncServerRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1283,22 +1283,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Clear dead region servers from master.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
@@ -1308,30 +1308,32 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compactionSwitch-boolean-java.util.List-">compactionSwitch</a></span>(boolean&nbsp;switchState,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#compactionSwitch-boolean-java.util.List-">compactionSwitch</a></span>(boolean&nbsp;switchState,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)</code>
 <div class="block">Turn the compaction on or off.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#compactionSwitch-boolean-java.util.List-">compactionSwitch</a></span>(boolean&nbsp;switchState,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compactionSwitch-boolean-java.util.List-">compactionSwitch</a></span>(boolean&nbsp;switchState,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compactionSwitch-boolean-java.util.List-">compactionSwitch</a></span>(boolean&nbsp;switchState,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;serverNamesList)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ZKConnectionRegistry.html#getActiveMaster--">getActiveMaster</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionRegistry.html#getActiveMaster--">getActiveMaster</a></span>()</code>
+<div class="block">Get the address of active HMaster.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
@@ -1339,9 +1341,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionRegistry.html#getActiveMaster--">getActiveMaster</a></span>()</code>
-<div class="block">Get the address of active HMaster.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ZKConnectionRegistry.html#getActiveMaster--">getActiveMaster</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
@@ -1413,22 +1413,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>
 <div class="block">List region servers marked as decommissioned, which can not be assigned regions.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listDecommissionedRegionServers--">listDecommissionedRegionServers</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
@@ -1468,11 +1468,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionLocator.html#clearCache-org.apache.hadoop.hbase.ServerName-">clearCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncMetaRegionLocator.html#clearCache-org.apache.hadoop.hbase.ServerName-">clearCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncMetaRegionLocator.html#clearCache-org.apache.hadoop.hbase.ServerName-">clearCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionLocator.html#clearCache-org.apache.hadoop.hbase.ServerName-">clearCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
@@ -1486,25 +1486,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearCompactionQueues-org.apache.hadoop.hbase.ServerName-java.util.Set-">clearCompactionQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#clearCompactionQueues-org.apache.hadoop.hbase.ServerName-java.util.Set-">clearCompactionQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)</code>
 <div class="block">Clear compacting queues on a regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#clearCompactionQueues-org.apache.hadoop.hbase.ServerName-java.util.Set-">clearCompactionQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearCompactionQueues-org.apache.hadoop.hbase.ServerName-java.util.Set-">clearCompactionQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearCompactionQueues-org.apache.hadoop.hbase.ServerName-java.util.Set-">clearCompactionQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearCompactionQueues-org.apache.hadoop.hbase.ServerName-java.util.Set-">clearCompactionQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;queues)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1527,22 +1527,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compactRegionServer-org.apache.hadoop.hbase.ServerName-">compactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#compactRegionServer-org.apache.hadoop.hbase.ServerName-">compactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Compact all regions on the region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#compactRegionServer-org.apache.hadoop.hbase.ServerName-">compactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compactRegionServer-org.apache.hadoop.hbase.ServerName-">compactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compactRegionServer-org.apache.hadoop.hbase.ServerName-">compactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compactRegionServer-org.apache.hadoop.hbase.ServerName-">compactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -1559,13 +1559,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable,
                   <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable,
                   <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
@@ -1596,16 +1596,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SimpleRequestController.html#decTaskCounters-java.util.Collection-org.apache.hadoop.hbase.ServerName-">decTaskCounters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;byte[]&gt;&nbsp;regions,
-               <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RequestController.html#decTaskCounters-java.util.Collection-org.apache.hadoop.hbase.ServerName-">decTaskCounters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;byte[]&gt;&nbsp;regions,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
 <div class="block">Decrement the counter if a task is accomplished.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SimpleRequestController.html#decTaskCounters-java.util.Collection-org.apache.hadoop.hbase.ServerName-">decTaskCounters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;byte[]&gt;&nbsp;regions,
+               <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncBatchRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncBatchRpcRetryingCaller.html#failAll-java.util.stream.Stream-int-java.lang.Throwable-org.apache.hadoop.hbase.ServerName-">failAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html?is-external=true" title="class or interface in java.util.stream">Stream</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/Action.html" title="class in org.apache.hadoop.hbase.client">Action</a>&gt;&nbsp;actions,
@@ -1627,22 +1627,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#flushRegionServer-org.apache.hadoop.hbase.ServerName-">flushRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#flushRegionServer-org.apache.hadoop.hbase.ServerName-">flushRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Flush all regions on the region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#flushRegionServer-org.apache.hadoop.hbase.ServerName-">flushRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#flushRegionServer-org.apache.hadoop.hbase.ServerName-">flushRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#flushRegionServer-org.apache.hadoop.hbase.ServerName-">flushRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#flushRegionServer-org.apache.hadoop.hbase.ServerName-">flushRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface</code></td>
@@ -1672,13 +1672,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Hbck.html" title="interface in org.apache.hadoop.hbase.client">Hbck</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>
-<div class="block">Retrieve an Hbck implementation to fix an HBase cluster.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/Hbck.html" title="interface in org.apache.hadoop.hbase.client">Hbck</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>
+<div class="block">Retrieve an Hbck implementation to fix an HBase cluster.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/client/Hbck.html" title="interface in org.apache.hadoop.hbase.client">Hbck</a></code></td>
@@ -1696,22 +1696,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
@@ -1721,25 +1721,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver for a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -1749,33 +1749,33 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get all the online regions on a region server.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionServerAdmin.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionServerAdmin</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionServerAdmin-org.apache.hadoop.hbase.ServerName-">getRegionServerAdmin</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionServerAdmin.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionServerAdmin</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#getRegionServerAdmin-org.apache.hadoop.hbase.ServerName-">getRegionServerAdmin</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get the admin service for the given region server.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionServerAdmin.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionServerAdmin</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionServerAdmin-org.apache.hadoop.hbase.ServerName-">getRegionServerAdmin</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
@@ -1783,22 +1783,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Fetches the observed <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas"><code>SpaceQuotaSnapshotView</code></a>s observed by a RegionServer.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface</code></td>
@@ -1824,16 +1824,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SimpleRequestController.html#incTaskCounters-java.util.Collection-org.apache.hadoop.hbase.ServerName-">incTaskCounters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;byte[]&gt;&nbsp;regions,
-               <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RequestController.html#incTaskCounters-java.util.Collection-org.apache.hadoop.hbase.ServerName-">incTaskCounters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;byte[]&gt;&nbsp;regions,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
 <div class="block">Increment the counter if we build a valid task.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SimpleRequestController.html#incTaskCounters-java.util.Collection-org.apache.hadoop.hbase.ServerName-">incTaskCounters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;byte[]&gt;&nbsp;regions,
+               <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterStatusListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ClusterStatusListener.html#isDeadServer-org.apache.hadoop.hbase.ServerName-">isDeadServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
@@ -1854,22 +1854,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Major compact all regions on the region server.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompactRegionServer-org.apache.hadoop.hbase.ServerName-">majorCompactRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -1879,25 +1879,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#move-byte:A-org.apache.hadoop.hbase.ServerName-">move</a></span>(byte[]&nbsp;regionName,
+    <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#move-byte:A-org.apache.hadoop.hbase.ServerName-">move</a></span>(byte[]&nbsp;encodedRegionName,
     <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>
 <div class="block">Move the region <code>encodedRegionName</code> to <code>destServerName</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#move-byte:A-org.apache.hadoop.hbase.ServerName-">move</a></span>(byte[]&nbsp;encodedRegionName,
     <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#move-byte:A-org.apache.hadoop.hbase.ServerName-">move</a></span>(byte[]&nbsp;regionName,
-    <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#move-byte:A-org.apache.hadoop.hbase.ServerName-">move</a></span>(byte[]&nbsp;regionName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#move-byte:A-org.apache.hadoop.hbase.ServerName-">move</a></span>(byte[]&nbsp;regionName,
     <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -1939,25 +1939,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
+                        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</code>
 <div class="block">Remove decommission marker from a region server to allow regions assignments.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
-                        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#recommissionRegionServer-org.apache.hadoop.hbase.ServerName-java.util.List-">recommissionRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1967,22 +1967,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Roll the log writer.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#rollWALWriter-org.apache.hadoop.hbase.ServerName-">rollWALWriter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
@@ -2006,11 +2006,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#stopRegionServer-org.apache.hadoop.hbase.ServerName-">stopRegionServer</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
@@ -2024,31 +2024,29 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#updateConfiguration-org.apache.hadoop.hbase.ServerName-">updateConfiguration</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#updateConfiguration-org.apache.hadoop.hbase.ServerName-">updateConfiguration</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server)</code>
 <div class="block">Update the configuration and trigger an online config change
  on the regionserver.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#updateConfiguration-org.apache.hadoop.hbase.ServerName-">updateConfiguration</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#updateConfiguration-org.apache.hadoop.hbase.ServerName-">updateConfiguration</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#updateConfiguration-org.apache.hadoop.hbase.ServerName-">updateConfiguration</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StatisticTrackable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/StatisticTrackable.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
-                 byte[]&nbsp;region,
-                 <a href="../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>
-<div class="block">Update stats per region.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">MetricsConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MetricsConnection.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                 byte[]&nbsp;regionName,
+                 <a href="../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -2058,9 +2056,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MetricsConnection.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                 byte[]&nbsp;regionName,
-                 <a href="../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StatisticTrackable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/StatisticTrackable.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
+                 byte[]&nbsp;region,
+                 <a href="../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>
+<div class="block">Update stats per region.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -2100,22 +2100,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Clear dead region servers from master.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearDeadServers-java.util.List-">clearDeadServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
@@ -2125,23 +2125,23 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearSlowLogResponses-java.util.Set-">clearSlowLogResponses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#clearSlowLogResponses-java.util.Set-">clearSlowLogResponses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>
 <div class="block">Clears online slow/large RPC logs from the provided list of
  RegionServers</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#clearSlowLogResponses-java.util.Set-">clearSlowLogResponses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearSlowLogResponses-java.util.Set-">clearSlowLogResponses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearSlowLogResponses-java.util.Set-">clearSlowLogResponses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearSlowLogResponses-java.util.Set-">clearSlowLogResponses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -2152,6 +2152,11 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#decommissionRegionServers-java.util.List-boolean-">decommissionRegionServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
+                         boolean&nbsp;offload)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#decommissionRegionServers-java.util.List-boolean-">decommissionRegionServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
                          boolean&nbsp;offload)</code>
@@ -2159,19 +2164,14 @@
  assigned to them.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#decommissionRegionServers-java.util.List-boolean-">decommissionRegionServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
                          boolean&nbsp;offload)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#decommissionRegionServers-java.util.List-boolean-">decommissionRegionServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
-                         boolean&nbsp;offload)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#decommissionRegionServers-java.util.List-boolean-">decommissionRegionServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#decommissionRegionServers-java.util.List-boolean-">decommissionRegionServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
                          boolean&nbsp;offload)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2185,6 +2185,14 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
+             <a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
+             int&nbsp;limit,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
@@ -2194,7 +2202,7 @@
 <div class="block">Retrieve recent online records from HMaster / RegionServers.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
@@ -2202,17 +2210,9 @@
              int&nbsp;limit,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
-             <a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
-             int&nbsp;limit,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
              <a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
              int&nbsp;limit,
@@ -2264,11 +2264,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#scheduleServerCrashProcedures-java.util.List-">scheduleServerCrashProcedures</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Hbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Hbck.html#scheduleServerCrashProcedures-java.util.List-">scheduleServerCrashProcedures</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Hbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Hbck.html#scheduleServerCrashProcedures-java.util.List-">scheduleServerCrashProcedures</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#scheduleServerCrashProcedures-java.util.List-">scheduleServerCrashProcedures</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
@@ -2344,19 +2344,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicyFactory.NoBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicyFactory.NoBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">ExponentialClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/backoff/ExponentialClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               byte[]&nbsp;region,
               <a href="../../../../../org/apache/hadoop/hbase/client/backoff/ServerStatistics.html" title="class in org.apache.hadoop.hbase.client.backoff">ServerStatistics</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ExponentialClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/backoff/ExponentialClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               byte[]&nbsp;region,
               <a href="../../../../../org/apache/hadoop/hbase/client/backoff/ServerStatistics.html" title="class in org.apache.hadoop.hbase.client.backoff">ServerStatistics</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicyFactory.NoBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicyFactory.NoBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               byte[]&nbsp;region,
               <a href="../../../../../org/apache/hadoop/hbase/client/backoff/ServerStatistics.html" title="class in org.apache.hadoop.hbase.client.backoff">ServerStatistics</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
@@ -2455,11 +2455,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2777,17 +2777,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredNodeLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/favored/FavoredNodeLoadBalancer.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredNodesPlan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPlan.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>
 <div class="block">Returns the list of favored region server for this region based on the plan</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredNodesManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredNodeLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/favored/FavoredNodeLoadBalancer.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FavoredNodesManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
@@ -3170,14 +3170,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#cancelConnections-org.apache.hadoop.hbase.ServerName-">cancelConnections</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
-<div class="block">Interrupt the connections to the given ip:port server.</div>
+<td class="colLast"><span class="typeNameLabel">RpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html#cancelConnections-org.apache.hadoop.hbase.ServerName-">cancelConnections</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
+<div class="block">Interrupt the connections to the given server.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html#cancelConnections-org.apache.hadoop.hbase.ServerName-">cancelConnections</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
-<div class="block">Interrupt the connections to the given server.</div>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#cancelConnections-org.apache.hadoop.hbase.ServerName-">cancelConnections</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>
+<div class="block">Interrupt the connections to the given ip:port server.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -3186,25 +3186,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.BlockingRpcChannel</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createBlockingRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createBlockingRpcChannel</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
-                        <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;ticket,
-                        int&nbsp;rpcTimeout)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.BlockingRpcChannel</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html#createBlockingRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createBlockingRpcChannel</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
                         <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
                         int&nbsp;rpcTimeout)</code>
 <div class="block">Creates a "channel" that can be used by a blocking protobuf service.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createRpcChannel</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
-                <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
-                int&nbsp;rpcTimeout)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.BlockingRpcChannel</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createBlockingRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createBlockingRpcChannel</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
+                        <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;ticket,
+                        int&nbsp;rpcTimeout)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html#createRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createRpcChannel</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
                 <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
@@ -3212,6 +3206,12 @@
 <div class="block">Creates a "channel" that can be used by a protobuf service.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createRpcChannel</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
+                <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+                int&nbsp;rpcTimeout)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -3516,13 +3516,13 @@
 <td class="colLast"><span class="typeNameLabel">ActiveMasterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ActiveMasterManager.html#getActiveMasterServerName--">getActiveMasterServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ActiveMasterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ActiveMasterManager.html#getBackupMasters--">getBackupMasters</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getBackupMasters--">getBackupMasters</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ActiveMasterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ActiveMasterManager.html#getBackupMasters--">getBackupMasters</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterStatusPublisher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ClusterStatusPublisher.html#getDeadServers-long-">getDeadServers</a></span>(long&nbsp;since)</code>
@@ -3811,11 +3811,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getRegionServerVersion-org.apache.hadoop.hbase.ServerName-">getRegionServerVersion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getRegionServerVersion-org.apache.hadoop.hbase.ServerName-">getRegionServerVersion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getRegionServerVersion-org.apache.hadoop.hbase.ServerName-">getRegionServerVersion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getRegionServerVersion-org.apache.hadoop.hbase.ServerName-">getRegionServerVersion</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;&gt;&gt;</code></td>
@@ -4024,15 +4024,15 @@
 <td class="colLast"><span class="typeNameLabel">ServerManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ServerManager.html#removeServerFromDrainList-org.apache.hadoop.hbase.ServerName-">removeServerFromDrainList</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALManager.SplitWorkerAssigner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/SplitWALManager.SplitWorkerAssigner.html#serverAdded-org.apache.hadoop.hbase.ServerName-">serverAdded</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;worker)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ServerListener.html#serverAdded-org.apache.hadoop.hbase.ServerName-">serverAdded</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">The server has joined the cluster.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SplitWALManager.SplitWorkerAssigner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/SplitWALManager.SplitWorkerAssigner.html#serverAdded-org.apache.hadoop.hbase.ServerName-">serverAdded</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;worker)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/ServerListener.html#serverRemoved-org.apache.hadoop.hbase.ServerName-">serverRemoved</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
@@ -4654,21 +4654,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -4970,13 +4970,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#clusterState">clusterState</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterLoadState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/ClusterLoadState.html#clusterState">clusterState</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#clusterState">clusterState</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HeterogeneousRegionCountCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html#limitPerRS">limitPerRS</a></span></code>
@@ -5013,16 +5013,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
+<div class="block">Used to assign a single region to a random server.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Used to assign a single region to a random server.</div>
+<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -5123,13 +5123,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
@@ -5137,6 +5130,13 @@
  available/online servers available for assignment.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
@@ -5144,6 +5144,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
+                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
+ simple round-robin assignment.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Round robin assignment: Segregate the regions into two types:
@@ -5151,14 +5159,6 @@
  1.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
-                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
- simple round-robin assignment.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
@@ -5314,11 +5314,10 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
- implementation.</div>
+<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -5331,16 +5330,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
+<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
+ implementation.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
+<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -5425,14 +5425,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>
 <div class="block">Called before actually executing balanceCluster.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster,
@@ -5443,16 +5443,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
+<div class="block">Used to assign a single region to a random server.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Used to assign a single region to a random server.</div>
+<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -5462,34 +5462,34 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+<div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
+ assignment information from META, but adjusting for the specified list of
+ available/online servers available for assignment.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+<div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
+ assignment information from META, but adjusting for the specified list of
+ available/online servers available for assignment.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
- assignment information from META, but adjusting for the specified list of
- available/online servers available for assignment.</div>
+<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
- assignment information from META, but adjusting for the specified list of
- available/online servers available for assignment.</div>
+<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -5522,6 +5522,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
+                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
+ simple round-robin assignment.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Round robin assignment: Segregate the regions into two types:
@@ -5529,14 +5537,6 @@
  1.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
-                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
- simple round-robin assignment.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
@@ -5723,13 +5723,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#serverName">serverName</a></span></code>
-<div class="block">Name of the crashed server to process.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#serverName">serverName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#serverName">serverName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#serverName">serverName</a></span></code>
+<div class="block">Name of the crashed server to process.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -5783,15 +5783,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -5799,7 +5799,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -5996,11 +5996,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#crashedServer">crashedServer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#crashedServer">crashedServer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#crashedServer">crashedServer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#crashedServer">crashedServer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
@@ -6037,11 +6037,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6085,7 +6085,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;remote)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -6095,7 +6095,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;remote)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -6215,15 +6215,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironment.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.MovedRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironment.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.MovedRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html#getServerName--">getServerName</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6428,13 +6428,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>
-<div class="block">Get a list of all region servers that have outstanding replication queues.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>
+<div class="block">Get a list of all region servers that have outstanding replication queues.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
@@ -6455,42 +6455,42 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">addWAL</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#addWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">addWAL</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
 <div class="block">Add a new WAL file to the given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">addWAL</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+          <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
           <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>
 <div class="block">Change ownership for the queue identified by queueId and belongs to a dead region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-          <a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllQueues-org.apache.hadoop.hbase.ServerName-">getAllQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getAllQueues-org.apache.hadoop.hbase.ServerName-">getAllQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get a list of all queues for the specified region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllQueues-org.apache.hadoop.hbase.ServerName-">getAllQueues</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllQueues0-org.apache.hadoop.hbase.ServerName-">getAllQueues0</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
@@ -6508,40 +6508,40 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getRsNode-org.apache.hadoop.hbase.ServerName-">getRsNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getRsNode-org.apache.hadoop.hbase.ServerName-">getRsNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get full znode name for given region server</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getRsNode-org.apache.hadoop.hbase.ServerName-">getRsNode</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">getWALPosition</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">getWALPosition</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
 <div class="block">Get the current position for a specific WAL in a given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">getWALPosition</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALsInQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getWALsInQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>
 <div class="block">Get a list of all WALs in the given queue on the given region server.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALsInQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALsInQueue0-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue0</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
@@ -6555,42 +6555,50 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">removeQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">removeQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>
 <div class="block">Remove a replication queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">removeQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeReplicatorIfQueueIsEmpty-org.apache.hadoop.hbase.ServerName-">removeReplicatorIfQueueIsEmpty</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeReplicatorIfQueueIsEmpty-org.apache.hadoop.hbase.ServerName-">removeReplicatorIfQueueIsEmpty</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Remove the record of region server if the queue is empty.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeReplicatorIfQueueIsEmpty-org.apache.hadoop.hbase.ServerName-">removeReplicatorIfQueueIsEmpty</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">removeWAL</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">removeWAL</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
 <div class="block">Remove an WAL file from the given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">removeWAL</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#setWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-long-java.util.Map-">setWALPosition</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName,
+              long&nbsp;position,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#setWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-long-java.util.Map-">setWALPosition</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName,
@@ -6599,14 +6607,6 @@
 <div class="block">Set the current position for a specific WAL in a given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#setWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-long-java.util.Map-">setWALPosition</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName,
-              long&nbsp;position,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -6678,11 +6678,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#getServerWALsBelongTo--">getServerWALsBelongTo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#getServerWALsBelongTo--">getServerWALsBelongTo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#getServerWALsBelongTo--">getServerWALsBelongTo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#getServerWALsBelongTo--">getServerWALsBelongTo</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6729,12 +6729,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queue)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queue)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -7393,13 +7393,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html?is-external=true" title="class or interface in java.util">TreeSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HbckTableInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html#deployedOn">deployedOn</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HbckRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html#deployedOn">deployedOn</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html?is-external=true" title="class or interface in java.util">TreeSet</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HbckTableInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html#deployedOn">deployedOn</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/Size.html b/devapidocs/org/apache/hadoop/hbase/class-use/Size.html
index 5fc9278..bd9b79e 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/Size.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/Size.html
@@ -201,11 +201,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Size.html" title="class in org.apache.hadoop.hbase">Size</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getMaxHeapSize--">getMaxHeapSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getMaxHeapSize--">getMaxHeapSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Size.html" title="class in org.apache.hadoop.hbase">Size</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getMaxHeapSize--">getMaxHeapSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getMaxHeapSize--">getMaxHeapSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Size.html" title="class in org.apache.hadoop.hbase">Size</a></code></td>
@@ -261,11 +261,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Size.html" title="class in org.apache.hadoop.hbase">Size</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getUsedHeapSize--">getUsedHeapSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getUsedHeapSize--">getUsedHeapSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Size.html" title="class in org.apache.hadoop.hbase">Size</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getUsedHeapSize--">getUsedHeapSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getUsedHeapSize--">getUsedHeapSize</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/TableDescriptors.html b/devapidocs/org/apache/hadoop/hbase/class-use/TableDescriptors.html
index e6982a3..1378369 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/TableDescriptors.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/TableDescriptors.html
@@ -155,11 +155,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableDescriptors.html" title="interface in org.apache.hadoop.hbase">TableDescriptors</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getTableDescriptors--">getTableDescriptors</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getTableDescriptors--">getTableDescriptors</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableDescriptors.html" title="interface in org.apache.hadoop.hbase">TableDescriptors</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getTableDescriptors--">getTableDescriptors</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getTableDescriptors--">getTableDescriptors</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/TableName.html b/devapidocs/org/apache/hadoop/hbase/class-use/TableName.html
index a5ff33d..d03d6ee 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/TableName.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/TableName.html
@@ -497,20 +497,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-       boolean&nbsp;major)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Call flushCache on all regions of the specified table.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        boolean&nbsp;major)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Compact all of a table's reagion in the mini hbase cluster</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#compact-org.apache.hadoop.hbase.TableName-boolean-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+       boolean&nbsp;major)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Call flushCache on all regions of the specified table.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">TableName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TableName.html#compareTo-org.apache.hadoop.hbase.TableName-">compareTo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -943,18 +943,18 @@
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Returns all regions of the specified table</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/MiniHBaseCluster.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html#getRSForFirstRegionInTable-org.apache.hadoop.hbase.TableName-">getRSForFirstRegionInTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -1617,13 +1617,13 @@
 <td class="colLast"><span class="typeNameLabel">BackupManifest.BackupImage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/impl/BackupManifest.BackupImage.html#incrTimeRanges">incrTimeRanges</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableBackupClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/impl/TableBackupClient.html#tableList">tableList</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BackupManifest.BackupImage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/impl/BackupManifest.BackupImage.html#tableList">tableList</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableBackupClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/impl/TableBackupClient.html#tableList">tableList</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -2463,69 +2463,69 @@
 <td class="colLast"><span class="typeNameLabel">AsyncRegionReplicaReplayRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRegionReplicaReplayRetryingCaller.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncSingleRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncSingleRequestRpcRetryingCaller.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorRpcChannelImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionCoprocessorRpcChannelImpl.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTableBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableBuilderBase.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableState.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.BatchCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.BatchCallerBuilder.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableBuilderBase.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncBatchRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncBatchRpcRetryingCaller.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorParams.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MutableRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MutableRegionInfo.html#tableName">tableName</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.TableProcedureBiConsumer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.TableProcedureBiConsumer.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncBatchRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncBatchRpcRetryingCaller.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncSingleRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncSingleRequestRpcRetryingCaller.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableState.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorRpcChannelImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionCoprocessorRpcChannelImpl.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorParams.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MutableRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MutableRegionInfo.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.BatchCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.BatchCallerBuilder.html#tableName">tableName</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing fields, and an explanation">
@@ -2566,15 +2566,49 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of this table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Table.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of this table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedMutatorOverAsyncBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorOverAsyncBufferedMutator.html#getName--">getName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getName--">getName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutator.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of the table that this BufferedMutator writes to.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of the table whose region we want to locate.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#getName--">getName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncBufferedMutatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutatorImpl.html#getName--">getName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getName--">getName</a></span>()</code>
+<div class="block">Gets the fully qualified table name instance of this table.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionLocatorOverAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocatorOverAsyncTableRegionLocator.html#getName--">getName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#getName--">getName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
@@ -2582,39 +2616,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of this table.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getName--">getName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of this table.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedMutatorOverAsyncBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorOverAsyncBufferedMutator.html#getName--">getName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Table.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of this table.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#getName--">getName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutator.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of the table that this BufferedMutator writes to.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">AsyncBufferedMutatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutatorImpl.html#getName--">getName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
@@ -2625,9 +2627,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html#getName--">getName</a></span>()</code>
-<div class="block">Gets the fully qualified table name instance of the table whose region we want to locate.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getName--">getName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
@@ -2653,23 +2653,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableState.html#getTableName--">getTableName</a></span>()</code>
-<div class="block">Table name for state</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getTableName--">getTableName</a></span>()</code>
 <div class="block">Get the name of the table</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableState.html#getTableName--">getTableName</a></span>()</code>
+<div class="block">Table name for state</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorParams.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotDescription.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotDescription.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/BufferedMutatorParams.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>[]</code></td>
@@ -2729,22 +2729,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>
 <div class="block">Get the namespaces and tables which have this RegionServer group in descriptor.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;? extends <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;&gt;</code></td>
@@ -2753,22 +2753,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Fetches the observed <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas"><code>SpaceQuotaSnapshotView</code></a>s observed by a RegionServer.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,? extends <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
@@ -2777,22 +2777,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getSpaceQuotaTableSizes--">getSpaceQuotaTableSizes</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getSpaceQuotaTableSizes--">getSpaceQuotaTableSizes</a></span>()</code>
 <div class="block">Fetches the table sizes on the filesystem as tracked by the HBase Master.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getSpaceQuotaTableSizes--">getSpaceQuotaTableSizes</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getSpaceQuotaTableSizes--">getSpaceQuotaTableSizes</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getSpaceQuotaTableSizes--">getSpaceQuotaTableSizes</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getSpaceQuotaTableSizes--">getSpaceQuotaTableSizes</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
@@ -2824,11 +2824,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableNames-boolean-">listTableNames</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableNames-boolean-">listTableNames</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableNames-boolean-">listTableNames</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableNames-boolean-">listTableNames</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
@@ -2839,12 +2839,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableNames-java.util.regex.Pattern-boolean-">listTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableNames-java.util.regex.Pattern-boolean-">listTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
               boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableNames-java.util.regex.Pattern-boolean-">listTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableNames-java.util.regex.Pattern-boolean-">listTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
               boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2855,11 +2855,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
@@ -2868,22 +2868,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTablesInRSGroup-java.lang.String-">listTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTablesInRSGroup-java.lang.String-">listTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>
 <div class="block">Get all tables in this RegionServer group.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listTablesInRSGroup-java.lang.String-">listTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTablesInRSGroup-java.lang.String-">listTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTablesInRSGroup-java.lang.String-">listTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTablesInRSGroup-java.lang.String-">listTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2902,20 +2902,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+               <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Add a column family to an existing table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-               <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2932,18 +2932,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#bulkLoad-org.apache.hadoop.hbase.TableName-java.util.List-byte:A-boolean-org.apache.hadoop.security.token.Token-java.lang.String-boolean-java.util.List-boolean-">bulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;familyPaths,
-        byte[]&nbsp;row,
-        boolean&nbsp;assignSeqNum,
-        org.apache.hadoop.security.token.Token&lt;?&gt;&nbsp;userToken,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken,
-        boolean&nbsp;copyFiles,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;clusterIds,
-        boolean&nbsp;replicate)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#bulkLoad-org.apache.hadoop.hbase.TableName-java.util.List-byte:A-boolean-org.apache.hadoop.security.token.Token-java.lang.String-boolean-java.util.List-boolean-">bulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;familyPaths,
         byte[]&nbsp;row,
@@ -2957,6 +2945,18 @@
  where the given bulk load has already been processed (important for bulk loading replication).</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#bulkLoad-org.apache.hadoop.hbase.TableName-java.util.List-byte:A-boolean-org.apache.hadoop.security.token.Token-java.lang.String-boolean-java.util.List-boolean-">bulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;familyPaths,
+        byte[]&nbsp;row,
+        boolean&nbsp;assignSeqNum,
+        org.apache.hadoop.security.token.Token&lt;?&gt;&nbsp;userToken,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken,
+        boolean&nbsp;copyFiles,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;clusterIds,
+        boolean&nbsp;replicate)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static int</code></td>
 <td class="colLast"><span class="typeNameLabel">ConnectionUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionUtils.html#calcPriority-int-org.apache.hadoop.hbase.TableName-">calcPriority</a></span>(int&nbsp;priority,
@@ -2983,16 +2983,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#cleanupBulkLoad-org.apache.hadoop.hbase.TableName-java.lang.String-">cleanupBulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#cleanupBulkLoad-org.apache.hadoop.hbase.TableName-java.lang.String-">cleanupBulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken)</code>
 <div class="block">Clean up after finishing bulk load, no matter success or not.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#cleanupBulkLoad-org.apache.hadoop.hbase.TableName-java.lang.String-">cleanupBulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -3000,22 +3000,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Clear all the blocks corresponding to this table from BlockCache.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/CacheEvictionStats.html" title="class in org.apache.hadoop.hbase">CacheEvictionStats</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#clearBlockCache-org.apache.hadoop.hbase.TableName-">clearBlockCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
@@ -3048,6 +3048,12 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#cloneSnapshot-java.lang.String-org.apache.hadoop.hbase.TableName-boolean-">cloneSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+             <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+             boolean&nbsp;restoreAcl)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#cloneSnapshot-java.lang.String-org.apache.hadoop.hbase.TableName-boolean-">cloneSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
              <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -3055,15 +3061,9 @@
 <div class="block">Create a new table by cloning the snapshot content.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#cloneSnapshot-java.lang.String-org.apache.hadoop.hbase.TableName-boolean-">cloneSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
-             <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-             boolean&nbsp;restoreAcl)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#cloneSnapshot-java.lang.String-org.apache.hadoop.hbase.TableName-boolean-">cloneSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#cloneSnapshot-java.lang.String-org.apache.hadoop.hbase.TableName-boolean-">cloneSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
              <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;restoreAcl)</code>&nbsp;</td>
 </tr>
@@ -3098,6 +3098,12 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#cloneTableSchema-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.TableName-boolean-">cloneTableSchema</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
+                boolean&nbsp;preserveSplits)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#cloneTableSchema-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.TableName-boolean-">cloneTableSchema</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
@@ -3105,21 +3111,15 @@
 <div class="block">Create a new table by cloning the existent table schema.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#cloneTableSchema-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.TableName-boolean-">cloneTableSchema</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
                 boolean&nbsp;preserveSplits)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#cloneTableSchema-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.TableName-boolean-">cloneTableSchema</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
-                boolean&nbsp;preserveSplits)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#cloneTableSchema-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.TableName-boolean-">cloneTableSchema</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#cloneTableSchema-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.TableName-boolean-">cloneTableSchema</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;newTableName,
                 boolean&nbsp;preserveSplits)</code>&nbsp;</td>
 </tr>
@@ -3176,6 +3176,12 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+       byte[]&nbsp;columnFamily,
+       <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        byte[]&nbsp;columnFamily,
@@ -3183,21 +3189,15 @@
 <div class="block">Compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        byte[]&nbsp;columnFamily,
        <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-       byte[]&nbsp;columnFamily,
-       <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        byte[]&nbsp;columnFamily,
        <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
@@ -3209,25 +3209,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+       <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Compact a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-       <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -3342,20 +3342,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#deleteColumnFamily-org.apache.hadoop.hbase.TableName-byte:A-">deleteColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  byte[]&nbsp;columnFamily)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#deleteColumnFamily-org.apache.hadoop.hbase.TableName-byte:A-">deleteColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   byte[]&nbsp;columnFamily)</code>
 <div class="block">Delete a column family from a table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#deleteColumnFamily-org.apache.hadoop.hbase.TableName-byte:A-">deleteColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  byte[]&nbsp;columnFamily)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#deleteColumnFamily-org.apache.hadoop.hbase.TableName-byte:A-">deleteColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#deleteColumnFamily-org.apache.hadoop.hbase.TableName-byte:A-">deleteColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   byte[]&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -3377,18 +3377,18 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#deleteTable-org.apache.hadoop.hbase.TableName-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#deleteTable-org.apache.hadoop.hbase.TableName-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Deletes a table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#deleteTable-org.apache.hadoop.hbase.TableName-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#deleteTable-org.apache.hadoop.hbase.TableName-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#deleteTable-org.apache.hadoop.hbase.TableName-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -3407,18 +3407,18 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#disableTable-org.apache.hadoop.hbase.TableName-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#disableTable-org.apache.hadoop.hbase.TableName-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Disable table and wait on completion.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#disableTable-org.apache.hadoop.hbase.TableName-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#disableTable-org.apache.hadoop.hbase.TableName-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#disableTable-org.apache.hadoop.hbase.TableName-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -3437,22 +3437,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#disableTableReplication-org.apache.hadoop.hbase.TableName-">disableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#disableTableReplication-org.apache.hadoop.hbase.TableName-">disableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Disable a table's replication switch.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#disableTableReplication-org.apache.hadoop.hbase.TableName-">disableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#disableTableReplication-org.apache.hadoop.hbase.TableName-">disableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#disableTableReplication-org.apache.hadoop.hbase.TableName-">disableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#disableTableReplication-org.apache.hadoop.hbase.TableName-">disableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -3461,18 +3461,18 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#enableTable-org.apache.hadoop.hbase.TableName-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#enableTable-org.apache.hadoop.hbase.TableName-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Enable a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#enableTable-org.apache.hadoop.hbase.TableName-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#enableTable-org.apache.hadoop.hbase.TableName-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#enableTable-org.apache.hadoop.hbase.TableName-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -3491,22 +3491,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#enableTableReplication-org.apache.hadoop.hbase.TableName-">enableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#enableTableReplication-org.apache.hadoop.hbase.TableName-">enableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Enable a table's replication switch.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#enableTableReplication-org.apache.hadoop.hbase.TableName-">enableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#enableTableReplication-org.apache.hadoop.hbase.TableName-">enableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#enableTableReplication-org.apache.hadoop.hbase.TableName-">enableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#enableTableReplication-org.apache.hadoop.hbase.TableName-">enableTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -3515,22 +3515,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#flush-org.apache.hadoop.hbase.TableName-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Flush a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#flush-org.apache.hadoop.hbase.TableName-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -3540,25 +3540,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-byte:A-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+     byte[]&nbsp;columnFamily)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#flush-org.apache.hadoop.hbase.TableName-byte:A-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;columnFamily)</code>
 <div class="block">Flush the specified column family stores on all regions of the passed table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#flush-org.apache.hadoop.hbase.TableName-byte:A-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-byte:A-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-     byte[]&nbsp;columnFamily)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-byte:A-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#flush-org.apache.hadoop.hbase.TableName-byte:A-">flush</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -3650,25 +3650,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Get the current compaction state of a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -3679,23 +3679,23 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Returns the Master's view of a quota on the given <code>tableName</code> or null if the Master has
  no quota information on that table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotView.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotView</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
@@ -3704,22 +3704,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get a table descriptor.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
@@ -3728,6 +3728,10 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get the timestamp of the last major compaction for the passed table
@@ -3736,17 +3740,13 @@
  or 0 if no such HFile could be found.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) int</code></td>
@@ -3804,18 +3804,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  byte[]&nbsp;row,
-                  boolean&nbsp;reload)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   byte[]&nbsp;row,
                   boolean&nbsp;reload)</code>
 <div class="block">Return all the replicas for a region.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  byte[]&nbsp;row,
+                  boolean&nbsp;reload)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.html#getRegionLocations-org.apache.hadoop.hbase.TableName-byte:A-int-org.apache.hadoop.hbase.client.RegionLocateType-boolean-">getRegionLocations</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -3859,15 +3859,15 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getRegionLocator-org.apache.hadoop.hbase.TableName-">getRegionLocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocator.html" title="interface in org.apache.hadoop.hbase.client">AsyncTableRegionLocator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncConnection.html#getRegionLocator-org.apache.hadoop.hbase.TableName-">getRegionLocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Retrieve a AsyncRegionLocator implementation to inspect region information on a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getRegionLocator-org.apache.hadoop.hbase.TableName-">getRegionLocator</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
@@ -3876,25 +3876,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get <a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><code>RegionMetrics</code></a> of all regions hosted on a regionserver for a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase">RegionMetrics</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionMetrics-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.TableName-">getRegionMetrics</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
                 <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -3904,22 +3904,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get the regions of a given table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
@@ -3928,22 +3928,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get group info for the given table</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a></code></td>
@@ -4008,17 +4008,17 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/TableBuilder.html" title="interface in org.apache.hadoop.hbase.client">TableBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getTableBuilder-org.apache.hadoop.hbase.TableName-java.util.concurrent.ExecutorService-">getTableBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a>&nbsp;pool)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTableBuilder</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/ScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">ScanResultConsumer</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncConnection.html#getTableBuilder-org.apache.hadoop.hbase.TableName-java.util.concurrent.ExecutorService-">getTableBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a>&nbsp;pool)</code>
 <div class="block">Returns an <a href="../../../../../org/apache/hadoop/hbase/client/AsyncTableBuilder.html" title="interface in org.apache.hadoop.hbase.client"><code>AsyncTableBuilder</code></a> for creating <a href="../../../../../org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client"><code>AsyncTable</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/TableBuilder.html" title="interface in org.apache.hadoop.hbase.client">TableBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getTableBuilder-org.apache.hadoop.hbase.TableName-java.util.concurrent.ExecutorService-">getTableBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a>&nbsp;pool)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.TableCache.html" title="class in org.apache.hadoop.hbase.client">AsyncNonMetaRegionLocator.TableCache</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.html#getTableCache-org.apache.hadoop.hbase.TableName-">getTableCache</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
@@ -4048,60 +4048,60 @@
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isTableAvailable-org.apache.hadoop.hbase.TableName-">isTableAvailable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isTableDisabled-org.apache.hadoop.hbase.TableName-">isTableDisabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isTableEnabled-org.apache.hadoop.hbase.TableName-">isTableEnabled</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
@@ -4174,6 +4174,12 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            byte[]&nbsp;columnFamily,
+            <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
@@ -4181,21 +4187,15 @@
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            byte[]&nbsp;columnFamily,
-            <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
@@ -4207,25 +4207,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -4236,20 +4236,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -4265,13 +4265,13 @@
                        <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html" title="class in org.apache.hadoop.hbase.client">RegionInfoBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html#newBuilder-org.apache.hadoop.hbase.TableName-">newBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#newBuilder-org.apache.hadoop.hbase.TableName-">newBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html" title="class in org.apache.hadoop.hbase.client">RegionInfoBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html#newBuilder-org.apache.hadoop.hbase.TableName-">newBuilder</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.html#onScanNext-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.AsyncNonMetaRegionLocator.LocateRequest-org.apache.hadoop.hbase.client.Result-">onScanNext</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -4289,14 +4289,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#prepareBulkLoad-org.apache.hadoop.hbase.TableName-">prepareBulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#prepareBulkLoad-org.apache.hadoop.hbase.TableName-">prepareBulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Return the token for this bulk load.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#prepareBulkLoad-org.apache.hadoop.hbase.TableName-">prepareBulkLoad</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.MasterRequestCallerBuilder.html" title="class in org.apache.hadoop.hbase.client">AsyncRpcRetryingCallerFactory.MasterRequestCallerBuilder</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.MasterRequestCallerBuilder.html" title="type parameter in AsyncRpcRetryingCallerFactory.MasterRequestCallerBuilder">T</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.MasterRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.MasterRequestCallerBuilder.html#priority-org.apache.hadoop.hbase.TableName-">priority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
@@ -4311,16 +4311,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#replay-org.apache.hadoop.hbase.TableName-byte:A-byte:A-java.util.List-int-int-long-">replay</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-      byte[]&nbsp;encodedRegionName,
-      byte[]&nbsp;row,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&gt;&nbsp;entries,
-      int&nbsp;replicaId,
-      int&nbsp;retries,
-      long&nbsp;operationTimeoutNs)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#replay-org.apache.hadoop.hbase.TableName-byte:A-byte:A-java.util.List-int-int-long-">replay</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
       byte[]&nbsp;encodedRegionName,
       byte[]&nbsp;row,
@@ -4331,6 +4321,16 @@
 <div class="block">Replicate wal edits for replica regions.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#replay-org.apache.hadoop.hbase.TableName-byte:A-byte:A-java.util.List-int-int-long-">replay</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+      byte[]&nbsp;encodedRegionName,
+      byte[]&nbsp;row,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&gt;&nbsp;entries,
+      int&nbsp;replicaId,
+      int&nbsp;retries,
+      long&nbsp;operationTimeoutNs)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#restoreSnapshot-java.lang.String-org.apache.hadoop.hbase.TableName-boolean-boolean-">restoreSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;snapshotName,
@@ -4340,20 +4340,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#select-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-">select</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tablename,
-      byte[]&nbsp;row,
-      <a href="../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a>&nbsp;locateType)</code>
-<div class="block">When it looks up a location, it will call this method to find a replica region to go.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSelector.html#select-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-">select</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tablename,
       byte[]&nbsp;row,
       <a href="../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a>&nbsp;locateType)</code>
 <div class="block">Select a catalog replica region where client go to loop up the input row key.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#select-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-">select</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tablename,
+      byte[]&nbsp;row,
+      <a href="../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a>&nbsp;locateType)</code>
+<div class="block">When it looks up a location, it will call this method to find a replica region to go.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#setTableReplication-org.apache.hadoop.hbase.TableName-boolean-">setTableReplication</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -4415,22 +4415,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -4440,25 +4440,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+     byte[]&nbsp;splitPoint)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;splitPoint)</code>
 <div class="block">Split a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;splitPoint)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-     byte[]&nbsp;splitPoint)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#split-org.apache.hadoop.hbase.TableName-byte:A-">split</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
      byte[]&nbsp;splitPoint)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -4474,20 +4474,20 @@
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#tableExists-org.apache.hadoop.hbase.TableName-">tableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static &lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;T&gt;</code></td>
@@ -4517,20 +4517,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+             boolean&nbsp;preserveSplits)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;preserveSplits)</code>
 <div class="block">Truncate a table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-             boolean&nbsp;preserveSplits)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;preserveSplits)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -4568,20 +4568,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#appendReplicationPeerTableCFs-java.lang.String-java.util.Map-">appendReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
+                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#appendReplicationPeerTableCFs-java.lang.String-java.util.Map-">appendReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>
 <div class="block">Append the replicable table column family config from the specified peer.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#appendReplicationPeerTableCFs-java.lang.String-java.util.Map-">appendReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#appendReplicationPeerTableCFs-java.lang.String-java.util.Map-">appendReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#appendReplicationPeerTableCFs-java.lang.String-java.util.Map-">appendReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -4603,22 +4603,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>
 <div class="block">Get tableDescriptors.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -4628,20 +4628,20 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#removeReplicationPeerTableCFs-java.lang.String-java.util.Map-">removeReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
+                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#removeReplicationPeerTableCFs-java.lang.String-java.util.Map-">removeReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>
 <div class="block">Remove some table-cfs from config of the specified peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#removeReplicationPeerTableCFs-java.lang.String-java.util.Map-">removeReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#removeReplicationPeerTableCFs-java.lang.String-java.util.Map-">removeReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#removeReplicationPeerTableCFs-java.lang.String-java.util.Map-">removeReplicationPeerTableCFs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCfs)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -4652,25 +4652,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/Admin.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>
 <div class="block">Set the RegionServer group for tables</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -5712,15 +5712,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#setPriority-org.apache.hadoop.hbase.TableName-">setPriority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#setPriority-org.apache.hadoop.hbase.TableName-">setPriority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#setPriority-org.apache.hadoop.hbase.TableName-">setPriority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#setPriority-org.apache.hadoop.hbase.TableName-">setPriority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#setPriority-org.apache.hadoop.hbase.TableName-">setPriority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#setPriority-org.apache.hadoop.hbase.TableName-">setPriority</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6059,13 +6059,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
-<div class="block">Get list of table names by namespace</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listTableNamesByNamespace-java.lang.String-">listTableNamesByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Get list of table names by namespace</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -6078,6 +6078,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#addColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">addColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+         <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;column,
+         long&nbsp;nonceGroup,
+         long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#addColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">addColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
          <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;column,
          long&nbsp;nonceGroup,
@@ -6085,29 +6092,29 @@
 <div class="block">Add a new column to an existing table</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#addColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">addColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-         <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;column,
-         long&nbsp;nonceGroup,
-         long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableExists-org.apache.hadoop.hbase.TableName-">checkTableExists</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Check table is modifiable; i.e.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#deleteColumn-org.apache.hadoop.hbase.TableName-byte:A-long-long-">deleteColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            byte[]&nbsp;columnName,
+            long&nbsp;nonceGroup,
+            long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#deleteColumn-org.apache.hadoop.hbase.TableName-byte:A-long-long-">deleteColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnName,
             long&nbsp;nonceGroup,
@@ -6115,55 +6122,48 @@
 <div class="block">Delete a column from an existing table</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#deleteColumn-org.apache.hadoop.hbase.TableName-byte:A-long-long-">deleteColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            byte[]&nbsp;columnName,
-            long&nbsp;nonceGroup,
-            long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#deleteTable-org.apache.hadoop.hbase.TableName-long-long-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+           long&nbsp;nonceGroup,
+           long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#deleteTable-org.apache.hadoop.hbase.TableName-long-long-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
            long&nbsp;nonceGroup,
            long&nbsp;nonce)</code>
 <div class="block">Delete a table</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#deleteTable-org.apache.hadoop.hbase.TableName-long-long-">deleteTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-           long&nbsp;nonceGroup,
-           long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#disableTable-org.apache.hadoop.hbase.TableName-long-long-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            long&nbsp;nonceGroup,
+            long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#disableTable-org.apache.hadoop.hbase.TableName-long-long-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             long&nbsp;nonceGroup,
             long&nbsp;nonce)</code>
 <div class="block">Disable an existing table</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#disableTable-org.apache.hadoop.hbase.TableName-long-long-">disableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            long&nbsp;nonceGroup,
-            long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#enableTable-org.apache.hadoop.hbase.TableName-long-long-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+           long&nbsp;nonceGroup,
+           long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#enableTable-org.apache.hadoop.hbase.TableName-long-long-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
            long&nbsp;nonceGroup,
            long&nbsp;nonce)</code>
 <div class="block">Enable an existing table</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#enableTable-org.apache.hadoop.hbase.TableName-long-long-">enableTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-           long&nbsp;nonceGroup,
-           long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AssignmentVerificationReport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/AssignmentVerificationReport.html#fillUp-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.master.SnapshotOfRegionAssignmentFromMeta-java.util.Map-">fillUp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -6196,11 +6196,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLastMajorCompactionTimestamp-org.apache.hadoop.hbase.TableName-">getLastMajorCompactionTimestamp</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState</code></td>
@@ -6227,6 +6227,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">modifyColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;descriptor,
+            long&nbsp;nonceGroup,
+            long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#modifyColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">modifyColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;descriptor,
             long&nbsp;nonceGroup,
@@ -6234,13 +6241,6 @@
 <div class="block">Modify the column descriptor of an existing column in an existing table</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">modifyColumn</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            <a href="../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;descriptor,
-            long&nbsp;nonceGroup,
-            long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private long</code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.master.HMaster.TableDescriptorGetter-long-long-boolean-">modifyTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -6251,6 +6251,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableDescriptor-long-long-">modifyTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+           <a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;newDescriptor,
+           long&nbsp;nonceGroup,
+           long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableDescriptor-long-long-">modifyTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
            <a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;descriptor,
            long&nbsp;nonceGroup,
@@ -6258,13 +6265,6 @@
 <div class="block">Modify the descriptor of an existing table</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableDescriptor-long-long-">modifyTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-           <a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;newDescriptor,
-           long&nbsp;nonceGroup,
-           long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html#postCompletedDeleteTableAction-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.User-">postCompletedDeleteTableAction</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -6490,6 +6490,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-long-long-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+             boolean&nbsp;preserveSplits,
+             long&nbsp;nonceGroup,
+             long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-long-long-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              boolean&nbsp;preserveSplits,
              long&nbsp;nonceGroup,
@@ -6497,13 +6504,6 @@
 <div class="block">Truncate a table</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#truncateTable-org.apache.hadoop.hbase.TableName-boolean-long-long-">truncateTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-             boolean&nbsp;preserveSplits,
-             long&nbsp;nonceGroup,
-             long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">TableStateManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#updateMetaState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State-">updateMetaState</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -6625,34 +6625,34 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#getTableName--">getTableName</a></span>()</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#getTableName--">getTableName</a></span>()</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">GCMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/GCMergedRegionsProcedure.html#getTableName--">getTableName</a></span>()</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#getTableName--">getTableName</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -6803,11 +6803,10 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
- implementation.</div>
+<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -6820,16 +6819,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
+<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
+ implementation.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
+<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -6883,14 +6883,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>
 <div class="block">Called before actually executing balanceCluster.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#setClusterLoad-java.util.Map-">setClusterLoad</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;clusterLoad)</code>
@@ -7176,15 +7176,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#tableName">tableName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#tableName">tableName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReopenTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ReopenTableRegionsProcedure.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReopenTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ReopenTableRegionsProcedure.html#tableName">tableName</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#tableName">tableName</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
@@ -7222,61 +7222,61 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReopenTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/ReopenTableRegionsProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DeleteTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/DeleteTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getTableName-org.apache.hadoop.hbase.procedure2.Procedure-">getTableName</a></span>(<a href="../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
 </tr>
@@ -7927,13 +7927,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#addTable-org.apache.hadoop.hbase.TableName-int-">addTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>private void</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceStateManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceStateManager.html#addTable-org.apache.hadoop.hbase.TableName-int-">addTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
         int&nbsp;regionCount)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceStateManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceStateManager.html#addTable-org.apache.hadoop.hbase.TableName-int-">addTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#addTable-org.apache.hadoop.hbase.TableName-int-">addTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
         int&nbsp;regionCount)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -7984,15 +7984,15 @@
                             int&nbsp;count)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) int</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#getRegionCountOfTable-org.apache.hadoop.hbase.TableName-">getRegionCountOfTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">NamespaceAuditor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceAuditor.html#getRegionCountOfTable-org.apache.hadoop.hbase.TableName-">getRegionCountOfTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tName)</code>
 <div class="block">Get region count for table</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) int</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#getRegionCountOfTable-org.apache.hadoop.hbase.TableName-">getRegionCountOfTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) int</code></td>
 <td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#incRegionCountForTable-org.apache.hadoop.hbase.TableName-int-">incRegionCountForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -8004,11 +8004,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#removeTable-org.apache.hadoop.hbase.TableName-">removeTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NamespaceStateManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceStateManager.html#removeTable-org.apache.hadoop.hbase.TableName-">removeTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceStateManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceStateManager.html#removeTable-org.apache.hadoop.hbase.TableName-">removeTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NamespaceTableAndRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namespace/NamespaceTableAndRegionInfo.html#removeTable-org.apache.hadoop.hbase.TableName-">removeTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -8464,15 +8464,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
-   org.apache.hadoop.conf.Configuration&nbsp;conf,
-   org.apache.hadoop.fs.FileSystem&nbsp;fs,
-   <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
-<div class="block">Returns the <a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactory.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
    org.apache.hadoop.conf.Configuration&nbsp;conf,
    org.apache.hadoop.fs.FileSystem&nbsp;fs,
@@ -8480,6 +8471,15 @@
 <div class="block">Creates or obtains a <a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given args.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
+   org.apache.hadoop.conf.Configuration&nbsp;conf,
+   org.apache.hadoop.fs.FileSystem&nbsp;fs,
+   <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
+<div class="block">Returns the <a href="../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a>.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaTableUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaTableUtil.html#getCurrentSnapshotFromQuotaTable-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.hbase.TableName-">getCurrentSnapshotFromQuotaTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
@@ -8575,14 +8575,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/UserQuotaState.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
-<div class="block">Return the limiter for the specified table associated with this quota.</div>
+<td class="colLast"><span class="typeNameLabel">QuotaCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaCache.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
+<div class="block">Returns the limiter associated to the specified table.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QuotaCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaCache.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
-<div class="block">Returns the limiter associated to the specified table.</div>
+<td class="colLast"><span class="typeNameLabel">UserQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/UserQuotaState.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
+<div class="block">Return the limiter for the specified table associated with this quota.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -9254,17 +9254,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#reportFileArchivalForQuotas-org.apache.hadoop.hbase.TableName-java.util.Collection-">reportFileArchivalForQuotas</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbsp;archivedFiles)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#reportFileArchivalForQuotas-org.apache.hadoop.hbase.TableName-java.util.Collection-">reportFileArchivalForQuotas</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbsp;archivedFiles)</code>
 <div class="block">Reports a collection of files, and their sizes, that belonged to the given <code>table</code> were
  just moved to the archive directory.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#reportFileArchivalForQuotas-org.apache.hadoop.hbase.TableName-java.util.Collection-">reportFileArchivalForQuotas</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbsp;archivedFiles)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServer.html#updateAppend-org.apache.hadoop.hbase.TableName-long-">updateAppend</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn,
@@ -9392,14 +9392,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeter.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Update table read QPS</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerTableMetrics.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table,
@@ -9407,30 +9407,30 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                         long&nbsp;count)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeter.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                          long&nbsp;count)</code>
 <div class="block">Update table read QPS</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableReadQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableReadQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                         long&nbsp;count)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerTableMetrics.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeter.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Update table write QPS</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionServerTableMetrics.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table,
@@ -9438,16 +9438,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                          long&nbsp;count)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeter.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                           long&nbsp;count)</code>
 <div class="block">Update table write QPS</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableQueryMeterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableQueryMeterImpl.html#updateTableWriteQueryMeter-org.apache.hadoop.hbase.TableName-long-">updateTableWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                          long&nbsp;count)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServer.html#updateWriteQueryMeter-org.apache.hadoop.hbase.TableName-">updateWriteQueryMeter</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>&nbsp;</td>
@@ -9591,13 +9591,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getTableCFs--">getTableCFs</a></span>()</code>
-<div class="block">Get replicable (table, cf-list) map of this peer</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getTableCFs--">getTableCFs</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getTableCFs--">getTableCFs</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getTableCFs--">getTableCFs</a></span>()</code>
+<div class="block">Get replicable (table, cf-list) map of this peer</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
@@ -9668,25 +9668,25 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setExcludeTableCFsMap-java.util.Map-">setExcludeTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;excludeTableCFsMap)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setExcludeTableCFsMap-java.util.Map-">setExcludeTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>
 <div class="block">Sets the mapping of table name to column families which should not be replicated.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setExcludeTableCFsMap-java.util.Map-">setExcludeTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;excludeTableCFsMap)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setTableCFsMap-java.util.Map-">setTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setTableCFsMap-java.util.Map-">setTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>
 <div class="block">Sets an explicit map of tables and column families in those tables that should be replicated
  to the given peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setTableCFsMap-java.util.Map-">setTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html#unmodifiableTableCFsMap-java.util.Map-">unmodifiableTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>&nbsp;</td>
@@ -9961,32 +9961,32 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#determineRSGroupInfoForTable-org.apache.hadoop.hbase.TableName-">determineRSGroupInfoForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html#determineRSGroupInfoForTable-org.apache.hadoop.hbase.TableName-">determineRSGroupInfoForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Determine <code>RSGroupInfo</code> for the given table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#determineRSGroupInfoForTable-org.apache.hadoop.hbase.TableName-">determineRSGroupInfoForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#determineRSGroupInfoForTable-org.apache.hadoop.hbase.TableName-">determineRSGroupInfoForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get <code>RSGroupInfo</code> for the given table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupUtil.html#getRSGroupInfo-org.apache.hadoop.hbase.master.MasterServices-org.apache.hadoop.hbase.rsgroup.RSGroupInfoManager-org.apache.hadoop.hbase.TableName-">getRSGroupInfo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;master,
@@ -10071,33 +10071,33 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#moveTablesAndWait-java.util.Set-java.lang.String-">moveTablesAndWait</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
-                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroup)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupAdminServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminServiceImpl.html#moveTablesAndWait-java.util.Set-java.lang.String-">moveTablesAndWait</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroup)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private void</code></td>
+<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#moveTablesAndWait-java.util.Set-java.lang.String-">moveTablesAndWait</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
+                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroup)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>
 <div class="block">Set group for tables.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#setRSGroup-java.util.Set-java.lang.String-">setRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tables,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -10142,11 +10142,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AccessControlFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.html#table">table</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AuthResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/AuthResult.html#table">table</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AuthResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/AuthResult.html#table">table</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AccessControlFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.html#table">table</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
@@ -10202,11 +10202,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TablePermission.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GetUserPermissionsRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GetUserPermissionsRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TablePermission.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html#getTableName--">getTableName</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/TableNotDisabledException.html b/devapidocs/org/apache/hadoop/hbase/class-use/TableNotDisabledException.html
index 6e0b0b4..6050773 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/TableNotDisabledException.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/TableNotDisabledException.html
@@ -104,13 +104,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
-<div class="block">Check table is modifiable; i.e.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
+<div class="block">Check table is modifiable; i.e.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/TableNotFoundException.html b/devapidocs/org/apache/hadoop/hbase/class-use/TableNotFoundException.html
index db5097b..f112f2c 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/TableNotFoundException.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/TableNotFoundException.html
@@ -152,13 +152,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
-<div class="block">Check table is modifiable; i.e.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/HMaster.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#checkTableModifiable-org.apache.hadoop.hbase.TableName-">checkTableModifiable</a></span>(<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
+<div class="block">Check table is modifiable; i.e.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/Tag.html b/devapidocs/org/apache/hadoop/hbase/class-use/Tag.html
index 0e3d093..bad587f 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/Tag.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/Tag.html
@@ -169,14 +169,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TagBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilderImpl.html#build--">build</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TagBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html#build--">build</a></span>()</code>
 <div class="block">Build the tag.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TagBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilderImpl.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -211,15 +211,15 @@
                   long&nbsp;ttl)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ByteBufferKeyOnlyKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ByteBufferKeyOnlyKeyValue.html#getTag-byte-">getTag</a></span>(byte&nbsp;type)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#getTag-byte-">getTag</a></span>(byte&nbsp;type)</code>
 <div class="block">Returns the specific tag of the given type</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ByteBufferKeyOnlyKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ByteBufferKeyOnlyKeyValue.html#getTag-byte-">getTag</a></span>(byte&nbsp;type)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#getTag-org.apache.hadoop.hbase.Cell-byte-">getTag</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -228,15 +228,15 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ByteBufferKeyOnlyKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ByteBufferKeyOnlyKeyValue.html#getTags--">getTags</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#getTags--">getTags</a></span>()</code>
 <div class="block">Creates a list of tags in the current cell</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ByteBufferKeyOnlyKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ByteBufferKeyOnlyKeyValue.html#getTags--">getTags</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#getTags-org.apache.hadoop.hbase.Cell-">getTags</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
@@ -371,12 +371,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrivateCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/PrivateCellUtil.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">RawCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RawCell.html#createCell-org.apache.hadoop.hbase.Cell-java.util.List-">createCell</a></span>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -388,11 +388,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html" title="interface in org.apache.hadoop.hbase">ExtendedCellBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilderImpl.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExtendedCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ExtendedCellBuilder.html#setTags-java.util.List-">setTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;&nbsp;tags)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/RawCellBuilder.html" title="interface in org.apache.hadoop.hbase">RawCellBuilder</a></code></td>
@@ -615,13 +615,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityExpressionResolver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/VisibilityExpressionResolver.html#createVisibilityExpTags-java.lang.String-">createVisibilityExpTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;visExpression)</code>
-<div class="block">Convert visibility expression into tags to be serialized.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">DefaultVisibilityExpressionResolver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/DefaultVisibilityExpressionResolver.html#createVisibilityExpTags-java.lang.String-">createVisibilityExpTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;visExpression)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultVisibilityExpressionResolver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/DefaultVisibilityExpressionResolver.html#createVisibilityExpTags-java.lang.String-">createVisibilityExpTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;visExpression)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityExpressionResolver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/VisibilityExpressionResolver.html#createVisibilityExpTags-java.lang.String-">createVisibilityExpTags</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;visExpression)</code>
+<div class="block">Convert visibility expression into tags to be serialized.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/TagBuilder.html b/devapidocs/org/apache/hadoop/hbase/class-use/TagBuilder.html
index 8bb924d..599ccfd 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/TagBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/TagBuilder.html
@@ -124,24 +124,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TagBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilderImpl.html#setTagType-byte-">setTagType</a></span>(byte&nbsp;tagType)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TagBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html#setTagType-byte-">setTagType</a></span>(byte&nbsp;tagType)</code>
 <div class="block">Set type of the tag.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TagBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilderImpl.html#setTagValue-byte:A-">setTagValue</a></span>(byte[]&nbsp;tagBytes)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TagBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilderImpl.html#setTagType-byte-">setTagType</a></span>(byte&nbsp;tagType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TagBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html#setTagValue-byte:A-">setTagValue</a></span>(byte[]&nbsp;tagBytes)</code>
 <div class="block">Set the value of the tag.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TagBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TagBuilderImpl.html#setTagValue-byte:A-">setTagValue</a></span>(byte[]&nbsp;tagBytes)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.ClientMetrics.html b/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.ClientMetrics.html
index d594ad0..dd639af 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.ClientMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.ClientMetrics.html
@@ -138,11 +138,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../org/apache/hadoop/hbase/UserMetrics.ClientMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics.ClientMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/UserMetrics.html#getClientMetrics--">getClientMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UserMetricsBuilder.UserMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/UserMetricsBuilder.UserMetricsImpl.html#getClientMetrics--">getClientMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../org/apache/hadoop/hbase/UserMetrics.ClientMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics.ClientMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserMetricsBuilder.UserMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/UserMetricsBuilder.UserMetricsImpl.html#getClientMetrics--">getClientMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UserMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/UserMetrics.html#getClientMetrics--">getClientMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.html b/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.html
index 543b8b2..743b28c 100644
--- a/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/class-use/UserMetrics.html
@@ -151,11 +151,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="../../../../../org/apache/hadoop/hbase/UserMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getUserMetrics--">getUserMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getUserMetrics--">getUserMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="../../../../../org/apache/hadoop/hbase/UserMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getUserMetrics--">getUserMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getUserMetrics--">getUserMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/backoff/class-use/ServerStatistics.html b/devapidocs/org/apache/hadoop/hbase/client/backoff/class-use/ServerStatistics.html
index 961a23e..d9db784 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/backoff/class-use/ServerStatistics.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/backoff/class-use/ServerStatistics.html
@@ -141,19 +141,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicyFactory.NoBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicyFactory.NoBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">ExponentialClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ExponentialClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               byte[]&nbsp;region,
               <a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ServerStatistics.html" title="class in org.apache.hadoop.hbase.client.backoff">ServerStatistics</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ExponentialClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ExponentialClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               byte[]&nbsp;region,
               <a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ServerStatistics.html" title="class in org.apache.hadoop.hbase.client.backoff">ServerStatistics</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+<td class="colLast"><span class="typeNameLabel">ClientBackoffPolicyFactory.NoBackoffPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ClientBackoffPolicyFactory.NoBackoffPolicy.html#getBackoffTime-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.backoff.ServerStatistics-">getBackoffTime</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               byte[]&nbsp;region,
               <a href="../../../../../../../org/apache/hadoop/hbase/client/backoff/ServerStatistics.html" title="class in org.apache.hadoop.hbase.client.backoff">ServerStatistics</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AbstractResponse.ResponseType.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AbstractResponse.ResponseType.html
index 2a4caf1..754f116 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AbstractResponse.ResponseType.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AbstractResponse.ResponseType.html
@@ -105,17 +105,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client">AbstractResponse.ResponseType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractResponse.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.html#type--">type</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client">AbstractResponse.ResponseType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultiResponse.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/MultiResponse.html#type--">type</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client">AbstractResponse.ResponseType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SingleResponse.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SingleResponse.html#type--">type</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client">AbstractResponse.ResponseType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractResponse.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.html#type--">type</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client">AbstractResponse.ResponseType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractResponse.ResponseType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Admin.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Admin.html
index f35bf56..535dae7 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Admin.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Admin.html
@@ -781,17 +781,17 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html" title="interface in org.apache.hadoop.hbase.client">Admin</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionMover.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RegionMover.html#admin">admin</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html" title="interface in org.apache.hadoop.hbase.client">Admin</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html#admin">admin</a></span></code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html" title="interface in org.apache.hadoop.hbase.client">Admin</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MoveWithAck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MoveWithAck.html#admin">admin</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html" title="interface in org.apache.hadoop.hbase.client">Admin</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionMover.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RegionMover.html#admin">admin</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MoveWithAck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MoveWithAck.html#admin">admin</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html" title="interface in org.apache.hadoop.hbase.client">Admin</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AdvancedScanResultConsumer.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AdvancedScanResultConsumer.html
index 559aca2..e042260 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AdvancedScanResultConsumer.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AdvancedScanResultConsumer.html
@@ -187,15 +187,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#consumer">consumer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#consumer">consumer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#consumer">consumer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#consumer">consumer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#consumer">consumer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#consumer">consumer</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -212,11 +212,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#rawTable">rawTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#rawTable">rawTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#rawTable">rawTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#rawTable">rawTable</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Append.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Append.html
index c7e9371..7480517 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Append.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Append.html
@@ -213,29 +213,29 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
-<div class="block">Appends values to one or more columns within a single row.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
 <div class="block">Appends values to one or more columns within a single row.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
+<div class="block">Appends values to one or more columns within a single row.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Append-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncAdminBuilder.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncAdminBuilder.html
index 230bd24..5032274 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncAdminBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncAdminBuilder.html
@@ -149,14 +149,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setMaxAttempts-int-">setMaxAttempts</a></span>(int&nbsp;maxAttempts)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setMaxAttempts-int-">setMaxAttempts</a></span>(int&nbsp;maxAttempts)</code>
 <div class="block">Set the max attempt times for an admin operation.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setMaxAttempts-int-">setMaxAttempts</a></span>(int&nbsp;maxAttempts)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setMaxRetries-int-">setMaxRetries</a></span>(int&nbsp;maxRetries)</code>
@@ -165,62 +165,62 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setOperationTimeout-long-java.util.concurrent.TimeUnit-">setOperationTimeout</a></span>(long&nbsp;timeout,
-                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setOperationTimeout-long-java.util.concurrent.TimeUnit-">setOperationTimeout</a></span>(long&nbsp;timeout,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>
 <div class="block">Set timeout for a whole admin operation.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setRetryPause-long-java.util.concurrent.TimeUnit-">setRetryPause</a></span>(long&nbsp;timeout,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setOperationTimeout-long-java.util.concurrent.TimeUnit-">setOperationTimeout</a></span>(long&nbsp;timeout,
+                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setRetryPause-long-java.util.concurrent.TimeUnit-">setRetryPause</a></span>(long&nbsp;timeout,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>
 <div class="block">Set the base pause time for retrying.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setRetryPauseForCQTBE-long-java.util.concurrent.TimeUnit-">setRetryPauseForCQTBE</a></span>(long&nbsp;timeout,
-                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setRetryPause-long-java.util.concurrent.TimeUnit-">setRetryPause</a></span>(long&nbsp;timeout,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setRetryPauseForCQTBE-long-java.util.concurrent.TimeUnit-">setRetryPauseForCQTBE</a></span>(long&nbsp;pause,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>
 <div class="block">Set the base pause time for retrying when we hit <code>CallQueueTooBigException</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setRpcTimeout-long-java.util.concurrent.TimeUnit-">setRpcTimeout</a></span>(long&nbsp;timeout,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setRetryPauseForCQTBE-long-java.util.concurrent.TimeUnit-">setRetryPauseForCQTBE</a></span>(long&nbsp;timeout,
+                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setRpcTimeout-long-java.util.concurrent.TimeUnit-">setRpcTimeout</a></span>(long&nbsp;timeout,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>
 <div class="block">Set timeout for each rpc request.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setStartLogErrorsCnt-int-">setStartLogErrorsCnt</a></span>(int&nbsp;startLogErrorsCnt)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setRpcTimeout-long-java.util.concurrent.TimeUnit-">setRpcTimeout</a></span>(long&nbsp;timeout,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html#setStartLogErrorsCnt-int-">setStartLogErrorsCnt</a></span>(int&nbsp;startLogErrorsCnt)</code>
 <div class="block">Set the number of retries that are allowed before we start to log.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncAdminBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncAdminBuilderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncAdminBuilderBase.html#setStartLogErrorsCnt-int-">setStartLogErrorsCnt</a></span>(int&nbsp;startLogErrorsCnt)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncConnectionImpl.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncConnectionImpl.html
index 1330713..fc58c7e 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncConnectionImpl.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncConnectionImpl.html
@@ -125,7 +125,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorRpcChannelImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionCoprocessorRpcChannelImpl.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncBatchRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBatchRpcRetryingCaller.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
@@ -133,31 +133,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#conn">conn</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.html#conn">conn</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCaller.html#conn">conn</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCaller.html#conn">conn</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncBatchRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBatchRpcRetryingCaller.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorRpcChannelImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionCoprocessorRpcChannelImpl.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
@@ -165,11 +157,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableRegionLocatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableRegionLocatorImpl.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.html#conn">conn</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.html#conn">conn</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html" title="class in org.apache.hadoop.hbase.client">AsyncConnectionImpl</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncRegionServerAdmin.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncRegionServerAdmin.html
index 9e8ec23..9ed57dc 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncRegionServerAdmin.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncRegionServerAdmin.html
@@ -116,14 +116,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRegionServerAdmin.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionServerAdmin</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionServerAdmin-org.apache.hadoop.hbase.ServerName-">getRegionServerAdmin</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRegionServerAdmin.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionServerAdmin</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#getRegionServerAdmin-org.apache.hadoop.hbase.ServerName-">getRegionServerAdmin</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get the admin service for the given region server.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRegionServerAdmin.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionServerAdmin</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRegionServerAdmin-org.apache.hadoop.hbase.ServerName-">getRegionServerAdmin</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncServerRequestRpcRetryingCaller.Callable.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncServerRequestRpcRetryingCaller.Callable.html
index 02ca6de..7d45533 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncServerRequestRpcRetryingCaller.Callable.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncServerRequestRpcRetryingCaller.Callable.html
@@ -105,13 +105,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.Callable.html" title="interface in org.apache.hadoop.hbase.client">AsyncServerRequestRpcRetryingCaller.Callable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.html" title="type parameter in AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder">T</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.html#callable">callable</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.Callable.html" title="interface in org.apache.hadoop.hbase.client">AsyncServerRequestRpcRetryingCaller.Callable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.html" title="type parameter in AsyncServerRequestRpcRetryingCaller">T</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncServerRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.html#callable">callable</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncServerRequestRpcRetryingCaller.Callable.html" title="interface in org.apache.hadoop.hbase.client">AsyncServerRequestRpcRetryingCaller.Callable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.html" title="type parameter in AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder">T</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ServerRequestCallerBuilder.html#callable">callable</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncTable.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncTable.html
index 410a2b6..2d3a373 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncTable.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/AsyncTable.html
@@ -213,11 +213,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#rawTable">rawTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#rawTable">rawTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/AdvancedScanResultConsumer.html" title="interface in org.apache.hadoop.hbase.client">AdvancedScanResultConsumer</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#rawTable">rawTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#rawTable">rawTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable</a>&lt;?&gt;</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html
index 966144a..ed5c802 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutate.html
@@ -148,29 +148,29 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
-<div class="block">checkAndMutate that atomically checks if a row matches the specified condition.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
 <div class="block">checkAndMutate that atomically checks if a row matches the specified condition.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
+<div class="block">checkAndMutate that atomically checks if a row matches the specified condition.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -181,29 +181,29 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
-<div class="block">Batch version of checkAndMutate.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
 <div class="block">Batch version of checkAndMutate.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
+<div class="block">Batch version of checkAndMutate.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutateAll-java.util.List-">checkAndMutateAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html
index 7f76062..9c52deb 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/CheckAndMutateResult.html
@@ -119,15 +119,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>
 <div class="block">checkAndMutate that atomically checks if a row matches the specified condition.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -152,29 +152,29 @@
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#checkAndMutate-org.apache.hadoop.hbase.client.CheckAndMutate-">checkAndMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&nbsp;checkAndMutate)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
-<div class="block">Batch version of checkAndMutate.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
 <div class="block">Batch version of checkAndMutate.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
+<div class="block">Batch version of checkAndMutate.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-java.util.List-">checkAndMutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutateResult</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutateAll-java.util.List-">checkAndMutateAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate</a>&gt;&nbsp;checkAndMutates)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/ColumnFamilyDescriptor.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/ColumnFamilyDescriptor.html
index d83bc1d..11ac6cb 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/ColumnFamilyDescriptor.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/ColumnFamilyDescriptor.html
@@ -374,20 +374,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+               <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Add a column family to an existing table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-               <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#addColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">addColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -424,20 +424,20 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>
 <div class="block">Modify an existing column family on a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyColumnFamily-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">modifyColumnFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;columnFamily)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -616,6 +616,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#addColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">addColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+         <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;column,
+         long&nbsp;nonceGroup,
+         long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#addColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">addColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
          <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;column,
          long&nbsp;nonceGroup,
@@ -623,15 +630,15 @@
 <div class="block">Add a new column to an existing table</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#addColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">addColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-         <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;column,
-         long&nbsp;nonceGroup,
-         long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">modifyColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;descriptor,
+            long&nbsp;nonceGroup,
+            long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#modifyColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">modifyColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;descriptor,
             long&nbsp;nonceGroup,
@@ -639,13 +646,6 @@
 <div class="block">Modify the column descriptor of an existing column in an existing table</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyColumn-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-long-long-">modifyColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a>&nbsp;descriptor,
-            long&nbsp;nonceGroup,
-            long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactType.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactType.html
index 8cc6393..610d559 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactType.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactType.html
@@ -148,6 +148,12 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+       byte[]&nbsp;columnFamily,
+       <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        byte[]&nbsp;columnFamily,
@@ -155,21 +161,15 @@
 <div class="block">Compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        byte[]&nbsp;columnFamily,
        <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-       byte[]&nbsp;columnFamily,
-       <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        byte[]&nbsp;columnFamily,
        <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
@@ -181,25 +181,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+       <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Compact a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-       <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#compact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
        <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -210,25 +210,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+                  <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Get the current compaction state of a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-                  <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -240,6 +240,12 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            byte[]&nbsp;columnFamily,
+            <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
@@ -247,21 +253,15 @@
 <div class="block">Major compact a column family within a table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
             <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            byte[]&nbsp;columnFamily,
-            <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             byte[]&nbsp;columnFamily,
             <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
@@ -273,25 +273,25 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+            <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>
 <div class="block">Major compact a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-            <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#majorCompact-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">majorCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactionState.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactionState.html
index aaa5270..2fd22c8 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactionState.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/CompactionState.html
@@ -278,12 +278,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.CompactType-">getCompactionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client">CompactType</a>&nbsp;compactType)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -294,11 +294,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionStateForRegion-byte:A-">getCompactionStateForRegion</a></span>(byte[]&nbsp;regionName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionStateForRegion-byte:A-">getCompactionStateForRegion</a></span>(byte[]&nbsp;regionName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client">CompactionState</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCompactionStateForRegion-byte:A-">getCompactionStateForRegion</a></span>(byte[]&nbsp;regionName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCompactionStateForRegion-byte:A-">getCompactionStateForRegion</a></span>(byte[]&nbsp;regionName)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Connection.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Connection.html
index 67beb79..fc7b0bb 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Connection.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Connection.html
@@ -667,24 +667,24 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BackupManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/BackupManager.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RestoreTablesClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/RestoreTablesClient.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BackupAdminImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/BackupAdminImpl.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreTablesClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/RestoreTablesClient.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BackupCommands.Command.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/BackupCommands.Command.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableBackupClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/TableBackupClient.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BackupManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/BackupManager.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BackupCommands.Command.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/BackupCommands.Command.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableBackupClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/backup/impl/TableBackupClient.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
@@ -1078,20 +1078,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshHFilesClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/example/RefreshHFilesClient.html#connection">connection</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultiThreadedClientExample.WriteExampleCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/example/MultiThreadedClientExample.WriteExampleCallable.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultiThreadedClientExample.SingleWriteExampleCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/example/MultiThreadedClientExample.SingleWriteExampleCallable.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultiThreadedClientExample.ReadExampleCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/example/MultiThreadedClientExample.ReadExampleCallable.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RefreshHFilesClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/example/RefreshHFilesClient.html#connection">connection</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -1148,13 +1148,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
+<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
 <div class="block">Creates a cluster connection using the passed Configuration.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
 <div class="block">Creates a cluster connection using the passed Configuration.</div>
 </td>
 </tr>
@@ -1166,13 +1166,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getConnection--">getConnection</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#getConnection--">getConnection</a></span>()</code>
 <div class="block">Returns the hosts' Connection to the Cluster.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#getConnection--">getConnection</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getConnection--">getConnection</a></span>()</code>
 <div class="block">Returns the hosts' Connection to the Cluster.</div>
 </td>
 </tr>
@@ -1235,11 +1235,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#connection">connection</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/HRegionPartitioner.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/HRegionPartitioner.html#connection">connection</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1273,9 +1273,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#connection">connection</a></span></code>
-<div class="block">The underlying <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client"><code>Connection</code></a> of the table.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HRegionPartitioner.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
@@ -1283,11 +1281,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HRegionPartitioner.html#connection">connection</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableOutputFormat.TableRecordWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableOutputFormat.TableRecordWriter.html#connection">connection</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOutputFormat.TableRecordWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableOutputFormat.TableRecordWriter.html#connection">connection</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#connection">connection</a></span></code>
+<div class="block">The underlying <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client"><code>Connection</code></a> of the table.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
@@ -1523,7 +1523,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceQuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NamespaceQuotaSnapshotStore.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierImpl.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
@@ -1531,20 +1531,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierImpl.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NamespaceQuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NamespaceQuotaSnapshotStore.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSpaceQuotaSnapshotNotifier.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TableSpaceQuotaSnapshotNotifier.html#conn">conn</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SpaceQuotaRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaRefresherChore.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableQuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html#conn">conn</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaObserverChore.html#conn">conn</a></span></code>&nbsp;</td>
@@ -1554,6 +1546,14 @@
 <td class="colLast"><span class="typeNameLabel">QuotaObserverChore.TablesWithQuotas.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaObserverChore.TablesWithQuotas.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableQuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html#conn">conn</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableSpaceQuotaSnapshotNotifier.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TableSpaceQuotaSnapshotNotifier.html#conn">conn</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.CacheKey.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.CacheKey.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
@@ -1776,15 +1776,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
-   org.apache.hadoop.conf.Configuration&nbsp;conf,
-   org.apache.hadoop.fs.FileSystem&nbsp;fs,
-   <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
-<div class="block">Returns the <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a>.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactory.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
    org.apache.hadoop.conf.Configuration&nbsp;conf,
    org.apache.hadoop.fs.FileSystem&nbsp;fs,
@@ -1792,6 +1783,15 @@
 <div class="block">Creates or obtains a <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given args.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
+   org.apache.hadoop.conf.Configuration&nbsp;conf,
+   org.apache.hadoop.fs.FileSystem&nbsp;fs,
+   <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
+<div class="block">Returns the <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a>.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaTableUtil.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaTableUtil.html#getCurrentSnapshotFromQuotaTable-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.hbase.TableName-">getCurrentSnapshotFromQuotaTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
@@ -1979,11 +1979,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironment.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironment.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#createConnection-org.apache.hadoop.conf.Configuration-">createConnection</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
@@ -1991,11 +1991,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getConnection--">getConnection</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironment.html#getConnection--">getConnection</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironment.html#getConnection--">getConnection</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getConnection--">getConnection</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2736,11 +2736,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MoveWithAck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MoveWithAck.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionMover.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RegionMover.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionMover.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RegionMover.html#conn">conn</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MoveWithAck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MoveWithAck.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html
index bf90d7f..64d8ce8 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Consistency.html
@@ -157,23 +157,23 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>
 <div class="block">Sets the consistency level for this operation</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Delete.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Delete.html
index e6e5ac4..fde7c9e 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Delete.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Delete.html
@@ -373,40 +373,28 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Delete-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
-<div class="block">Deletes the specified cells/row.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
 <div class="block">Deletes the specified cells/row.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
+<div class="block">Deletes the specified cells/row.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#thenDelete-org.apache.hadoop.hbase.client.Delete-">thenDelete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#thenDelete-org.apache.hadoop.hbase.client.Delete-">thenDelete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#delete-org.apache.hadoop.hbase.client.Delete-">delete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -422,6 +410,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#thenDelete-org.apache.hadoop.hbase.client.Delete-">thenDelete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#thenDelete-org.apache.hadoop.hbase.client.Delete-">thenDelete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.CheckAndMutateBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.CheckAndMutateBuilderImpl.html#thenDelete-org.apache.hadoop.hbase.client.Delete-">thenDelete</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&nbsp;delete)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -438,29 +438,29 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
-<div class="block">Deletes the specified cells/rows in bulk.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
 <div class="block">Batch Deletes the specified cells/rows from the table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
+<div class="block">Deletes the specified cells/rows in bulk.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#delete-java.util.List-">delete</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#deleteAll-java.util.List-">deleteAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a>&gt;&nbsp;deletes)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Durability.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Durability.html
index 2c1126b..0f5b553 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Durability.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Durability.html
@@ -243,14 +243,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#getDurability--">getDurability</a></span>()</code>
-<div class="block">Get the current durability</div>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getDurability--">getDurability</a></span>()</code>
+<div class="block">Returns the durability setting for the table.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getDurability--">getDurability</a></span>()</code>
-<div class="block">Returns the durability setting for the table.</div>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#getDurability--">getDurability</a></span>()</code>
+<div class="block">Get the current durability</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -276,24 +276,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
-                    byte[]&nbsp;family,
-                    byte[]&nbsp;qualifier,
-                    long&nbsp;amount,
-                    <a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>
-<div class="block">Atomically increments a column value.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
-                    byte[]&nbsp;family,
-                    byte[]&nbsp;qualifier,
-                    long&nbsp;amount,
-                    <a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default long</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
                     byte[]&nbsp;family,
@@ -304,28 +286,28 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>
-<div class="block">Set the durability for this mutation</div>
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
+                    byte[]&nbsp;family,
+                    byte[]&nbsp;qualifier,
+                    long&nbsp;amount,
+                    <a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>
+<div class="block">Atomically increments a column value.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#incrementColumnValue-byte:A-byte:A-byte:A-long-org.apache.hadoop.hbase.client.Durability-">incrementColumnValue</a></span>(byte[]&nbsp;row,
+                    byte[]&nbsp;family,
+                    byte[]&nbsp;qualifier,
+                    long&nbsp;amount,
+                    <a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Delete.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;durability)</code>&nbsp;</td>
 </tr>
@@ -335,6 +317,24 @@
 <div class="block">Sets the <a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><code>Durability</code></a> setting for the table.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>
+<div class="block">Set the durability for this mutation</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Put.html#setDurability-org.apache.hadoop.hbase.client.Durability-">setDurability</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client">Durability</a>&nbsp;d)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Get.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Get.html
index 8cfd9cc..eeba7df 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Get.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Get.html
@@ -367,45 +367,45 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
-<div class="block">Test for the existence of columns in the table, as specified by the Get.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
 <div class="block">Test for the existence of columns in the table, as specified by the Get.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
-<div class="block">Extracts certain cells from a given row.</div>
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
+<div class="block">Test for the existence of columns in the table, as specified by the Get.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#exists-org.apache.hadoop.hbase.client.Get-">exists</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
 <div class="block">Extracts certain cells from a given row.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
+<div class="block">Extracts certain cells from a given row.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#get-org.apache.hadoop.hbase.client.Get-int-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get,
@@ -425,21 +425,21 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>default boolean[]</code></td>
+<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
+<div class="block">Test for the existence of columns in the table, as specified by the Gets.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
 <div class="block">Test for the existence of columns in the table, as specified by the Gets.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean[]</code></td>
 <td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>default boolean[]</code></td>
-<td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#exists-java.util.List-">exists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
-<div class="block">Test for the existence of columns in the table, as specified by the Gets.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#existsAll-java.util.List-">existsAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
@@ -447,29 +447,29 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
-<div class="block">Extracts certain cells from the given rows, in batch.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
 <div class="block">Extracts specified cells from the given rows, as a batch.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
+<div class="block">Extracts certain cells from the given rows, in batch.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getAll-java.util.List-">getAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Hbck.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Hbck.html
index f66f9f6..eac77e3 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Hbck.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Hbck.html
@@ -179,13 +179,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html" title="interface in org.apache.hadoop.hbase.client">Hbck</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>
-<div class="block">Retrieve an Hbck implementation to fix an HBase cluster.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html" title="interface in org.apache.hadoop.hbase.client">Hbck</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ConnectionOverAsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ConnectionOverAsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnection.html#getHbck-org.apache.hadoop.hbase.ServerName-">getHbck</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;masterServer)</code>
+<div class="block">Retrieve an Hbck implementation to fix an HBase cluster.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html" title="interface in org.apache.hadoop.hbase.client">Hbck</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Increment.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Increment.html
index 933a9f2..3119fb0 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Increment.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Increment.html
@@ -222,29 +222,29 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Increment-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
-<div class="block">Increments one or more columns within a single row.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
 <div class="block">Increments one or more columns within a single row.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
+<div class="block">Increments one or more columns within a single row.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html
index e7baa1c..c3df3a4 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/IsolationLevel.html
@@ -147,23 +147,23 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>
 <div class="block">Set the isolation level for this query.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/LogEntry.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/LogEntry.html
index eb89e6d..e94340f 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/LogEntry.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/LogEntry.html
@@ -155,6 +155,14 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
+             <a href="../../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
+             int&nbsp;limit,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
@@ -164,7 +172,7 @@
 <div class="block">Retrieve recent online records from HMaster / RegionServers.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
@@ -172,17 +180,9 @@
              int&nbsp;limit,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
-             <a href="../../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
-             int&nbsp;limit,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
              <a href="../../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
              int&nbsp;limit,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/MasterSwitchType.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/MasterSwitchType.html
index 1a42d39..b8f9389 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/MasterSwitchType.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/MasterSwitchType.html
@@ -221,19 +221,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#isSplitOrMergeEnabled-org.apache.hadoop.hbase.client.MasterSwitchType-">isSplitOrMergeEnabled</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client">MasterSwitchType</a>&nbsp;switchType)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitOrMergeTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/SplitOrMergeTracker.html#isSplitOrMergeEnabled-org.apache.hadoop.hbase.client.MasterSwitchType-">isSplitOrMergeEnabled</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client">MasterSwitchType</a>&nbsp;switchType)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#isSplitOrMergeEnabled-org.apache.hadoop.hbase.client.MasterSwitchType-">isSplitOrMergeEnabled</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client">MasterSwitchType</a>&nbsp;switchType)</code>
 <div class="block">Queries the state of the <a href="../../../../../../org/apache/hadoop/hbase/master/SplitOrMergeTracker.html" title="class in org.apache.hadoop.hbase.master"><code>SplitOrMergeTracker</code></a>.</div>
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#isSplitOrMergeEnabled-org.apache.hadoop.hbase.client.MasterSwitchType-">isSplitOrMergeEnabled</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client">MasterSwitchType</a>&nbsp;switchType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SplitOrMergeTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/SplitOrMergeTracker.html#isSplitOrMergeEnabled-org.apache.hadoop.hbase.client.MasterSwitchType-">isSplitOrMergeEnabled</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client">MasterSwitchType</a>&nbsp;switchType)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html#postSetSplitOrMergeEnabled-boolean-org.apache.hadoop.hbase.client.MasterSwitchType-">postSetSplitOrMergeEnabled</a></span>(boolean&nbsp;newValue,
                           <a href="../../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client">MasterSwitchType</a>&nbsp;switchType)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/MetricsConnection.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/MetricsConnection.html
index 39a633d..8f19e5f 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/MetricsConnection.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/MetricsConnection.html
@@ -205,11 +205,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/MetricsConnection.html" title="class in org.apache.hadoop.hbase.client">MetricsConnection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#metrics">metrics</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcConnection.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/MetricsConnection.html" title="class in org.apache.hadoop.hbase.client">MetricsConnection</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcConnection.html#metrics">metrics</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html
index 773684e..f056325 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Mutation.html
@@ -235,11 +235,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncBufferedMutatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutatorImpl.html#mutations">mutations</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RowMutations.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html#mutations">mutations</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RowMutations.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html#mutations">mutations</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncBufferedMutatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutatorImpl.html#mutations">mutations</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -357,19 +357,19 @@
 <td class="colLast"><span class="typeNameLabel">RowMutations.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html#add-java.util.List-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncBufferedMutatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutatorImpl.html#mutate-java.util.List-">mutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedMutatorOverAsyncBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/BufferedMutatorOverAsyncBufferedMutator.html#mutate-java.util.List-">mutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/BufferedMutator.html#mutate-java.util.List-">mutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations)</code>
 <div class="block">Send some <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client"><code>Mutation</code></a>s to the table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncBufferedMutatorImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutatorImpl.html#mutate-java.util.List-">mutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncBufferedMutator.html#mutate-java.util.List-">mutate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations)</code>
@@ -712,18 +712,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#addMutation-org.apache.hadoop.hbase.client.Mutation-">addMutation</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;mutation)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#addMutation-org.apache.hadoop.hbase.client.Mutation-">addMutation</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;mutation)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#addMutation-org.apache.hadoop.hbase.client.Mutation-">addMutation</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;mutation)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">OperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.html#addMutation-org.apache.hadoop.hbase.client.Mutation-">addMutation</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;mutation)</code>
 <div class="block">Add a mutation result.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#addMutation-org.apache.hadoop.hbase.client.Mutation-">addMutation</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;mutation)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static long</code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaUtil.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaUtil.html#calculateMutationSize-org.apache.hadoop.hbase.client.Mutation-">calculateMutationSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;mutation)</code>&nbsp;</td>
@@ -750,7 +750,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisableTableViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/DisableTableViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MissingSnapshotViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -762,11 +762,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MissingSnapshotViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoInsertsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/NoInsertsViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoInsertsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/NoInsertsViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisableTableViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/DisableTableViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/NonceGenerator.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/NonceGenerator.html
index 203f7b8..2b71c66 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/NonceGenerator.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/NonceGenerator.html
@@ -149,14 +149,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/NonceGenerator.html" title="interface in org.apache.hadoop.hbase.client">NonceGenerator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getNonceGenerator--">getNonceGenerator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/NonceGenerator.html" title="interface in org.apache.hadoop.hbase.client">NonceGenerator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#getNonceGenerator--">getNonceGenerator</a></span>()</code>
 <div class="block">Get the nonce generator for this connection.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/NonceGenerator.html" title="interface in org.apache.hadoop.hbase.client">NonceGenerator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getNonceGenerator--">getNonceGenerator</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/NonceGenerator.html" title="interface in org.apache.hadoop.hbase.client">NonceGenerator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncConnectionImpl.html#getNonceGenerator--">getNonceGenerator</a></span>()</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/NormalizeTableFilterParams.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/NormalizeTableFilterParams.html
index f25c073..eaaa75e 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/NormalizeTableFilterParams.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/NormalizeTableFilterParams.html
@@ -132,22 +132,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#normalize-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-">normalize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#normalize-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-">normalize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp)</code>
 <div class="block">Invoke region normalizer.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#normalize-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-">normalize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#normalize-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-">normalize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#normalize-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-">normalize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#normalize-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-">normalize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.Builder.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams.Builder</a></code></td>
@@ -169,16 +169,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#normalizeRegions-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-boolean-">normalizeRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp,
+                boolean&nbsp;isHighPriority)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#normalizeRegions-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-boolean-">normalizeRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp,
                 boolean&nbsp;isHighPriority)</code>
 <div class="block">Perform normalization of cluster.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#normalizeRegions-org.apache.hadoop.hbase.client.NormalizeTableFilterParams-boolean-">normalizeRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/NormalizeTableFilterParams.html" title="class in org.apache.hadoop.hbase.client">NormalizeTableFilterParams</a>&nbsp;ntfp,
-                boolean&nbsp;isHighPriority)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Put.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Put.html
index ceffa09..efa2e64 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Put.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Put.html
@@ -510,40 +510,28 @@
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#build-org.apache.hadoop.hbase.client.Put-">build</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
-<div class="block">Puts some data to the table.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
 <div class="block">Puts some data in the table.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
+<div class="block">Puts some data to the table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#thenPut-org.apache.hadoop.hbase.client.Put-">thenPut</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#thenPut-org.apache.hadoop.hbase.client.Put-">thenPut</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#put-org.apache.hadoop.hbase.client.Put-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -559,6 +547,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#thenPut-org.apache.hadoop.hbase.client.Put-">thenPut</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#thenPut-org.apache.hadoop.hbase.client.Put-">thenPut</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.CheckAndMutateBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.CheckAndMutateBuilderImpl.html#thenPut-org.apache.hadoop.hbase.client.Put-">thenPut</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&nbsp;put)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -580,29 +580,29 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
-<div class="block">Puts some data in the table, in batch.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
 <div class="block">Batch puts the specified data into the table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
+<div class="block">Puts some data in the table, in batch.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#put-java.util.List-">put</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#putAll-java.util.List-">putAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a>&gt;&nbsp;puts)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionInfo.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionInfo.html
index fb15bab..e4bce63 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionInfo.html
@@ -839,16 +839,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html#UNDEFINED">UNDEFINED</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html#UNDEFINED">UNDEFINED</a></span></code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
 <div class="block"><span class="deprecationComment">since 2.3.2/3.0.0; to be removed in 4.0.0 with no replacement (for internal use).</span></div>
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfoBuilder.html#UNDEFINED">UNDEFINED</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing fields, and an explanation">
@@ -959,22 +959,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get all the online regions on a region server.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.ServerName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
@@ -983,22 +983,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get the regions of a given table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegions-org.apache.hadoop.hbase.TableName-">getRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
@@ -1752,17 +1752,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredNodeLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodeLoadBalancer.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredNodesPlan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPlan.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>
 <div class="block">Returns the list of favored region server for this region based on the plan</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredNodesManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredNodeLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodeLoadBalancer.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FavoredNodesManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
@@ -2051,13 +2051,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -2496,6 +2496,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#mergeRegions-org.apache.hadoop.hbase.client.RegionInfo:A-boolean-long-long-">mergeRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[]&nbsp;regionsToMerge,
+            boolean&nbsp;forcible,
+            long&nbsp;ng,
+            long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#mergeRegions-org.apache.hadoop.hbase.client.RegionInfo:A-boolean-long-long-">mergeRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[]&nbsp;regionsToMerge,
             boolean&nbsp;forcible,
             long&nbsp;nonceGroup,
@@ -2503,13 +2510,6 @@
 <div class="block">Merge regions in a table.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#mergeRegions-org.apache.hadoop.hbase.client.RegionInfo:A-boolean-long-long-">mergeRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[]&nbsp;regionsToMerge,
-            boolean&nbsp;forcible,
-            long&nbsp;ng,
-            long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html#postAssign-org.apache.hadoop.hbase.client.RegionInfo-">postAssign</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
@@ -2682,6 +2682,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#splitRegion-org.apache.hadoop.hbase.client.RegionInfo-byte:A-long-long-">splitRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+           byte[]&nbsp;splitRow,
+           long&nbsp;nonceGroup,
+           long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#splitRegion-org.apache.hadoop.hbase.client.RegionInfo-byte:A-long-long-">splitRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
            byte[]&nbsp;splitRow,
            long&nbsp;nonceGroup,
@@ -2689,13 +2696,6 @@
 <div class="block">Split a region.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#splitRegion-org.apache.hadoop.hbase.client.RegionInfo-byte:A-long-long-">splitRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
-           byte[]&nbsp;splitRow,
-           long&nbsp;nonceGroup,
-           long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#warmUpRegion-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.client.RegionInfo-">warmUpRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
@@ -2826,13 +2826,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#regionInfo">regionInfo</a></span></code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionStateNode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html#regionInfo">regionInfo</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStateNode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html#regionInfo">regionInfo</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#regionInfo">regionInfo</a></span></code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[]</code></td>
@@ -2914,17 +2914,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#getRegionInfo--">getRegionInfo</a></span>()</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionStateNode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStateNode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionStates.RegionFailedOpen.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionFailedOpen.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStates.RegionFailedOpen.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionFailedOpen.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#getRegionInfo--">getRegionInfo</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
@@ -3156,13 +3156,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateStore.html#deleteRegion-org.apache.hadoop.hbase.client.RegionInfo-">deleteRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
-<div class="block">Deletes the specified region.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionStates.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.html#deleteRegion-org.apache.hadoop.hbase.client.RegionInfo-">deleteRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStates.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.html#deleteRegion-org.apache.hadoop.hbase.client.RegionInfo-">deleteRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateStore.html#deleteRegion-org.apache.hadoop.hbase.client.RegionInfo-">deleteRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
+<div class="block">Deletes the specified region.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static long</code></td>
@@ -3590,13 +3590,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateStore.html#deleteRegions-java.util.List-">deleteRegions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions)</code>
-<div class="block">Deletes the specified regions.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionStates.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.html#deleteRegions-java.util.List-">deleteRegions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfos)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionStates.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.html#deleteRegions-java.util.List-">deleteRegions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfos)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateStore.html#deleteRegions-java.util.List-">deleteRegions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions)</code>
+<div class="block">Deletes the specified regions.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
@@ -3771,13 +3771,13 @@
 <td class="colLast"><span class="typeNameLabel">RegionHDFSBlockLocationFinder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html#cache">cache</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#clusterState">clusterState</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterLoadState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterLoadState.html#clusterState">clusterState</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#clusterState">clusterState</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.BalanceInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.BalanceInfo.html#hriList">hriList</a></span></code>&nbsp;</td>
@@ -3861,13 +3861,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
@@ -3875,6 +3868,13 @@
  available/online servers available for assignment.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
@@ -3882,6 +3882,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
+                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
+ simple round-robin assignment.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Round robin assignment: Segregate the regions into two types:
@@ -3889,14 +3897,6 @@
  1.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
-                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
- simple round-robin assignment.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
@@ -4026,16 +4026,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
+<div class="block">Used to assign a single region to a random server.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Used to assign a single region to a random server.</div>
+<div class="block">If we have favored nodes for a region, we will return one of the FN as destination.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -4136,11 +4136,10 @@
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#balanceCluster-java.util.Map-">balanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
- implementation.</div>
+<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -4153,16 +4152,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
+<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
+ implementation.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
+<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -4211,27 +4211,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>
 <div class="block">Called before actually executing balanceCluster.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/SimpleLoadBalancer.html#preBalanceCluster-java.util.Map-">preBalanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionHDFSBlockLocationFinder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html#refreshAndWait-java.util.Collection-">refreshAndWait</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;hris)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
@@ -4239,6 +4232,13 @@
  available/online servers available for assignment.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
@@ -4264,6 +4264,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
+                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
+<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
+ simple round-robin assignment.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
 <div class="block">Round robin assignment: Segregate the regions into two types:
@@ -4271,14 +4279,6 @@
  1.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
-                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
-<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
- simple round-robin assignment.</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
@@ -4944,11 +4944,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#newRegions">newRegions</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#newRegions">newRegions</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#newRegions">newRegions</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#newRegions">newRegions</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
@@ -4991,11 +4991,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#getFirstRegionInfo--">getFirstRegionInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#getFirstRegionInfo--">getFirstRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#getFirstRegionInfo--">getFirstRegionInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#getFirstRegionInfo--">getFirstRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
@@ -5031,6 +5031,13 @@
               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+              <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
+              <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
               <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
@@ -5039,13 +5046,6 @@
 <div class="block">Create region layout in file system.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-              <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
-              <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CreateTableProcedure.CreateHdfsRegions.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html#createHdfsRegions-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.TableName-java.util.List-">createHdfsRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -5192,6 +5192,13 @@
               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+              <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
+              <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
               <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
@@ -5200,13 +5207,6 @@
 <div class="block">Create region layout in file system.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-              <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
-              <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CreateTableProcedure.CreateHdfsRegions.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html#createHdfsRegions-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.TableName-java.util.List-">createHdfsRegions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -5514,11 +5514,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
@@ -5541,35 +5541,35 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
 <div class="block">Returns the size for the give region if one exists.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#incrementRegionSize-org.apache.hadoop.hbase.client.RegionInfo-long-">incrementRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
-                   long&nbsp;delta)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html#incrementRegionSize-org.apache.hadoop.hbase.client.RegionInfo-long-">incrementRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                    long&nbsp;delta)</code>
 <div class="block">Atomically alter the size of a region.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#incrementRegionSize-org.apache.hadoop.hbase.client.RegionInfo-long-">incrementRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                    long&nbsp;delta)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#incrementRegionSize-org.apache.hadoop.hbase.client.RegionInfo-long-">incrementRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+                   long&nbsp;delta)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html#onRegionMerged-org.apache.hadoop.hbase.client.RegionInfo-">onRegionMerged</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;mergedRegion)</code>&nbsp;</td>
@@ -5584,35 +5584,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#put-org.apache.hadoop.hbase.client.RegionInfo-long-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
-   long&nbsp;size)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html#put-org.apache.hadoop.hbase.client.RegionInfo-long-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
    long&nbsp;size)</code>
 <div class="block">Atomically sets the given <code>size</code> for a region.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#put-org.apache.hadoop.hbase.client.RegionInfo-long-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
    long&nbsp;size)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#put-org.apache.hadoop.hbase.client.RegionInfo-long-">put</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
+   long&nbsp;size)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
 <div class="block">Removes the mapping for the given key, returning the value if one exists in the store.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -5637,13 +5637,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">QuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSnapshotStore.html#setRegionUsage-java.util.Map-">setRegionUsage</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;regionUsage)</code>
-<div class="block">Updates <code>this</code> with the latest snapshot of filesystem use by region.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TableQuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html#setRegionUsage-java.util.Map-">setRegionUsage</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;regionUsage)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableQuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html#setRegionUsage-java.util.Map-">setRegionUsage</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;regionUsage)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">QuotaSnapshotStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSnapshotStore.html#setRegionUsage-java.util.Map-">setRegionUsage</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;regionUsage)</code>
+<div class="block">Updates <code>this</code> with the latest snapshot of filesystem use by region.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -5708,15 +5708,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreConfigInformation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScanner.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
@@ -5724,14 +5716,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScanner.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -5744,8 +5728,24 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreConfigInformation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#getRegionInfo--">getRegionInfo</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html#getRegionInfoForFS--">getRegionInfoForFS</a></span>()</code>&nbsp;</td>
@@ -5945,11 +5945,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.fs.Path</code></td>
@@ -6160,18 +6160,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfo,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
-          <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfos,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
           <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>
 <div class="block">Master based locks on namespaces/tables/regions.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfo,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
+          <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -6404,6 +6404,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>protected long</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
+      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
+      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edits,
+      boolean&nbsp;inMemstore)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract long</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;info,
       <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
@@ -6412,13 +6419,6 @@
 <div class="block">Append a set of edits to the WAL.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected long</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
-      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
-      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edits,
-      boolean&nbsp;inMemstore)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected long</code></td>
 <td class="colLast"><span class="typeNameLabel">FSHLog.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/FSHLog.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
@@ -7968,20 +7968,12 @@
 <td class="colLast"><span class="typeNameLabel">WALEdit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html#getRowForRegion-org.apache.hadoop.hbase.client.RegionInfo-">getRowForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html" title="type parameter in AbstractFSWALProvider">T</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
@@ -7989,7 +7981,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html" title="type parameter in AbstractFSWALProvider">T</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLoadStats.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLoadStats.html
index 61c8ade..0816db0 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLoadStats.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLoadStats.html
@@ -146,11 +146,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StatisticTrackable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/StatisticTrackable.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
-                 byte[]&nbsp;region,
-                 <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>
-<div class="block">Update stats per region.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">MetricsConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/MetricsConnection.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+                 byte[]&nbsp;regionName,
+                 <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -160,9 +158,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/MetricsConnection.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-                 byte[]&nbsp;regionName,
-                 <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StatisticTrackable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/StatisticTrackable.html#updateRegionStats-org.apache.hadoop.hbase.ServerName-byte:A-org.apache.hadoop.hbase.client.RegionLoadStats-">updateRegionStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
+                 byte[]&nbsp;region,
+                 <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLoadStats.html" title="class in org.apache.hadoop.hbase.client">RegionLoadStats</a>&nbsp;stats)</code>
+<div class="block">Update stats per region.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocateType.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocateType.html
index 2834778..76616d2 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocateType.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocateType.html
@@ -110,11 +110,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.html#locateType">locateType</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.LocateRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.LocateRequest.html#locateType">locateType</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncNonMetaRegionLocator.LocateRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncNonMetaRegionLocator.LocateRequest.html#locateType">locateType</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.SingleRequestCallerBuilder.html#locateType">locateType</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -221,20 +221,20 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#select-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-">select</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tablename,
-      byte[]&nbsp;row,
-      <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a>&nbsp;locateType)</code>
-<div class="block">When it looks up a location, it will call this method to find a replica region to go.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSelector.html#select-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-">select</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tablename,
       byte[]&nbsp;row,
       <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a>&nbsp;locateType)</code>
 <div class="block">Select a catalog replica region where client go to loop up the input row key.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">CatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.html#select-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-">select</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tablename,
+      byte[]&nbsp;row,
+      <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client">RegionLocateType</a>&nbsp;locateType)</code>
+<div class="block">When it looks up a location, it will call this method to find a replica region to go.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) static &lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;T&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ConnectionUtils.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ConnectionUtils.html#timelineConsistentRead-org.apache.hadoop.hbase.client.AsyncRegionLocator-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.Query-byte:A-org.apache.hadoop.hbase.client.RegionLocateType-java.util.function.Function-long-long-org.apache.hbase.thirdparty.io.netty.util.Timer-java.util.Optional-">timelineConsistentRead</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRegionLocator.html" title="class in org.apache.hadoop.hbase.client">AsyncRegionLocator</a>&nbsp;locator,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocator.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocator.html
index 308d3bd..8ed4590 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocator.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/RegionLocator.html
@@ -184,14 +184,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getRegionLocator--">getRegionLocator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getRegionLocator--">getRegionLocator</a></span>()</code>
 <div class="block">Gets the <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client"><code>RegionLocator</code></a> for this table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getRegionLocator--">getRegionLocator</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SharedConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SharedConnection.html#getRegionLocator-org.apache.hadoop.hbase.TableName-">getRegionLocator</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
@@ -248,13 +248,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#regionLocator">regionLocator</a></span></code>
-<div class="block">The <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client"><code>RegionLocator</code></a> of the table.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.TableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.TableInfo.html#regionLocator">regionLocator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.TableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.TableInfo.html#regionLocator">regionLocator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#regionLocator">regionLocator</a></span></code>
+<div class="block">The <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client"><code>RegionLocator</code></a> of the table.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -266,15 +266,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.TableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.TableInfo.html#getRegionLocator--">getRegionLocator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#getRegionLocator--">getRegionLocator</a></span>()</code>
 <div class="block">Allows subclasses to get the <a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client"><code>RegionLocator</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.TableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.TableInfo.html#getRegionLocator--">getRegionLocator</a></span>()</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/RequestController.Checker.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/RequestController.Checker.html
index 5c20b77..6969e1e 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/RequestController.Checker.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/RequestController.Checker.html
@@ -106,11 +106,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RequestController.Checker.html" title="interface in org.apache.hadoop.hbase.client">RequestController.Checker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SimpleRequestController.html#newChecker--">newChecker</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RequestController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RequestController.html#newChecker--">newChecker</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/RequestController.Checker.html" title="interface in org.apache.hadoop.hbase.client">RequestController.Checker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RequestController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RequestController.html#newChecker--">newChecker</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SimpleRequestController.html#newChecker--">newChecker</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../../org/apache/hadoop/hbase/client/RequestController.Checker.html" title="interface in org.apache.hadoop.hbase.client">RequestController.Checker</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Result.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Result.html
index f2c1eed..9bc1cb6 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Result.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Result.html
@@ -426,11 +426,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CheckAndMutateResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html#result">result</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleResponse.Entry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SingleResponse.Entry.html#result">result</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleResponse.Entry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SingleResponse.Entry.html#result">result</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CheckAndMutateResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html#result">result</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -464,36 +464,36 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
-         boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">BatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/BatchScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
          boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">ScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
          boolean&nbsp;isHeartbeatMessage)</code>
 <div class="block">Add the given results to cache and get valid results back.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
+         boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">CompleteScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CompleteScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
          boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>
 <div class="block">Appends values to one or more columns within a single row.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#append-org.apache.hadoop.hbase.client.Append-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a>&nbsp;append)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompleteScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CompleteScanResultCache.html#combine--">combine</a></span>()</code>&nbsp;</td>
@@ -561,53 +561,53 @@
            <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;keepCellsAfter)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>
 <div class="block">Extracts certain cells from a given row.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-org.apache.hadoop.hbase.client.Get-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&nbsp;get)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>
 <div class="block">Extracts specified cells from the given rows, as a batch.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CheckAndMutateResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html#getResult--">getResult</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#get-java.util.List-">get</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a>&gt;&nbsp;gets)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SingleResponse.Entry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/SingleResponse.Entry.html#getResult--">getResult</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CheckAndMutateResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutateResult.html#getResult--">getResult</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>
 <div class="block">Increments one or more columns within a single row.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#increment-org.apache.hadoop.hbase.client.Increment-">increment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a>&nbsp;increment)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>
 <div class="block">Performs multiple mutations atomically on a single row.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ClientSideRegionScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ClientSideRegionScanner.html#next--">next</a></span>()</code>&nbsp;</td>
@@ -769,21 +769,21 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
-         boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">BatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/BatchScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
          boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">ScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
          boolean&nbsp;isHeartbeatMessage)</code>
 <div class="block">Add the given results to cache and get valid results back.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
+         boolean&nbsp;isHeartbeatMessage)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">CompleteScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CompleteScanResultCache.html#addAndGet-org.apache.hadoop.hbase.client.Result:A-boolean-">addAndGet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>[]&nbsp;results,
@@ -850,11 +850,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#recordLastResult-org.apache.hadoop.hbase.client.Result-">recordLastResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/BatchScanResultCache.html#recordLastResult-org.apache.hadoop.hbase.client.Result-">recordLastResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">BatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/BatchScanResultCache.html#recordLastResult-org.apache.hadoop.hbase.client.Result-">recordLastResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AllowPartialScanResultCache.html#recordLastResult-org.apache.hadoop.hbase.client.Result-">recordLastResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
@@ -1128,7 +1128,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#createValue--">createValue</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#createValue--">createValue</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
@@ -1136,7 +1136,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#createValue--">createValue</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#createValue--">createValue</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1149,23 +1149,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
-               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
-<div class="block">Builds a TableRecordReader.</div>
-</td>
+               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
                org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
-               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
+               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
+<div class="block">Builds a TableRecordReader.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -1184,6 +1184,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -1191,7 +1198,7 @@
 <div class="block">Extract the grouping columns from value to construct a new key.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
@@ -1200,16 +1207,9 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
     <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1219,7 +1219,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
     <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -1233,6 +1233,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -1240,7 +1247,7 @@
 <div class="block">Extract the grouping columns from value to construct a new key.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
@@ -1249,13 +1256,6 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -1284,11 +1284,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#value">value</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#value">value</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#value">value</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#value">value</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1330,13 +1330,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.RecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.RecordReader.html#getCurrentValue--">getCurrentValue</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#getCurrentValue--">getCurrentValue</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#getCurrentValue--">getCurrentValue</a></span>()</code>
-<div class="block">Returns the current value.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRegionRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionRecordReader.html#getCurrentValue--">getCurrentValue</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
@@ -1346,11 +1344,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#getCurrentValue--">getCurrentValue</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.RecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.RecordReader.html#getCurrentValue--">getCurrentValue</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRegionRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionRecordReader.html#getCurrentValue--">getCurrentValue</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#getCurrentValue--">getCurrentValue</a></span>()</code>
+<div class="block">Returns the current value.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -1363,16 +1363,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
+                  org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
                   org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>
 <div class="block">Builds a <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce"><code>TableRecordReader</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
-                  org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MultiTableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableInputFormatBase.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
@@ -1434,14 +1434,14 @@
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncTable.SyncMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">Import.Importer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/Import.Importer.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">Import.Importer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/Import.Importer.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncTable.SyncMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>&nbsp;</td>
 </tr>
@@ -1453,21 +1453,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">GroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/GroupingTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
-   org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>
-<div class="block">Extract the grouping columns from value to construct a new key.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>
 <div class="block">Maps the data.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/IdentityTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
@@ -1475,6 +1467,14 @@
 <div class="block">Pass the key, value to reduce.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">GroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/GroupingTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
+   org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>
+<div class="block">Extract the grouping columns from value to construct a new key.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Import.CellSortImporter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/Import.CellSortImporter.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
@@ -1847,18 +1847,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#addGetResult-org.apache.hadoop.hbase.client.Result-">addGetResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#addGetResult-org.apache.hadoop.hbase.client.Result-">addGetResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#addGetResult-org.apache.hadoop.hbase.client.Result-">addGetResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">OperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.html#addGetResult-org.apache.hadoop.hbase.client.Result-">addGetResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>
 <div class="block">Add a get result.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#addGetResult-org.apache.hadoop.hbase.client.Result-">addGetResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static long</code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaUtil.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaUtil.html#calculateResultSize-org.apache.hadoop.hbase.client.Result-">calculateResultSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</code>&nbsp;</td>
@@ -1949,18 +1949,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#addScanResult-java.util.List-">addScanResult</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;results)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#addScanResult-java.util.List-">addScanResult</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;results)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#addScanResult-java.util.List-">addScanResult</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;results)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">OperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.html#addScanResult-java.util.List-">addScanResult</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;results)</code>
 <div class="block">Add a scan result.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#addScanResult-java.util.List-">addScanResult</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;results)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static long</code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaUtil.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaUtil.html#calculateResultSize-java.util.List-">calculateResultSize</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;results)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html
index b0dc6bf..1cbfc9a 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/ResultScanner.html
@@ -189,31 +189,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>
-<div class="block">Gets a scanner on the current table for the given family.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>
 <div class="block">Gets a scanner on the current table for the given family.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
-          byte[]&nbsp;qualifier)</code>
-<div class="block">Gets a scanner on the current table for the given family and qualifier.</div>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>
+<div class="block">Gets a scanner on the current table for the given family.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
-          byte[]&nbsp;qualifier)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-byte:A-">getScanner</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
@@ -223,30 +211,42 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
-<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
+          byte[]&nbsp;qualifier)</code>
+<div class="block">Gets a scanner on the current table for the given family and qualifier.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-byte:A-byte:A-">getScanner</a></span>(byte[]&nbsp;family,
+          byte[]&nbsp;qualifier)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a>
  object.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Row.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Row.html
index 7d0b121..7b1e2ab 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Row.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Row.html
@@ -308,17 +308,17 @@
      long&nbsp;rpcTimeoutNs)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batch-java.util.List-java.lang.Object:A-">batch</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
-     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#batch-java.util.List-java.lang.Object:A-">batch</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results)</code>
 <div class="block">Method that does a batch call on Deletes, Gets, Puts, Increments, Appends, RowMutations.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batch-java.util.List-java.lang.Object:A-">batch</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
+     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default &lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#batchAll-java.util.List-">batchAll</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions)</code>
@@ -326,12 +326,6 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>&lt;R&gt;&nbsp;void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batchCallback-java.util.List-java.lang.Object:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCallback</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results,
-             <a href="../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default &lt;R&gt;&nbsp;void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#batchCallback-java.util.List-java.lang.Object:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCallback</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results,
@@ -345,6 +339,12 @@
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>&lt;R&gt;&nbsp;void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batchCallback-java.util.List-java.lang.Object:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCallback</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results,
+             <a href="../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RetriesExhaustedWithDetailsException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RetriesExhaustedWithDetailsException.html#getDesc-java.util.List-java.util.List-java.util.List-">getDesc</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&gt;&nbsp;exceptions,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html
index 580c610..c0bb4ee 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/RowMutations.html
@@ -160,40 +160,28 @@
          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;RES,RESP&gt;&nbsp;respConverter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
-<div class="block">Performs multiple mutations atomically on a single row.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>
 <div class="block">Performs multiple mutations atomically on a single row.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
+<div class="block">Performs multiple mutations atomically on a single row.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutations)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#thenMutate-org.apache.hadoop.hbase.client.RowMutations-">thenMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#thenMutate-org.apache.hadoop.hbase.client.RowMutations-">thenMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#mutateRow-org.apache.hadoop.hbase.client.RowMutations-">mutateRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;rm)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -209,6 +197,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#thenMutate-org.apache.hadoop.hbase.client.RowMutations-">thenMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#thenMutate-org.apache.hadoop.hbase.client.RowMutations-">thenMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.CheckAndMutateBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.CheckAndMutateBuilderImpl.html#thenMutate-org.apache.hadoop.hbase.client.RowMutations-">thenMutate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RowMutations.html" title="class in org.apache.hadoop.hbase.client">RowMutations</a>&nbsp;mutation)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.ReadType.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.ReadType.html
index aa3c4b9..6223283 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.ReadType.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.ReadType.html
@@ -132,11 +132,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#getReadType--">getReadType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getReadType--">getReadType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getReadType--">getReadType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#getReadType--">getReadType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a></code></td>
@@ -162,14 +162,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-">setReadType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;readType)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-">setReadType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;readType)</code>
 <div class="block">Set the read type for this scan.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-">setReadType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;readType)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.html
index 31fa0cf..d061ceb 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Scan.html
@@ -327,20 +327,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#scan">scan</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#scan">scan</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#scan">scan</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#scan">scan</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#scan">scan</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#scan">scan</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -352,26 +352,26 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#addColumn-byte:A-byte:A-">addColumn</a></span>(byte[]&nbsp;family,
-         byte[]&nbsp;qualifier)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#addColumn-byte:A-byte:A-">addColumn</a></span>(byte[]&nbsp;family,
          byte[]&nbsp;qualifier)</code>
 <div class="block">Get the column from the specified family with the specified qualifier.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#addFamily-byte:A-">addFamily</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#addColumn-byte:A-byte:A-">addColumn</a></span>(byte[]&nbsp;family,
+         byte[]&nbsp;qualifier)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#addFamily-byte:A-">addFamily</a></span>(byte[]&nbsp;family)</code>
 <div class="block">Get all columns from the specified family.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#addFamily-byte:A-">addFamily</a></span>(byte[]&nbsp;family)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#createScanFromCursor-org.apache.hadoop.hbase.client.Cursor-">createScanFromCursor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Cursor.html" title="class in org.apache.hadoop.hbase.client">Cursor</a>&nbsp;cursor)</code>
@@ -380,71 +380,65 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#readAllVersions--">readAllVersions</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#readAllVersions--">readAllVersions</a></span>()</code>
 <div class="block">Get all available versions.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#readVersions-int-">readVersions</a></span>(int&nbsp;versions)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#readAllVersions--">readAllVersions</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#readVersions-int-">readVersions</a></span>(int&nbsp;versions)</code>
 <div class="block">Get up to the specified number of versions of each column.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#resetMvccReadPoint--">resetMvccReadPoint</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#readVersions-int-">readVersions</a></span>(int&nbsp;versions)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#resetMvccReadPoint--">resetMvccReadPoint</a></span>()</code>
 <div class="block">Set the mvcc read point to -1 which means do not use it.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#resetMvccReadPoint--">resetMvccReadPoint</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
-      <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
       <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAllowPartialResults-boolean-">setAllowPartialResults</a></span>(boolean&nbsp;allowPartialResults)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+      <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setAllowPartialResults-boolean-">setAllowPartialResults</a></span>(boolean&nbsp;allowPartialResults)</code>
 <div class="block">Setting whether the caller wants to see the partial results when server returns
  less-than-expected cells.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAsyncPrefetch-boolean-">setAsyncPrefetch</a></span>(boolean&nbsp;asyncPrefetch)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAllowPartialResults-boolean-">setAllowPartialResults</a></span>(boolean&nbsp;allowPartialResults)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setAsyncPrefetch-boolean-">setAsyncPrefetch</a></span>(boolean&nbsp;asyncPrefetch)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
 <div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. After building sync client upon async
@@ -452,73 +446,79 @@
 </div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAttribute-java.lang.String-byte:A-">setAttribute</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
-            byte[]&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAsyncPrefetch-boolean-">setAsyncPrefetch</a></span>(boolean&nbsp;asyncPrefetch)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setAttribute-java.lang.String-byte:A-">setAttribute</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
             byte[]&nbsp;value)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAttribute-java.lang.String-byte:A-">setAttribute</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+            byte[]&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setBatch-int-">setBatch</a></span>(int&nbsp;batch)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setBatch-int-">setBatch</a></span>(int&nbsp;batch)</code>
 <div class="block">Set the maximum number of cells to return for each call to next().</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setCacheBlocks-boolean-">setCacheBlocks</a></span>(boolean&nbsp;cacheBlocks)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setBatch-int-">setBatch</a></span>(int&nbsp;batch)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setCacheBlocks-boolean-">setCacheBlocks</a></span>(boolean&nbsp;cacheBlocks)</code>
 <div class="block">Set whether blocks should be cached for this Scan.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setCaching-int-">setCaching</a></span>(int&nbsp;caching)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setCacheBlocks-boolean-">setCacheBlocks</a></span>(boolean&nbsp;cacheBlocks)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setCaching-int-">setCaching</a></span>(int&nbsp;caching)</code>
 <div class="block">Set the number of rows for caching that will be passed to scanners.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setColumnFamilyTimeRange-byte:A-long-long-">setColumnFamilyTimeRange</a></span>(byte[]&nbsp;cf,
-                        long&nbsp;minStamp,
-                        long&nbsp;maxStamp)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setCaching-int-">setCaching</a></span>(int&nbsp;caching)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setColumnFamilyTimeRange-byte:A-long-long-">setColumnFamilyTimeRange</a></span>(byte[]&nbsp;cf,
                         long&nbsp;minStamp,
                         long&nbsp;maxStamp)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setColumnFamilyTimeRange-byte:A-long-long-">setColumnFamilyTimeRange</a></span>(byte[]&nbsp;cf,
+                        long&nbsp;minStamp,
+                        long&nbsp;maxStamp)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setConsistency-org.apache.hadoop.hbase.client.Consistency-">setConsistency</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client">Consistency</a>&nbsp;consistency)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
@@ -526,169 +526,165 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setFamilyMap-java.util.Map-">setFamilyMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;byte[]&gt;&gt;&nbsp;familyMap)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setFamilyMap-java.util.Map-">setFamilyMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;byte[]&gt;&gt;&nbsp;familyMap)</code>
 <div class="block">Setting the familyMap</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setFamilyMap-java.util.Map-">setFamilyMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;byte[]&gt;&gt;&nbsp;familyMap)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setId-java.lang.String-">setId</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setId-java.lang.String-">setId</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setId-java.lang.String-">setId</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;id)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setIsolationLevel-org.apache.hadoop.hbase.client.IsolationLevel-">setIsolationLevel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client">IsolationLevel</a>&nbsp;level)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>
 <div class="block">Set the limit of rows for this scan.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setLoadColumnFamiliesOnDemand-boolean-">setLoadColumnFamiliesOnDemand</a></span>(boolean&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setLoadColumnFamiliesOnDemand-boolean-">setLoadColumnFamiliesOnDemand</a></span>(boolean&nbsp;value)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setMaxResultSize-long-">setMaxResultSize</a></span>(long&nbsp;maxResultSize)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setLoadColumnFamiliesOnDemand-boolean-">setLoadColumnFamiliesOnDemand</a></span>(boolean&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setMaxResultSize-long-">setMaxResultSize</a></span>(long&nbsp;maxResultSize)</code>
 <div class="block">Set the maximum result size.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setMaxResultsPerColumnFamily-int-">setMaxResultsPerColumnFamily</a></span>(int&nbsp;limit)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setMaxResultSize-long-">setMaxResultSize</a></span>(long&nbsp;maxResultSize)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setMaxResultsPerColumnFamily-int-">setMaxResultsPerColumnFamily</a></span>(int&nbsp;limit)</code>
 <div class="block">Set the maximum number of values to return per row per Column Family</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setMvccReadPoint-long-">setMvccReadPoint</a></span>(long&nbsp;mvccReadPoint)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setMaxResultsPerColumnFamily-int-">setMaxResultsPerColumnFamily</a></span>(int&nbsp;limit)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setMvccReadPoint-long-">setMvccReadPoint</a></span>(long&nbsp;mvccReadPoint)</code>
 <div class="block">Set the mvcc read point used to open a scanner.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setNeedCursorResult-boolean-">setNeedCursorResult</a></span>(boolean&nbsp;needCursorResult)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setMvccReadPoint-long-">setMvccReadPoint</a></span>(long&nbsp;mvccReadPoint)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setNeedCursorResult-boolean-">setNeedCursorResult</a></span>(boolean&nbsp;needCursorResult)</code>
 <div class="block">When the server is slow or we scan a table with many deleted data or we use a sparse filter,
  the server will response heartbeat to prevent timeout.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setOneRowLimit--">setOneRowLimit</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setNeedCursorResult-boolean-">setNeedCursorResult</a></span>(boolean&nbsp;needCursorResult)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setOneRowLimit--">setOneRowLimit</a></span>()</code>
 <div class="block">Call this when you only want to get one row.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setPriority-int-">setPriority</a></span>(int&nbsp;priority)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setOneRowLimit--">setOneRowLimit</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setPriority-int-">setPriority</a></span>(int&nbsp;priority)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setRaw-boolean-">setRaw</a></span>(boolean&nbsp;raw)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setPriority-int-">setPriority</a></span>(int&nbsp;priority)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setRaw-boolean-">setRaw</a></span>(boolean&nbsp;raw)</code>
 <div class="block">Enable/disable "raw" mode for this scan.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-">setReadType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;readType)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setRaw-boolean-">setRaw</a></span>(boolean&nbsp;raw)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-">setReadType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;readType)</code>
 <div class="block">Set the read type for this scan.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReplicaId-int-">setReplicaId</a></span>(int&nbsp;id)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReadType-org.apache.hadoop.hbase.client.Scan.ReadType-">setReadType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client">Scan.ReadType</a>&nbsp;readType)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setReplicaId-int-">setReplicaId</a></span>(int&nbsp;Id)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReversed-boolean-">setReversed</a></span>(boolean&nbsp;reversed)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReplicaId-int-">setReplicaId</a></span>(int&nbsp;id)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setReversed-boolean-">setReversed</a></span>(boolean&nbsp;reversed)</code>
 <div class="block">Set whether this scan is a reversed one</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setRowOffsetPerColumnFamily-int-">setRowOffsetPerColumnFamily</a></span>(int&nbsp;offset)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setReversed-boolean-">setReversed</a></span>(boolean&nbsp;reversed)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setRowOffsetPerColumnFamily-int-">setRowOffsetPerColumnFamily</a></span>(int&nbsp;offset)</code>
 <div class="block">Set offset for the row per Column Family.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setRowPrefixFilter-byte:A-">setRowPrefixFilter</a></span>(byte[]&nbsp;rowPrefix)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setRowOffsetPerColumnFamily-int-">setRowOffsetPerColumnFamily</a></span>(int&nbsp;offset)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setRowPrefixFilter-byte:A-">setRowPrefixFilter</a></span>(byte[]&nbsp;rowPrefix)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
 <div class="block"><span class="deprecationComment">since 3.0.0. The scan result might be unexpected in some cases.
@@ -699,83 +695,87 @@
 </div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setScanMetricsEnabled-boolean-">setScanMetricsEnabled</a></span>(boolean&nbsp;enabled)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setRowPrefixFilter-byte:A-">setRowPrefixFilter</a></span>(byte[]&nbsp;rowPrefix)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setScanMetricsEnabled-boolean-">setScanMetricsEnabled</a></span>(boolean&nbsp;enabled)</code>
 <div class="block">Enable collection of <a href="../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics"><code>ScanMetrics</code></a>.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setTimeRange-long-long-">setTimeRange</a></span>(long&nbsp;minStamp,
-            long&nbsp;maxStamp)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setScanMetricsEnabled-boolean-">setScanMetricsEnabled</a></span>(boolean&nbsp;enabled)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setTimeRange-long-long-">setTimeRange</a></span>(long&nbsp;minStamp,
             long&nbsp;maxStamp)</code>
 <div class="block">Get versions of columns only within the specified timestamp range,
  [minStamp, maxStamp).</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setTimestamp-long-">setTimestamp</a></span>(long&nbsp;timestamp)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setTimeRange-long-long-">setTimeRange</a></span>(long&nbsp;minStamp,
+            long&nbsp;maxStamp)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setTimestamp-long-">setTimestamp</a></span>(long&nbsp;timestamp)</code>
 <div class="block">Get versions of columns with the specified timestamp.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStartRow-byte:A-">withStartRow</a></span>(byte[]&nbsp;startRow)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setTimestamp-long-">setTimestamp</a></span>(long&nbsp;timestamp)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#withStartRow-byte:A-">withStartRow</a></span>(byte[]&nbsp;startRow)</code>
 <div class="block">Set the start row of the scan.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStartRow-byte:A-boolean-">withStartRow</a></span>(byte[]&nbsp;startRow,
-            boolean&nbsp;inclusive)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStartRow-byte:A-">withStartRow</a></span>(byte[]&nbsp;startRow)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#withStartRow-byte:A-boolean-">withStartRow</a></span>(byte[]&nbsp;startRow,
             boolean&nbsp;inclusive)</code>
 <div class="block">Set the start row of the scan.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStopRow-byte:A-">withStopRow</a></span>(byte[]&nbsp;stopRow)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStartRow-byte:A-boolean-">withStartRow</a></span>(byte[]&nbsp;startRow,
+            boolean&nbsp;inclusive)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#withStopRow-byte:A-">withStopRow</a></span>(byte[]&nbsp;stopRow)</code>
 <div class="block">Set the stop row of the scan.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStopRow-byte:A-boolean-">withStopRow</a></span>(byte[]&nbsp;stopRow,
-           boolean&nbsp;inclusive)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStopRow-byte:A-">withStopRow</a></span>(byte[]&nbsp;stopRow)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#withStopRow-byte:A-boolean-">withStopRow</a></span>(byte[]&nbsp;stopRow,
            boolean&nbsp;inclusive)</code>
 <div class="block">Set the stop row of the scan.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#withStopRow-byte:A-boolean-">withStopRow</a></span>(byte[]&nbsp;stopRow,
+           boolean&nbsp;inclusive)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -798,30 +798,30 @@
 <td class="colLast"><span class="typeNameLabel">PackagePrivateFieldAccessor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/PackagePrivateFieldAccessor.html#getMvccReadPoint-org.apache.hadoop.hbase.client.Scan-">getMvccReadPoint</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
-<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a>
  object.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<div class="block">Returns a scanner on the current table as specified by the <a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> object.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ResultScanner.html" title="interface in org.apache.hadoop.hbase.client">ResultScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getScanner-org.apache.hadoop.hbase.client.Scan-">getScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AbstractClientScanner.html#initScanMetrics-org.apache.hadoop.hbase.client.Scan-">initScanMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
@@ -1429,13 +1429,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReader.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Sets the scan defining the actual details like columns etc.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReader.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#setScan-org.apache.hadoop.hbase.client.Scan-">setScan</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan)</code>
 <div class="block">Sets the scan defining the actual details like columns etc.</div>
 </td>
 </tr>
@@ -1961,9 +1961,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
+<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                long&nbsp;oldestUnexpiredTS)</code>&nbsp;</td>
+                long&nbsp;oldestUnexpiredTS)</code>
+<div class="block">This functionality should be resolved in the higher level which is
+ MemStoreScanner, currently returns true as default.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -1982,12 +1985,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
+<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                long&nbsp;oldestUnexpiredTS)</code>
-<div class="block">This functionality should be resolved in the higher level which is
- MemStoreScanner, currently returns true as default.</div>
-</td>
+                long&nbsp;oldestUnexpiredTS)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/ScanResultCache.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/ScanResultCache.html
index 2faee64..2cd7ede 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/ScanResultCache.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/ScanResultCache.html
@@ -134,15 +134,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/ScanResultCache.html" title="interface in org.apache.hadoop.hbase.client">ScanResultCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#resultCache">resultCache</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#resultCache">resultCache</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/ScanResultCache.html" title="interface in org.apache.hadoop.hbase.client">ScanResultCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#resultCache">resultCache</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#resultCache">resultCache</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/ScanResultCache.html" title="interface in org.apache.hadoop.hbase.client">ScanResultCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#resultCache">resultCache</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#resultCache">resultCache</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/ServerType.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/ServerType.html
index 457671d..fe47c58 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/ServerType.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/ServerType.html
@@ -141,6 +141,14 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
+             <a href="../../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
+             int&nbsp;limit,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
@@ -150,7 +158,7 @@
 <div class="block">Retrieve recent online records from HMaster / RegionServers.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
@@ -158,17 +166,9 @@
              int&nbsp;limit,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
-             <a href="../../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
-             int&nbsp;limit,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;filterParams)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/LogEntry.html" title="class in org.apache.hadoop.hbase.client">LogEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getLogEntries-java.util.Set-java.lang.String-org.apache.hadoop.hbase.client.ServerType-int-java.util.Map-">getLogEntries</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serverNames,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;logType,
              <a href="../../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client">ServerType</a>&nbsp;serverType,
              int&nbsp;limit,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/ServiceCaller.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/ServiceCaller.html
index 60a6627..199845c 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/ServiceCaller.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/ServiceCaller.html
@@ -126,12 +126,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -191,13 +191,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable,
                   <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>&lt;S,R&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;R&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#coprocessorService-java.util.function.Function-org.apache.hadoop.hbase.client.ServiceCaller-org.apache.hadoop.hbase.ServerName-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel,S&gt;&nbsp;stubMaker,
                   <a href="../../../../../../org/apache/hadoop/hbase/client/ServiceCaller.html" title="interface in org.apache.hadoop.hbase.client">ServiceCaller</a>&lt;S,R&gt;&nbsp;callable,
                   <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/SnapshotDescription.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/SnapshotDescription.html
index b088829..6092574 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/SnapshotDescription.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/SnapshotDescription.html
@@ -142,22 +142,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listSnapshots--">listSnapshots</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listSnapshots--">listSnapshots</a></span>()</code>
 <div class="block">List completed snapshots.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listSnapshots--">listSnapshots</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listSnapshots--">listSnapshots</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listSnapshots--">listSnapshots</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listSnapshots--">listSnapshots</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
@@ -166,22 +166,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>
 <div class="block">List all the completed snapshots matching the given pattern.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listSnapshots-java.util.regex.Pattern-">listSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
@@ -191,11 +191,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
@@ -206,6 +206,11 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
+                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</code>
@@ -213,19 +218,14 @@
  name regular expression.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
-                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableSnapshots-java.util.regex.Pattern-java.util.regex.Pattern-">listTableSnapshots</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;tableNamePattern,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;snapshotNamePattern)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -248,22 +248,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>
 <div class="block">Check the current state of the passed snapshot.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#isSnapshotFinished-org.apache.hadoop.hbase.client.SnapshotDescription-">isSnapshotFinished</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -272,22 +272,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshotDesc)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>
 <div class="block">Take a snapshot and wait for the server to complete that snapshot (blocking).</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshotDesc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#snapshot-org.apache.hadoop.hbase.client.SnapshotDescription-">snapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateBuilder.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateBuilder.html
index 3528b0a..f2ba5be 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateBuilder.html
@@ -109,11 +109,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-byte:A-byte:A-">checkAndMutate</a></span>(byte[]&nbsp;row,
-              byte[]&nbsp;family)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-byte:A-">checkAndMutate</a></span>(byte[]&nbsp;row,
               byte[]&nbsp;family)</code>
@@ -123,6 +118,11 @@
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-byte:A-byte:A-">checkAndMutate</a></span>(byte[]&nbsp;row,
+              byte[]&nbsp;family)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html#ifEquals-byte:A-">ifEquals</a></span>(byte[]&nbsp;value)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateWithFilterBuilder.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateWithFilterBuilder.html
index 2b66a84..bde81bf 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateWithFilterBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.CheckAndMutateWithFilterBuilder.html
@@ -109,11 +109,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
-              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
               <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
@@ -123,6 +118,11 @@
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
+              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.html
index fd5adba..970ecf0 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/Table.html
@@ -689,11 +689,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#setHTable-org.apache.hadoop.hbase.client.Table-">setHTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;htable)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#setHTable-org.apache.hadoop.hbase.client.Table-">setHTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;htable)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#setHTable-org.apache.hadoop.hbase.client.Table-">setHTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;htable)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#setHTable-org.apache.hadoop.hbase.client.Table-">setHTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;htable)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/TableDescriptor.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/TableDescriptor.html
index db33fb3..dd1ae8f 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/TableDescriptor.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/TableDescriptor.html
@@ -669,14 +669,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getDescriptor--">getDescriptor</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#getDescriptor--">getDescriptor</a></span>()</code>
 <div class="block">Gets the <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client"><code>table descriptor</code></a> for this table.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#getDescriptor--">getDescriptor</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -732,11 +732,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getDescriptor-org.apache.hadoop.hbase.TableName-">getDescriptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
@@ -765,22 +765,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-boolean-">listTableDescriptors</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-boolean-">listTableDescriptors</a></span>(boolean&nbsp;includeSysTables)</code>
 <div class="block">List all userspace tables and whether or not include system tables.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listTableDescriptors-boolean-">listTableDescriptors</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-boolean-">listTableDescriptors</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-boolean-">listTableDescriptors</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-boolean-">listTableDescriptors</a></span>(boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
@@ -789,22 +789,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>
 <div class="block">Get tableDescriptors.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-java.util.List-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;tableNames)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
@@ -820,29 +820,29 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-java.util.regex.Pattern-boolean-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
+                    boolean&nbsp;includeSysTables)</code>
+<div class="block"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-boolean-"><code>RawAsyncHBaseAdmin.listTableDescriptors(boolean)</code></a></div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptors-java.util.regex.Pattern-boolean-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
                     boolean&nbsp;includeSysTables)</code>
 <div class="block">List all the tables matching the given pattern.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listTableDescriptors-java.util.regex.Pattern-boolean-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
                     boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptors-java.util.regex.Pattern-boolean-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
                     boolean&nbsp;includeSysTables)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-java.util.regex.Pattern-boolean-">listTableDescriptors</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern,
-                    boolean&nbsp;includeSysTables)</code>
-<div class="block"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptors-boolean-"><code>RawAsyncHBaseAdmin.listTableDescriptors(boolean)</code></a></div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listTableDescriptorsByNamespace-byte:A-">listTableDescriptorsByNamespace</a></span>(byte[]&nbsp;name)</code>
@@ -861,11 +861,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -907,18 +907,18 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>
 <div class="block">Creates a new table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -928,20 +928,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
+           byte[][]&nbsp;splitKeys)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
            byte[][]&nbsp;splitKeys)</code>
 <div class="block">Creates a new table with an initial set of empty regions defined by the specified split keys.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
-           byte[][]&nbsp;splitKeys)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
            byte[][]&nbsp;splitKeys)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -954,6 +954,13 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-int-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
+           byte[]&nbsp;startKey,
+           byte[]&nbsp;endKey,
+           int&nbsp;numRegions)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-int-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
            byte[]&nbsp;startKey,
@@ -962,23 +969,16 @@
 <div class="block">Creates a new table with the specified number of regions.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-int-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
            byte[]&nbsp;startKey,
            byte[]&nbsp;endKey,
            int&nbsp;numRegions)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-int-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
-           byte[]&nbsp;startKey,
-           byte[]&nbsp;endKey,
-           int&nbsp;numRegions)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-int-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A-byte:A-int-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
            byte[]&nbsp;startKey,
            byte[]&nbsp;endKey,
            int&nbsp;numRegions)</code>&nbsp;</td>
@@ -1012,18 +1012,18 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;td)</code>
 <div class="block">Modify an existing table, more IRB friendly version.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#modifyTable-org.apache.hadoop.hbase.client.TableDescriptor-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent">Future</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
@@ -1459,11 +1459,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.InputSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.TableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.TableInfo.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.TableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.TableInfo.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.InputSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1597,13 +1597,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
-<div class="block">Get list of table descriptors by namespace</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listTableDescriptorsByNamespace-java.lang.String-">listTableDescriptorsByNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Get list of table descriptors by namespace</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -1620,16 +1620,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#createSystemTable-org.apache.hadoop.hbase.client.TableDescriptor-">createSystemTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#createSystemTable-org.apache.hadoop.hbase.client.TableDescriptor-">createSystemTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>
 <div class="block">Create a system table using the given table definition.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#createSystemTable-org.apache.hadoop.hbase.client.TableDescriptor-">createSystemTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-long-long-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+           byte[][]&nbsp;splitKeys,
+           long&nbsp;nonceGroup,
+           long&nbsp;nonce)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-long-long-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc,
            byte[][]&nbsp;splitKeys,
            long&nbsp;nonceGroup,
@@ -1637,14 +1644,14 @@
 <div class="block">Create a table using the given table definition.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#createTable-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-long-long-">createTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-           byte[][]&nbsp;splitKeys,
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableDescriptor-long-long-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+           <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;newDescriptor,
            long&nbsp;nonceGroup,
            long&nbsp;nonce)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableDescriptor-long-long-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
            <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;descriptor,
@@ -1653,13 +1660,6 @@
 <div class="block">Modify the descriptor of an existing table</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#modifyTable-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableDescriptor-long-long-">modifyTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-           <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;newDescriptor,
-           long&nbsp;nonceGroup,
-           long&nbsp;nonce)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html#postCloneSnapshot-org.apache.hadoop.hbase.client.SnapshotDescription-org.apache.hadoop.hbase.client.TableDescriptor-">postCloneSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/SnapshotDescription.html" title="class in org.apache.hadoop.hbase.client">SnapshotDescription</a>&nbsp;snapshot,
@@ -1947,14 +1947,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#computePlansForTable-org.apache.hadoop.hbase.client.TableDescriptor-">computePlansForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/RegionNormalizer.html#computePlansForTable-org.apache.hadoop.hbase.client.TableDescriptor-">computePlansForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>
 <div class="block">Computes a list of normalizer actions to perform on the target table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#computePlansForTable-org.apache.hadoop.hbase.client.TableDescriptor-">computePlansForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private double</code></td>
 <td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#getAverageRegionSizeMb-java.util.List-org.apache.hadoop.hbase.client.TableDescriptor-">getAverageRegionSizeMb</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;tableRegions,
@@ -1995,19 +1995,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#modifiedTableDescriptor">modifiedTableDescriptor</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#modifiedTableDescriptor">modifiedTableDescriptor</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#tableDescriptor">tableDescriptor</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#tableDescriptor">tableDescriptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#modifiedTableDescriptor">modifiedTableDescriptor</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
@@ -2015,6 +2007,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#tableDescriptor">tableDescriptor</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#tableDescriptor">tableDescriptor</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#unmodifiedTableDescriptor">unmodifiedTableDescriptor</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
@@ -2069,6 +2069,13 @@
               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+              <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
+              <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
               <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
@@ -2077,13 +2084,6 @@
 <div class="block">Create region layout in file system.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-              <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
-              <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#deleteFromFs-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.hbase.client.TableDescriptor-">deleteFromFs</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -2545,20 +2545,20 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyPrefixRegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyPrefixRegionSplitRestriction.html#initialize-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.conf.Configuration-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+          org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionSplitRestriction.html#initialize-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.conf.Configuration-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
           org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
 <div class="block">Initialize the RegionSplitRestriction instance</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoRegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoRegionSplitRestriction.html#initialize-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.conf.Configuration-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-          org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyPrefixRegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyPrefixRegionSplitRestriction.html#initialize-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.conf.Configuration-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+<td class="colLast"><span class="typeNameLabel">NoRegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoRegionSplitRestriction.html#initialize-org.apache.hadoop.hbase.client.TableDescriptor-org.apache.hadoop.conf.Configuration-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
           org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -3193,11 +3193,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotManifest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/SnapshotManifest.html#htd">htd</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotHelper.RestoreMetaChanges.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/RestoreSnapshotHelper.RestoreMetaChanges.html#htd">htd</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotHelper.RestoreMetaChanges.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/RestoreSnapshotHelper.RestoreMetaChanges.html#htd">htd</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotManifest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/SnapshotManifest.html#htd">htd</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
@@ -3214,13 +3214,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotManifest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/SnapshotManifest.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>
-<div class="block">Get the table descriptor from the Snapshot</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotHelper.RestoreMetaChanges.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/RestoreSnapshotHelper.RestoreMetaChanges.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotHelper.RestoreMetaChanges.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/RestoreSnapshotHelper.RestoreMetaChanges.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotManifest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/SnapshotManifest.html#getTableDescriptor--">getTableDescriptor</a></span>()</code>
+<div class="block">Get the table descriptor from the Snapshot</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/class-use/TableState.html b/devapidocs/org/apache/hadoop/hbase/client/class-use/TableState.html
index 1766214..9658850 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/class-use/TableState.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/class-use/TableState.html
@@ -210,14 +210,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setTableStateInMeta-org.apache.hadoop.hbase.client.TableState-">setTableStateInMeta</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;state)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Hbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html#setTableStateInMeta-org.apache.hadoop.hbase.client.TableState-">setTableStateInMeta</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;state)</code>
 <div class="block">Update table state in Meta only.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setTableStateInMeta-org.apache.hadoop.hbase.client.TableState-">setTableStateInMeta</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;state)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -240,14 +240,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setTableStateInMeta-org.apache.hadoop.hbase.client.TableState-">setTableStateInMeta</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;state)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Hbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html#setTableStateInMeta-org.apache.hadoop.hbase.client.TableState-">setTableStateInMeta</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;state)</code>
 <div class="block">Update table state in Meta only.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setTableStateInMeta-org.apache.hadoop.hbase.client.TableState-">setTableStateInMeta</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;state)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Call.html b/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Call.html
index ba8018e..fb48a11 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Call.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Call.html
@@ -120,14 +120,6 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>&lt;T extends org.apache.hbase.thirdparty.com.google.protobuf.Service,R&gt;<br>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#coprocessorService-java.lang.Class-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Call-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;service,
-                  byte[]&nbsp;startKey,
-                  byte[]&nbsp;endKey,
-                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Call.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Call</a>&lt;T,R&gt;&nbsp;callable,
-                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>default &lt;T extends org.apache.hbase.thirdparty.com.google.protobuf.Service,R&gt;<br>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Table.html#coprocessorService-java.lang.Class-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Call-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;service,
                   byte[]&nbsp;startKey,
@@ -143,6 +135,14 @@
 </div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>&lt;T extends org.apache.hbase.thirdparty.com.google.protobuf.Service,R&gt;<br>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#coprocessorService-java.lang.Class-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Call-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;service,
+                  byte[]&nbsp;startKey,
+                  byte[]&nbsp;endKey,
+                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Call.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Call</a>&lt;T,R&gt;&nbsp;callable,
+                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Callback.html b/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Callback.html
index b12fc1f..2a2c3ec 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Callback.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/coprocessor/class-use/Batch.Callback.html
@@ -109,12 +109,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>&lt;R&gt;&nbsp;void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batchCallback-java.util.List-java.lang.Object:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCallback</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
-             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results,
-             <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default &lt;R&gt;&nbsp;void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Table.html#batchCallback-java.util.List-java.lang.Object:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCallback</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results,
@@ -128,16 +122,13 @@
 </div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>&lt;R extends org.apache.hbase.thirdparty.com.google.protobuf.Message&gt;<br>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batchCoprocessorService-org.apache.hbase.thirdparty.com.google.protobuf.Descriptors.MethodDescriptor-org.apache.hbase.thirdparty.com.google.protobuf.Message-byte:A-byte:A-R-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCoprocessorService</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.Descriptors.MethodDescriptor&nbsp;methodDescriptor,
-                       org.apache.hbase.thirdparty.com.google.protobuf.Message&nbsp;request,
-                       byte[]&nbsp;startKey,
-                       byte[]&nbsp;endKey,
-                       R&nbsp;responsePrototype,
-                       <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>&lt;R&gt;&nbsp;void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batchCallback-java.util.List-java.lang.Object:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCallback</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../../org/apache/hadoop/hbase/client/Row.html" title="interface in org.apache.hadoop.hbase.client">Row</a>&gt;&nbsp;actions,
+             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;results,
+             <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default &lt;R extends org.apache.hbase.thirdparty.com.google.protobuf.Message&gt;<br>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Table.html#batchCoprocessorService-org.apache.hbase.thirdparty.com.google.protobuf.Descriptors.MethodDescriptor-org.apache.hbase.thirdparty.com.google.protobuf.Message-byte:A-byte:A-R-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCoprocessorService</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.Descriptors.MethodDescriptor&nbsp;methodDescriptor,
                        org.apache.hbase.thirdparty.com.google.protobuf.Message&nbsp;request,
@@ -154,15 +145,16 @@
 </div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>&lt;T extends org.apache.hbase.thirdparty.com.google.protobuf.Service,R&gt;<br>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#coprocessorService-java.lang.Class-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Call-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;service,
-                  byte[]&nbsp;startKey,
-                  byte[]&nbsp;endKey,
-                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Call.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Call</a>&lt;T,R&gt;&nbsp;callable,
-                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>&lt;R extends org.apache.hbase.thirdparty.com.google.protobuf.Message&gt;<br>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#batchCoprocessorService-org.apache.hbase.thirdparty.com.google.protobuf.Descriptors.MethodDescriptor-org.apache.hbase.thirdparty.com.google.protobuf.Message-byte:A-byte:A-R-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">batchCoprocessorService</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.Descriptors.MethodDescriptor&nbsp;methodDescriptor,
+                       org.apache.hbase.thirdparty.com.google.protobuf.Message&nbsp;request,
+                       byte[]&nbsp;startKey,
+                       byte[]&nbsp;endKey,
+                       R&nbsp;responsePrototype,
+                       <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default &lt;T extends org.apache.hbase.thirdparty.com.google.protobuf.Service,R&gt;<br>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Table.html#coprocessorService-java.lang.Class-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Call-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;service,
                   byte[]&nbsp;startKey,
@@ -178,6 +170,14 @@
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>&lt;T extends org.apache.hbase.thirdparty.com.google.protobuf.Service,R&gt;<br>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#coprocessorService-java.lang.Class-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Call-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-">coprocessorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;service,
+                  byte[]&nbsp;startKey,
+                  byte[]&nbsp;endKey,
+                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Call.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Call</a>&lt;T,R&gt;&nbsp;callable,
+                  <a href="../../../../../../../org/apache/hadoop/hbase/client/coprocessor/Batch.Callback.html" title="interface in org.apache.hadoop.hbase.client.coprocessor">Batch.Callback</a>&lt;R&gt;&nbsp;callback)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private &lt;R&gt;&nbsp;void</code></td>
 <td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#coprocssorService-java.lang.String-byte:A-byte:A-org.apache.hadoop.hbase.client.coprocessor.Batch.Callback-org.apache.hadoop.hbase.client.TableOverAsyncTable.StubCall-">coprocssorService</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serviceName,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/locking/class-use/EntityLock.html b/devapidocs/org/apache/hadoop/hbase/client/locking/class-use/EntityLock.html
index c7c1b9f..281d36b 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/locking/class-use/EntityLock.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/locking/class-use/EntityLock.html
@@ -147,18 +147,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfo,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
-          <a href="../../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfos,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
           <a href="../../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>
 <div class="block">Master based locks on namespaces/tables/regions.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/locking/EntityLock.html" title="class in org.apache.hadoop.hbase.client.locking">EntityLock</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#regionLock-java.util.List-java.lang.String-org.apache.hadoop.hbase.Abortable-">regionLock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regionInfo,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;description,
+          <a href="../../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abort)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/metrics/class-use/ScanMetrics.html b/devapidocs/org/apache/hadoop/hbase/client/metrics/class-use/ScanMetrics.html
index 37f311e..2d514d8 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/metrics/class-use/ScanMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/metrics/class-use/ScanMetrics.html
@@ -117,24 +117,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AbstractClientScanner.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClientScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncClientScanner.html#scanMetrics">scanMetrics</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -186,10 +186,6 @@
 <td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#metrics-org.apache.hadoop.hbase.client.metrics.ScanMetrics-">metrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a>&nbsp;scanMetrics)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#onScanMetricsCreated-org.apache.hadoop.hbase.client.metrics.ScanMetrics-">onScanMetricsCreated</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a>&nbsp;scanMetrics)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">ScanResultConsumerBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/ScanResultConsumerBase.html#onScanMetricsCreated-org.apache.hadoop.hbase.client.metrics.ScanMetrics-">onScanMetricsCreated</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a>&nbsp;scanMetrics)</code>
 <div class="block">If <code>scan.isScanMetricsEnabled()</code> returns true, then this method will be called prior to
@@ -197,6 +193,10 @@
  operation.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableResultScanner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncTableResultScanner.html#onScanMetricsCreated-org.apache.hadoop.hbase.client.metrics.ScanMetrics-">onScanMetricsCreated</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a>&nbsp;scanMetrics)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static void</code></td>
 <td class="colLast"><span class="typeNameLabel">ConnectionUtils.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/ConnectionUtils.html#updateResultsMetrics-org.apache.hadoop.hbase.client.metrics.ScanMetrics-org.apache.hadoop.hbase.client.Result:A-boolean-">updateResultsMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/metrics/ScanMetrics.html" title="class in org.apache.hadoop.hbase.client.metrics">ScanMetrics</a>&nbsp;scanMetrics,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/package-tree.html b/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
index d55e59f..3081d52 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
@@ -455,25 +455,25 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/LogQueryFilter.Type.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">LogQueryFilter.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RegionLocateType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/LogQueryFilter.FilterByOperator.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">LogQueryFilter.FilterByOperator</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaMode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CatalogReplicaMode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">TableState.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RegionLocateType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CatalogReplicaMode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CatalogReplicaMode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">TableState.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AbstractResponse.ResponseType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/LogQueryFilter.FilterByOperator.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">LogQueryFilter.FilterByOperator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/LogQueryFilter.Type.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">LogQueryFilter.Type</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/package-use.html b/devapidocs/org/apache/hadoop/hbase/client/package-use.html
index 0f65715..3db3da1 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/package-use.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/package-use.html
@@ -1981,60 +1981,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/BufferedMutator.html#org.apache.hadoop.hbase.mapred">BufferedMutator</a>
-<div class="block">Used to communicate with a single HBase table similar to <a href="../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client"><code>Table</code></a> but meant for
- batched, asynchronous puts.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Connection.html#org.apache.hadoop.hbase.mapred">Connection</a>
-<div class="block">A cluster connection encapsulating lower level individual connections to actual servers and
- a connection to zookeeper.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Put.html#org.apache.hadoop.hbase.mapred">Put</a>
 <div class="block">Used to perform Put operations for a single row.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/RegionInfo.html#org.apache.hadoop.hbase.mapred">RegionInfo</a>
-<div class="block">Information about a region.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/RegionLocator.html#org.apache.hadoop.hbase.mapred">RegionLocator</a>
-<div class="block">Used to view region location information for a single HBase table.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Result.html#org.apache.hadoop.hbase.mapred">Result</a>
 <div class="block">Single row result of a <a href="../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client"><code>Get</code></a> or <a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client"><code>Scan</code></a> query.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/ResultScanner.html#org.apache.hadoop.hbase.mapred">ResultScanner</a>
-<div class="block">Interface for client-side scanning.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Scan.html#org.apache.hadoop.hbase.mapred">Scan</a>
-<div class="block">Used to perform Scan operations.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Table.html#org.apache.hadoop.hbase.mapred">Table</a>
-<div class="block">Used to communicate with a single HBase table.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/TableDescriptor.html#org.apache.hadoop.hbase.mapred">TableDescriptor</a>
-<div class="block">TableDescriptor contains the details about an HBase table such as the descriptors of
- all the column families, is the table a catalog table, <code> hbase:meta </code>,
- if the table is read only, the maximum size of the memstore,
- when the region split should occur, coprocessors associated with it etc...</div>
-</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -2110,16 +2065,21 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/ResultScanner.html#org.apache.hadoop.hbase.mapreduce">ResultScanner</a>
+<div class="block">Interface for client-side scanning.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Scan.html#org.apache.hadoop.hbase.mapreduce">Scan</a>
 <div class="block">Used to perform Scan operations.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/Table.html#org.apache.hadoop.hbase.mapreduce">Table</a>
 <div class="block">Used to communicate with a single HBase table.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/client/class-use/TableDescriptor.html#org.apache.hadoop.hbase.mapreduce">TableDescriptor</a>
 <div class="block">TableDescriptor contains the details about an HBase table such as the descriptors of
  all the column families, is the table a catalog table, <code> hbase:meta </code>,
diff --git a/devapidocs/org/apache/hadoop/hbase/client/replication/class-use/TableCFs.html b/devapidocs/org/apache/hadoop/hbase/client/replication/class-use/TableCFs.html
index 57c1d69..661d6f6 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/replication/class-use/TableCFs.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/replication/class-use/TableCFs.html
@@ -115,22 +115,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>
 <div class="block">Find all table and column families that are replicated from this cluster</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listReplicatedTableCFs--">listReplicatedTableCFs</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/client/security/class-use/SecurityCapability.html b/devapidocs/org/apache/hadoop/hbase/client/security/class-use/SecurityCapability.html
index 7063f0b..2e541f0 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/security/class-use/SecurityCapability.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/security/class-use/SecurityCapability.html
@@ -117,22 +117,22 @@
 <td class="colLast"><span class="typeNameLabel">AsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncAdmin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>
 <div class="block">Return the set of supported security capabilities.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security">SecurityCapability</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getSecurityCapabilities--">getSecurityCapabilities</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Decoder.html b/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Decoder.html
index b895cdb..d6015d4 100644
--- a/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Decoder.html
+++ b/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Decoder.html
@@ -159,7 +159,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
@@ -167,15 +167,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
@@ -183,7 +183,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
@@ -193,18 +193,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>
 <div class="block">Implementation depends on <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#available--" title="class or interface in java.io"><code>InputStream.available()</code></a></div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -255,11 +255,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.html#getDecoder-java.io.InputStream-">getDecoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Encoder.html b/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Encoder.html
index 92fd06b..bec14d6 100644
--- a/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Encoder.html
+++ b/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.Encoder.html
@@ -147,7 +147,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
@@ -155,15 +155,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -215,11 +215,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Encoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Encoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.html#getEncoder-java.io.OutputStream-">getEncoder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.html b/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.html
index 4f17ee6..69fc996 100644
--- a/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.html
+++ b/devapidocs/org/apache/hadoop/hbase/codec/class-use/Codec.html
@@ -164,16 +164,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html" title="interface in org.apache.hadoop.hbase.codec">Codec</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#codec">codec</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html" title="interface in org.apache.hadoop.hbase.codec">Codec</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcConnection.html#codec">codec</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html" title="interface in org.apache.hadoop.hbase.codec">Codec</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NettyRpcDuplexHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcDuplexHandler.html#codec">codec</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html" title="interface in org.apache.hadoop.hbase.codec">Codec</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#codec">codec</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/coordination/class-use/SplitLogManagerCoordination.SplitLogManagerDetails.html b/devapidocs/org/apache/hadoop/hbase/coordination/class-use/SplitLogManagerCoordination.SplitLogManagerDetails.html
index 2a60b94..f22a9c6 100644
--- a/devapidocs/org/apache/hadoop/hbase/coordination/class-use/SplitLogManagerCoordination.SplitLogManagerDetails.html
+++ b/devapidocs/org/apache/hadoop/hbase/coordination/class-use/SplitLogManagerCoordination.SplitLogManagerDetails.html
@@ -117,15 +117,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.SplitLogManagerDetails.html" title="class in org.apache.hadoop.hbase.coordination">SplitLogManagerCoordination.SplitLogManagerDetails</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#getDetails--">getDetails</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.SplitLogManagerDetails.html" title="class in org.apache.hadoop.hbase.coordination">SplitLogManagerCoordination.SplitLogManagerDetails</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.html#getDetails--">getDetails</a></span>()</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Returns the configuration that was provided previously</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.SplitLogManagerDetails.html" title="class in org.apache.hadoop.hbase.coordination">SplitLogManagerCoordination.SplitLogManagerDetails</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#getDetails--">getDetails</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -137,15 +137,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#setDetails-org.apache.hadoop.hbase.coordination.SplitLogManagerCoordination.SplitLogManagerDetails-">setDetails</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.SplitLogManagerDetails.html" title="class in org.apache.hadoop.hbase.coordination">SplitLogManagerCoordination.SplitLogManagerDetails</a>&nbsp;details)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">SplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.html#setDetails-org.apache.hadoop.hbase.coordination.SplitLogManagerCoordination.SplitLogManagerDetails-">setDetails</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.SplitLogManagerDetails.html" title="class in org.apache.hadoop.hbase.coordination">SplitLogManagerCoordination.SplitLogManagerDetails</a>&nbsp;details)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Provide the configuration from the SplitLogManager</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#setDetails-org.apache.hadoop.hbase.coordination.SplitLogManagerCoordination.SplitLogManagerDetails-">setDetails</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.SplitLogManagerDetails.html" title="class in org.apache.hadoop.hbase.coordination">SplitLogManagerCoordination.SplitLogManagerDetails</a>&nbsp;details)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html b/devapidocs/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html
index 87bbedd..76d54fc 100644
--- a/devapidocs/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html
+++ b/devapidocs/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html
@@ -237,7 +237,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html" title="enum in org.apache.hadoop.hbase.coprocessor">RegionObserver.MutationType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html#line.446">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html" title="enum in org.apache.hadoop.hbase.coprocessor">RegionObserver.MutationType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html#line.574">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -257,7 +257,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html" title="enum in org.apache.hadoop.hbase.coprocessor">RegionObserver.MutationType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html#line.446">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html" title="enum in org.apache.hadoop.hbase.coprocessor">RegionObserver.MutationType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html#line.574">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/ObserverContext.html b/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/ObserverContext.html
index 742996b..d9adb82 100644
--- a/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/ObserverContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/ObserverContext.html
@@ -2674,7 +2674,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -2683,7 +2683,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionCoprocessorEnvironment.html b/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionCoprocessorEnvironment.html
index a8bc462..420e52e 100644
--- a/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionCoprocessorEnvironment.html
+++ b/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionCoprocessorEnvironment.html
@@ -1147,7 +1147,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -1156,7 +1156,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionObserver.html b/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionObserver.html
index 2752f87..51aeae8 100644
--- a/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionObserver.html
+++ b/devapidocs/org/apache/hadoop/hbase/coprocessor/class-use/RegionObserver.html
@@ -218,17 +218,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessor.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MetaTableMetrics.ExampleRegionObserverMeta.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.ExampleRegionObserverMeta.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessor.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -288,6 +288,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ExampleRegionObserverWithMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ExampleRegionObserverWithMetrics.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -296,16 +304,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionObserver</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#getRegionObserver--">getRegionObserver</a></span>()</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/errorhandling/class-use/ForeignException.html b/devapidocs/org/apache/hadoop/hbase/errorhandling/class-use/ForeignException.html
index 4b3702e..8e44c90 100644
--- a/devapidocs/org/apache/hadoop/hbase/errorhandling/class-use/ForeignException.html
+++ b/devapidocs/org/apache/hadoop/hbase/errorhandling/class-use/ForeignException.html
@@ -177,14 +177,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ForeignExceptionDispatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionDispatcher.html#getException--">getException</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ForeignExceptionSnare.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#getException--">getException</a></span>()</code>
 <div class="block">Get the value of the captured exception.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ForeignExceptionDispatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionDispatcher.html#getException--">getException</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -221,14 +221,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ForeignExceptionDispatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionDispatcher.html#rethrowException--">rethrowException</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ForeignExceptionSnare.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html#rethrowException--">rethrowException</a></span>()</code>
 <div class="block">Rethrow an exception currently held by the <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionSnare.html" title="interface in org.apache.hadoop.hbase.errorhandling"><code>ForeignExceptionSnare</code></a>.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ForeignExceptionDispatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignExceptionDispatcher.html#rethrowException--">rethrowException</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -357,19 +357,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#sendMemberAborted-org.apache.hadoop.hbase.procedure.Subprocedure-org.apache.hadoop.hbase.errorhandling.ForeignException-">sendMemberAborted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
-                 <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;cause)</code>
-<div class="block">Notify the coordinator that we aborted the specified <a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure"><code>Subprocedure</code></a></div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#sendMemberAborted-org.apache.hadoop.hbase.procedure.Subprocedure-org.apache.hadoop.hbase.errorhandling.ForeignException-">sendMemberAborted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
                  <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;ee)</code>
 <div class="block">This should be called by the member and should write a serialized root cause exception as
  to the abort znode.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#sendMemberAborted-org.apache.hadoop.hbase.procedure.Subprocedure-org.apache.hadoop.hbase.errorhandling.ForeignException-">sendMemberAborted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
+                 <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;cause)</code>
+<div class="block">Notify the coordinator that we aborted the specified <a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure"><code>Subprocedure</code></a></div>
+</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/DeserializationException.html b/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/DeserializationException.html
index 7e629f1..bd431ef 100644
--- a/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/DeserializationException.html
+++ b/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/DeserializationException.html
@@ -184,26 +184,26 @@
 <td class="colLast"><span class="typeNameLabel">ZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ZKConnectionRegistry.html#getClusterId-byte:A-">getClusterId</a></span>(byte[]&nbsp;data)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>
 <div class="block">The input should be created by <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#toByteArray-org.apache.hadoop.hbase.client.TableDescriptor-"><code>TableDescriptorBuilder.toByteArray(org.apache.hadoop.hbase.client.TableDescriptor)</code></a>.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html" title="interface in org.apache.hadoop.hbase.client">ColumnFamilyDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></code></td>
@@ -279,24 +279,42 @@
 <td class="colLast"><span class="typeNameLabel">FilterWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnRangeFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html" title="class in org.apache.hadoop.hbase.filter">FuzzyRowFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html" title="class in org.apache.hadoop.hbase.filter">PrefixFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html" title="class in org.apache.hadoop.hbase.filter">DependentColumnFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnValueFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>
+<div class="block">Parse protobuf bytes to a ColumnValueFilter</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html" title="class in org.apache.hadoop.hbase.filter">QualifierFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html" title="class in org.apache.hadoop.hbase.filter">KeyOnlyFilter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnPaginationFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BigDecimalComparator.html" title="class in org.apache.hadoop.hbase.filter">BigDecimalComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigDecimalComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BigDecimalComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html" title="class in org.apache.hadoop.hbase.filter">SingleColumnValueExcludeFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html" title="class in org.apache.hadoop.hbase.filter">RowFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html" title="class in org.apache.hadoop.hbase.filter">SingleColumnValueFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html" title="class in org.apache.hadoop.hbase.filter">FilterList</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BitComparator.html" title="class in org.apache.hadoop.hbase.filter">BitComparator</a></code></td>
@@ -307,82 +325,98 @@
 <td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnCountGetFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnRangeFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html" title="class in org.apache.hadoop.hbase.filter">MultipleColumnPrefixFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html" title="class in org.apache.hadoop.hbase.filter">PageFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html" title="class in org.apache.hadoop.hbase.filter">InclusiveStopFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html" title="class in org.apache.hadoop.hbase.filter">RowFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html" title="class in org.apache.hadoop.hbase.filter">FirstKeyOnlyFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html" title="class in org.apache.hadoop.hbase.filter">RandomRowFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html" title="class in org.apache.hadoop.hbase.filter">FuzzyRowFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html" title="class in org.apache.hadoop.hbase.filter">FilterList</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComponentComparator.html" title="class in org.apache.hadoop.hbase.filter">BinaryComponentComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BinaryComponentComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComponentComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html" title="class in org.apache.hadoop.hbase.filter">FamilyFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnPrefixFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/LongComparator.html" title="class in org.apache.hadoop.hbase.filter">LongComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">LongComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/LongComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html" title="class in org.apache.hadoop.hbase.filter">MultiRowRangeFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SubstringComparator.html" title="class in org.apache.hadoop.hbase.filter">SubstringComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SubstringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SubstringComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html" title="class in org.apache.hadoop.hbase.filter">FirstKeyOnlyFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/NullComparator.html" title="class in org.apache.hadoop.hbase.filter">NullComparator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NullComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/NullComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html" title="class in org.apache.hadoop.hbase.filter">MultipleColumnPrefixFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html" title="class in org.apache.hadoop.hbase.filter">PageFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html" title="class in org.apache.hadoop.hbase.filter">WhileMatchFilter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnPrefixFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComparator.html" title="class in org.apache.hadoop.hbase.filter">BinaryComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BinaryComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html" title="class in org.apache.hadoop.hbase.filter">SingleColumnValueFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html" title="class in org.apache.hadoop.hbase.filter">RandomRowFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.html" title="class in org.apache.hadoop.hbase.filter">RegexStringComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegexStringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html" title="class in org.apache.hadoop.hbase.filter">FamilyFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyValueMatchingQualifiersFilter.html" title="class in org.apache.hadoop.hbase.filter">FirstKeyValueMatchingQualifiersFilter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FirstKeyValueMatchingQualifiersFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyValueMatchingQualifiersFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html" title="class in org.apache.hadoop.hbase.filter">PrefixFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html" title="class in org.apache.hadoop.hbase.filter">SkipFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComparator.html" title="class in org.apache.hadoop.hbase.filter">BinaryComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BinaryComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html" title="class in org.apache.hadoop.hbase.filter">InclusiveStopFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SubstringComparator.html" title="class in org.apache.hadoop.hbase.filter">SubstringComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SubstringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SubstringComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnCountGetFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComponentComparator.html" title="class in org.apache.hadoop.hbase.filter">BinaryComponentComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BinaryComponentComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComponentComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html" title="class in org.apache.hadoop.hbase.filter">ValueFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnPaginationFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryPrefixComparator.html" title="class in org.apache.hadoop.hbase.filter">BinaryPrefixComparator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BinaryPrefixComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryPrefixComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -392,42 +426,8 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BigDecimalComparator.html" title="class in org.apache.hadoop.hbase.filter">BigDecimalComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BigDecimalComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BigDecimalComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryPrefixComparator.html" title="class in org.apache.hadoop.hbase.filter">BinaryPrefixComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BinaryPrefixComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryPrefixComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html" title="class in org.apache.hadoop.hbase.filter">DependentColumnFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html" title="class in org.apache.hadoop.hbase.filter">ColumnValueFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>
-<div class="block">Parse protobuf bytes to a ColumnValueFilter</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html" title="class in org.apache.hadoop.hbase.filter">ValueFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html" title="class in org.apache.hadoop.hbase.filter">SkipFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html" title="class in org.apache.hadoop.hbase.filter">MultiRowRangeFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html" title="class in org.apache.hadoop.hbase.filter">QualifierFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.html" title="class in org.apache.hadoop.hbase.filter">RegexStringComparator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegexStringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html" title="class in org.apache.hadoop.hbase.filter">SingleColumnValueExcludeFilter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
@@ -588,13 +588,13 @@
 <td class="colLast"><span class="typeNameLabel">SnapshotCleanupTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/SnapshotCleanupTracker.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private org.apache.hadoop.hbase.shaded.protobuf.generated.LoadBalancerProtos.LoadBalancerState</code></td>
-<td class="colLast"><span class="typeNameLabel">LoadBalancerTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/LoadBalancerTracker.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private org.apache.hadoop.hbase.shaded.protobuf.generated.RegionNormalizerProtos.RegionNormalizerState</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionNormalizerTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/RegionNormalizerTracker.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private org.apache.hadoop.hbase.shaded.protobuf.generated.LoadBalancerProtos.LoadBalancerState</code></td>
+<td class="colLast"><span class="typeNameLabel">LoadBalancerTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/LoadBalancerTracker.html#parseFrom-byte:A-">parseFrom</a></span>(byte[]&nbsp;pbBytes)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static long</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKUtil.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKUtil.html#parseWALPositionFrom-byte:A-">parseWALPositionFrom</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/UnexpectedStateException.html b/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/UnexpectedStateException.html
index 136cb61..917656b 100644
--- a/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/UnexpectedStateException.html
+++ b/devapidocs/org/apache/hadoop/hbase/exceptions/class-use/UnexpectedStateException.html
@@ -126,6 +126,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+                <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
+                org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
+                long&nbsp;openSeqNum)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
                 org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
@@ -133,7 +142,7 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
@@ -142,15 +151,6 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-                <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
-                org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
-                long&nbsp;openSeqNum)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionStateNode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html#transitionState-org.apache.hadoop.hbase.master.RegionState.State-org.apache.hadoop.hbase.master.RegionState.State...-">transitionState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&nbsp;update,
diff --git a/devapidocs/org/apache/hadoop/hbase/executor/EventType.html b/devapidocs/org/apache/hadoop/hbase/executor/EventType.html
index c82878c..8f0d404 100644
--- a/devapidocs/org/apache/hadoop/hbase/executor/EventType.html
+++ b/devapidocs/org/apache/hadoop/hbase/executor/EventType.html
@@ -1076,7 +1076,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/EventType.html#line.63">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/EventType.html#line.77">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -1096,7 +1096,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/EventType.html#line.63">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/EventType.html#line.77">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/executor/ExecutorType.html b/devapidocs/org/apache/hadoop/hbase/executor/ExecutorType.html
index 6ea6141..861d6bf 100644
--- a/devapidocs/org/apache/hadoop/hbase/executor/ExecutorType.html
+++ b/devapidocs/org/apache/hadoop/hbase/executor/ExecutorType.html
@@ -515,7 +515,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor">ExecutorType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/ExecutorType.html#line.45">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor">ExecutorType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/ExecutorType.html#line.31">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -535,7 +535,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor">ExecutorType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/ExecutorType.html#line.45">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor">ExecutorType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/executor/ExecutorType.html#line.31">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/executor/class-use/EventType.html b/devapidocs/org/apache/hadoop/hbase/executor/class-use/EventType.html
index 4149e3a..bb060cc 100644
--- a/devapidocs/org/apache/hadoop/hbase/executor/class-use/EventType.html
+++ b/devapidocs/org/apache/hadoop/hbase/executor/class-use/EventType.html
@@ -282,20 +282,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ClaimReplicationQueueCallable.html#getEventType--">getEventType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SwitchRpcThrottleRemoteCallable.html#getEventType--">getEventType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RefreshPeerCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RefreshPeerCallable.html#getEventType--">getEventType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ClaimReplicationQueueCallable.html#getEventType--">getEventType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplaySyncReplicationWALCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplaySyncReplicationWALCallable.html#getEventType--">getEventType</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor">EventType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteCallable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SwitchRpcThrottleRemoteCallable.html#getEventType--">getEventType</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/executor/class-use/ExecutorService.html b/devapidocs/org/apache/hadoop/hbase/executor/class-use/ExecutorService.html
index 68e9433..bdb0636 100644
--- a/devapidocs/org/apache/hadoop/hbase/executor/class-use/ExecutorService.html
+++ b/devapidocs/org/apache/hadoop/hbase/executor/class-use/ExecutorService.html
@@ -240,11 +240,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/ExecutorService.html" title="class in org.apache.hadoop.hbase.executor">ExecutorService</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getExecutorService--">getExecutorService</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getExecutorService--">getExecutorService</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/executor/ExecutorService.html" title="class in org.apache.hadoop.hbase.executor">ExecutorService</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getExecutorService--">getExecutorService</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getExecutorService--">getExecutorService</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/executor/package-tree.html b/devapidocs/org/apache/hadoop/hbase/executor/package-tree.html
index f51af19..7cb63e4 100644
--- a/devapidocs/org/apache/hadoop/hbase/executor/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/executor/package-tree.html
@@ -105,8 +105,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.executor.<a href="../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">EventType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.executor.<a href="../../../../../org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">ExecutorType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.executor.<a href="../../../../../org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">EventType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/favored/class-use/FavoredNodesManager.html b/devapidocs/org/apache/hadoop/hbase/favored/class-use/FavoredNodesManager.html
index 0343d03..f74b358 100644
--- a/devapidocs/org/apache/hadoop/hbase/favored/class-use/FavoredNodesManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/favored/class-use/FavoredNodesManager.html
@@ -151,11 +151,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodesManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getFavoredNodesManager--">getFavoredNodesManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getFavoredNodesManager--">getFavoredNodesManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodesManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getFavoredNodesManager--">getFavoredNodesManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getFavoredNodesManager--">getFavoredNodesManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html b/devapidocs/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html
index cef37b8..2461941 100644
--- a/devapidocs/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html
+++ b/devapidocs/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html
@@ -260,7 +260,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter">FilterWrapper.FilterRowRetCode</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html#line.172">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter">FilterWrapper.FilterRowRetCode</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html#line.26">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -280,7 +280,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter">FilterWrapper.FilterRowRetCode</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html#line.172">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter">FilterWrapper.FilterRowRetCode</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html#line.26">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/filter/class-use/ByteArrayComparable.html b/devapidocs/org/apache/hadoop/hbase/filter/class-use/ByteArrayComparable.html
index 2916d0a..dc4e4ad 100644
--- a/devapidocs/org/apache/hadoop/hbase/filter/class-use/ByteArrayComparable.html
+++ b/devapidocs/org/apache/hadoop/hbase/filter/class-use/ByteArrayComparable.html
@@ -353,16 +353,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#comparator">comparator</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#comparator">comparator</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -381,7 +381,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
@@ -389,7 +389,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#getComparator--">getComparator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
@@ -410,7 +410,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">BinaryComponentComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComponentComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SubstringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SubstringComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
@@ -422,15 +422,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SubstringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SubstringComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegexStringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">BinaryPrefixComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryPrefixComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BinaryComponentComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryComponentComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegexStringComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BinaryPrefixComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/BinaryPrefixComparator.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.ByteArrayComparable-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;other)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
@@ -455,12 +455,6 @@
           <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
-            <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
-            <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
             <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
@@ -468,6 +462,12 @@
 <div class="block">This method is used to determine a cell should be included or filtered out.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#compareValue-org.apache.hadoop.hbase.CompareOperator-org.apache.hadoop.hbase.filter.ByteArrayComparable-org.apache.hadoop.hbase.Cell-">compareValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;op,
+            <a href="../../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;comparator,
+            <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html b/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html
index 29958ed..e5c6dba 100644
--- a/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html
+++ b/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.ReturnCode.html
@@ -166,23 +166,39 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -190,7 +206,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -202,31 +226,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;v)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -234,46 +234,46 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>
 <div class="block">A way to filter based on the column family, column qualifier and/or the column value.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SkipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SkipFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;ignored)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#filterCell-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#filterColumn-org.apache.hadoop.hbase.Cell-">filterColumn</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
@@ -284,16 +284,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
                <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;localRC)</code>
-<div class="block">FilterList with MUST_PASS_ONE choose the minimal forward step among sub-filter in filter list.</div>
+<div class="block">FilterList with MUST_PASS_ALL choose the maximal forward step among sub-filters in filter list.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
                <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;localRC)</code>
-<div class="block">FilterList with MUST_PASS_ALL choose the maximal forward step among sub-filters in filter list.</div>
+<div class="block">FilterList with MUST_PASS_ONE choose the minimal forward step among sub-filter in filter list.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -345,16 +345,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
                <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;localRC)</code>
-<div class="block">FilterList with MUST_PASS_ONE choose the minimal forward step among sub-filter in filter list.</div>
+<div class="block">FilterList with MUST_PASS_ALL choose the maximal forward step among sub-filters in filter list.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#mergeReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-org.apache.hadoop.hbase.filter.Filter.ReturnCode-">mergeReturnCode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;rc,
                <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a>&nbsp;localRC)</code>
-<div class="block">FilterList with MUST_PASS_ALL choose the maximal forward step among sub-filters in filter list.</div>
+<div class="block">FilterList with MUST_PASS_ONE choose the minimal forward step among sub-filter in filter list.</div>
 </td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html b/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html
index dc68437..21f3979 100644
--- a/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html
+++ b/devapidocs/org/apache/hadoop/hbase/filter/class-use/Filter.html
@@ -231,15 +231,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -255,26 +255,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
-              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
-              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
-             any more.</span></div>
-</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
-              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
               <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
@@ -284,33 +264,53 @@
 </div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTableImpl.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
+              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
+              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">Since 3.0.0, will be removed in 4.0.0. For internal test use only, do not use it
+             any more.</span></div>
+</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
               <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableOverAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableOverAsyncTable.html#checkAndMutate-byte:A-org.apache.hadoop.hbase.filter.Filter-">checkAndMutate</a></span>(byte[]&nbsp;row,
+              <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html" title="class in org.apache.hadoop.hbase.client">CheckAndMutate.Builder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CheckAndMutate.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/CheckAndMutate.Builder.html#ifMatches-org.apache.hadoop.hbase.filter.Filter-">ifMatches</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Query.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>
 <div class="block">Apply the specified server-side filter when performing the Query.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Get.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#setFilter-org.apache.hadoop.hbase.filter.Filter-">setFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -703,31 +703,41 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>
+<div class="block">Creating this filter by reflection, it is used by <a href="../../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html" title="class in org.apache.hadoop.hbase.filter"><code>ParseFilter</code></a>,</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -739,15 +749,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>
+<div class="block">Given the filter's arguments it constructs the filter</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -755,35 +767,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>
-<div class="block">Given the filter's arguments it constructs the filter</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>
-<div class="block">Creating this filter by reflection, it is used by <a href="../../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html" title="class in org.apache.hadoop.hbase.filter"><code>ParseFilter</code></a>,</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#createFilterFromArguments-java.util.ArrayList-">createFilterFromArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;filterArguments)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -866,97 +866,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;other)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;other)</code>
-<div class="block">Default implementation so that writers of custom filters aren't forced to implement.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">PrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;other)</code>
-<div class="block">Concrete implementers can signal a failure condition in their code by throwing an
- <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io"><code>IOException</code></a>.</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/DependentColumnFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
@@ -967,7 +882,73 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/KeyOnlyFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RowFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FilterList.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterList.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;other)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">TimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/TimestampsFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnRangeFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CompareFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/CompareFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FirstKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FirstKeyOnlyFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultipleColumnPrefixFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">PageFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/PageFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">WhileMatchFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/WhileMatchFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FilterBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterBase.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;other)</code>
+<div class="block">Default implementation so that writers of custom filters aren't forced to implement.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPrefixFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/RandomRowFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FamilyFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FamilyFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
@@ -975,11 +956,30 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/MultiRowRangeFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">InclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/InclusiveStopFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">QualifierFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/QualifierFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnCountGetFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnCountGetFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ValueFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/ColumnPaginationFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">Filter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;other)</code>
+<div class="block">Concrete implementers can signal a failure condition in their code by throwing an
+ <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io"><code>IOException</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/SingleColumnValueExcludeFilter.html#areSerializedFieldsEqual-org.apache.hadoop.hbase.filter.Filter-">areSerializedFieldsEqual</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;o)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter">Filter.ReturnCode</a></code></td>
@@ -1007,15 +1007,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#addFilterLists-java.util.List-">addFilterLists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filters)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#addFilterLists-java.util.List-">addFilterLists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract void</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListBase.html#addFilterLists-java.util.List-">addFilterLists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filters)</code>&nbsp;</td>
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#addFilterLists-java.util.List-">addFilterLists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filters)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#addFilterLists-java.util.List-">addFilterLists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filters)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract void</code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListBase.html#addFilterLists-java.util.List-">addFilterLists</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static boolean</code></td>
@@ -1024,15 +1024,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#formatLogFilters-java.util.List-">formatLogFilters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;logFilters)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#formatLogFilters-java.util.List-">formatLogFilters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;logFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListBase.html#formatLogFilters-java.util.List-">formatLogFilters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;logFilters)</code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListWithOR.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithOR.html#formatLogFilters-java.util.List-">formatLogFilters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;logFilters)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterListWithAND.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListWithAND.html#formatLogFilters-java.util.List-">formatLogFilters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;logFilters)</code>&nbsp;</td>
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FilterListBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/filter/FilterListBase.html#formatLogFilters-java.util.List-">formatLogFilters</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;logFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
@@ -1147,11 +1147,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReader.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#setRowFilter-org.apache.hadoop.hbase.filter.Filter-">setRowFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;rowFilter)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1403,13 +1403,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">UserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html#getFilter--">getFilter</a></span>()</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html b/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
index c599699..d48e344 100644
--- a/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
@@ -190,13 +190,13 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterWrapper.FilterRowRetCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.EngineType.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">RegexStringComparator.EngineType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.SatisfiesCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.SatisfiesCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterWrapper.FilterRowRetCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.Order.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.Order</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/fs/class-use/HFileSystem.html b/devapidocs/org/apache/hadoop/hbase/fs/class-use/HFileSystem.html
index b24aae5..f8fdb7c 100644
--- a/devapidocs/org/apache/hadoop/hbase/fs/class-use/HFileSystem.html
+++ b/devapidocs/org/apache/hadoop/hbase/fs/class-use/HFileSystem.html
@@ -146,14 +146,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/fs/HFileSystem.html" title="class in org.apache.hadoop.hbase.fs">HFileSystem</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReaderContextBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ReaderContextBuilder.html#hfs">hfs</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/fs/HFileSystem.html" title="class in org.apache.hadoop.hbase.fs">HFileSystem</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.FSReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html#hfs">hfs</a></span></code>
 <div class="block">The filesystem used to access data</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/fs/HFileSystem.html" title="class in org.apache.hadoop.hbase.fs">HFileSystem</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReaderContextBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ReaderContextBuilder.html#hfs">hfs</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/fs/HFileSystem.html" title="class in org.apache.hadoop.hbase.fs">HFileSystem</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReaderContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ReaderContext.html#hfs">hfs</a></span></code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html b/devapidocs/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html
index 19b9f41..b938a83 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html
@@ -324,7 +324,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html" title="enum in org.apache.hadoop.hbase.hbtop">RecordFilter.Operator</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html#line.34">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html" title="enum in org.apache.hadoop.hbase.hbtop">RecordFilter.Operator</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html#line.39">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -344,7 +344,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html" title="enum in org.apache.hadoop.hbase.hbtop">RecordFilter.Operator</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html#line.34">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html" title="enum in org.apache.hadoop.hbase.hbtop">RecordFilter.Operator</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html#line.39">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/Record.html b/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/Record.html
index 25dc689..3bc7485 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/Record.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/Record.html
@@ -209,7 +209,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -219,17 +219,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -239,14 +229,24 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionModeStrategy.html#selectModeFieldsAndAddCountField-java.util.List-java.util.List-org.apache.hadoop.hbase.hbtop.field.Field-">selectModeFieldsAndAddCountField</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;&nbsp;fieldInfos,
@@ -269,7 +269,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;currentRecord)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
@@ -277,15 +277,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;currentRecord)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
@@ -293,12 +285,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/RecordFilter.html b/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/RecordFilter.html
index 7e4de97..971afef 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/RecordFilter.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/class-use/RecordFilter.html
@@ -276,7 +276,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -286,17 +286,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -306,14 +296,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getRecords-org.apache.hadoop.hbase.ClusterMetrics-java.util.List-">getRecords</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a>&nbsp;clusterMetrics,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/RecordFilter.html" title="class in org.apache.hadoop.hbase.hbtop">RecordFilter</a>&gt;&nbsp;pushDownFilters)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html b/devapidocs/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html
index 7325172..5906449 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html
@@ -282,7 +282,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field">FieldValueType</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html#line.27">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field">FieldValueType</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html#line.29">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -302,7 +302,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field">FieldValueType</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html#line.27">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field">FieldValueType</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/field/FieldValueType.html#line.29">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/Field.html b/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/Field.html
index e1b9431..9d6c5ab 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/Field.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/Field.html
@@ -365,7 +365,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
@@ -373,15 +373,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
@@ -389,12 +381,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field">Field</a></code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getDefaultSortField--">getDefaultSortField</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/FieldInfo.html b/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/FieldInfo.html
index f54e314..1eeac6f 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/FieldInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/field/class-use/FieldInfo.html
@@ -108,28 +108,28 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#fieldInfos">fieldInfos</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -141,7 +141,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
@@ -149,15 +149,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
@@ -165,12 +157,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldInfo.html" title="class in org.apache.hadoop.hbase.hbtop.field">FieldInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#getFieldInfos--">getFieldInfos</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/field/package-tree.html b/devapidocs/org/apache/hadoop/hbase/hbtop/field/package-tree.html
index 96318e7..4245577 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/field/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/field/package-tree.html
@@ -92,8 +92,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">FieldValueType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">Field</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="../../../../../../org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">FieldValueType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/mode/class-use/DrillDownInfo.html b/devapidocs/org/apache/hadoop/hbase/hbtop/mode/class-use/DrillDownInfo.html
index 1ba7de4..04a2b1a 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/mode/class-use/DrillDownInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/mode/class-use/DrillDownInfo.html
@@ -104,7 +104,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;currentRecord)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
@@ -112,15 +112,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClientModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/ClientModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Mode.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/Mode.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;currentRecord)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
@@ -128,12 +120,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/NamespaceModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/RegionServerModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode">DrillDownInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">UserModeStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html#drillDown-org.apache.hadoop.hbase.hbtop.Record-">drillDown</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/Record.html" title="class in org.apache.hadoop.hbase.hbtop">Record</a>&nbsp;selectedRecord)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/screen/class-use/ScreenView.html b/devapidocs/org/apache/hadoop/hbase/hbtop/screen/class-use/ScreenView.html
index e2d02df..8c1a962 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/screen/class-use/ScreenView.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/screen/class-use/ScreenView.html
@@ -149,19 +149,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -427,11 +427,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterDisplayModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/FilterDisplayModeScreenPresenter.html#nextScreenView">nextScreenView</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MessageModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenPresenter.html#nextScreenView">nextScreenView</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MessageModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenPresenter.html#nextScreenView">nextScreenView</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterDisplayModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/FilterDisplayModeScreenPresenter.html#nextScreenView">nextScreenView</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -487,11 +487,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MessageModeScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TopScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TopScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MessageModeScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
@@ -499,15 +499,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MessageModeScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TopScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TopScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MessageModeScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenView.html#handleTimer--">handleTimer</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterDisplayModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/FilterDisplayModeScreenPresenter.html#returnToNextScreen--">returnToNextScreen</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MessageModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenPresenter.html#returnToNextScreen--">returnToNextScreen</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
@@ -515,7 +515,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MessageModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenPresenter.html#returnToNextScreen--">returnToNextScreen</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterDisplayModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/FilterDisplayModeScreenPresenter.html#returnToNextScreen--">returnToNextScreen</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/Color.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/Color.html
index b0d1622..39ffd59 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/Color.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/Color.html
@@ -306,7 +306,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">Color</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/Color.html#line.29">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">Color</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/Color.html#line.27">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -326,7 +326,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">Color</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/Color.html#line.29">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">Color</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/Color.html#line.27">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html
index e935f2c..fc15afe 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html
@@ -560,7 +560,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">KeyPress.Type</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html#line.78">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">KeyPress.Type</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html#line.30">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -580,7 +580,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">KeyPress.Type</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html#line.78">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal">KeyPress.Type</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html#line.30">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Attributes.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Attributes.html
index 83e07e4..22b4058 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Attributes.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Attributes.html
@@ -137,11 +137,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Attributes.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">Attributes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Cell.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/Cell.html#attributes">attributes</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TerminalPrinterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalPrinterImpl.html#attributes">attributes</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Attributes.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">Attributes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminalPrinterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalPrinterImpl.html#attributes">attributes</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Cell.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/Cell.html#attributes">attributes</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/CursorPosition.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/CursorPosition.html
index 429b0d4..f408f67 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/CursorPosition.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/CursorPosition.html
@@ -130,11 +130,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/CursorPosition.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">CursorPosition</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminalImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalImpl.html#getCursorPosition--">getCursorPosition</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScreenBuffer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/ScreenBuffer.html#getCursorPosition--">getCursorPosition</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/CursorPosition.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">CursorPosition</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScreenBuffer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/ScreenBuffer.html#getCursorPosition--">getCursorPosition</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TerminalImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalImpl.html#getCursorPosition--">getCursorPosition</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/KeyPress.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/KeyPress.html
index 332efaa..b49d035 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/KeyPress.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/KeyPress.html
@@ -132,11 +132,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -212,11 +212,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MessageModeScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TopScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TopScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MessageModeScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/top/MessageModeScreenView.html#handleKeyPress-org.apache.hadoop.hbase.hbtop.terminal.KeyPress-">handleKeyPress</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">KeyPress</a>&nbsp;keyPress)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/ScreenView.html" title="interface in org.apache.hadoop.hbase.hbtop.screen">ScreenView</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Terminal.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Terminal.html
index 6843fe2..a3066ad 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Terminal.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/class-use/Terminal.html
@@ -128,11 +128,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Terminal.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal">Terminal</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Screen.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/Screen.html#terminal">terminal</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#terminal">terminal</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Terminal.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal">Terminal</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractScreenView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/AbstractScreenView.html#terminal">terminal</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Screen.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/hbtop/screen/Screen.html#terminal">terminal</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/impl/class-use/ScreenBuffer.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/impl/class-use/ScreenBuffer.html
index 8cb1f7a..3642919 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/impl/class-use/ScreenBuffer.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/impl/class-use/ScreenBuffer.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/ScreenBuffer.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">ScreenBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminalImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalImpl.html#screenBuffer">screenBuffer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TerminalPrinterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalPrinterImpl.html#screenBuffer">screenBuffer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/ScreenBuffer.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">ScreenBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminalPrinterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalPrinterImpl.html#screenBuffer">screenBuffer</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TerminalImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalImpl.html#screenBuffer">screenBuffer</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/package-tree.html b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/package-tree.html
index 85ba9c8..5a984ee 100644
--- a/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/hbtop/terminal/package-tree.html
@@ -107,8 +107,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">Color</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">KeyPress.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="../../../../../../org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">Color</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/http/package-tree.html b/devapidocs/org/apache/hadoop/hbase/http/package-tree.html
index f22d03f..e4b4109 100644
--- a/devapidocs/org/apache/hadoop/hbase/http/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/http/package-tree.html
@@ -140,9 +140,9 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.http.<a href="../../../../../org/apache/hadoop/hbase/http/ProfileServlet.Output.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">ProfileServlet.Output</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.http.<a href="../../../../../org/apache/hadoop/hbase/http/ProfileServlet.Event.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">ProfileServlet.Event</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.http.<a href="../../../../../org/apache/hadoop/hbase/http/HttpConfig.Policy.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">HttpConfig.Policy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.http.<a href="../../../../../org/apache/hadoop/hbase/http/ProfileServlet.Output.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">ProfileServlet.Output</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/class-use/ByteBuffAllocator.html b/devapidocs/org/apache/hadoop/hbase/io/class-use/ByteBuffAllocator.html
index ce8168f..0d578bb 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/class-use/ByteBuffAllocator.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/class-use/ByteBuffAllocator.html
@@ -418,11 +418,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#bbAllocator">bbAllocator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#bbAllocator">bbAllocator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#bbAllocator">bbAllocator</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#bbAllocator">bbAllocator</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -435,14 +435,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getByteBuffAllocator--">getByteBuffAllocator</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getByteBuffAllocator--">getByteBuffAllocator</a></span>()</code>
 <div class="block">Allocator to allocate/free the ByteBuffers, those ByteBuffers can be on-heap or off-heap.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getByteBuffAllocator--">getByteBuffAllocator</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html b/devapidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html
index 5a639ec..7ab8a75 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/class-use/ImmutableBytesWritable.html
@@ -166,7 +166,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#createKey--">createKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#createKey--">createKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
@@ -174,7 +174,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#createKey--">createKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#createKey--">createKey</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -187,23 +187,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
-               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
-<div class="block">Builds a TableRecordReader.</div>
-</td>
+               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/MultiTableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
                org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableInputFormatBase.html#getRecordReader-org.apache.hadoop.mapred.InputSplit-org.apache.hadoop.mapred.JobConf-org.apache.hadoop.mapred.Reporter-">getRecordReader</a></span>(org.apache.hadoop.mapred.InputSplit&nbsp;split,
                org.apache.hadoop.mapred.JobConf&nbsp;job,
-               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
+               org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>
+<div class="block">Builds a TableRecordReader.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -222,6 +222,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -229,7 +236,7 @@
 <div class="block">Extract the grouping columns from value to construct a new key.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
@@ -238,16 +245,9 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
     <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -257,7 +257,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html#next-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-">next</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
     <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -285,6 +285,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
+   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
+   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">GroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/GroupingTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
@@ -292,7 +299,7 @@
 <div class="block">Extract the grouping columns from value to construct a new key.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableMap.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
@@ -301,13 +308,6 @@
 <div class="block">Pass the key, value to reduce</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
-   org.apache.hadoop.mapred.OutputCollector&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;&nbsp;output,
-   org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableReduce.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/IdentityTableReduce.html#reduce-org.apache.hadoop.hbase.io.ImmutableBytesWritable-java.util.Iterator-org.apache.hadoop.mapred.OutputCollector-org.apache.hadoop.mapred.Reporter-">reduce</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
@@ -353,7 +353,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#key">key</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#key">key</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
@@ -361,7 +361,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#key">key</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#key">key</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
@@ -431,13 +431,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.RecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.RecordReader.html#getCurrentKey--">getCurrentKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#getCurrentKey--">getCurrentKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#getCurrentKey--">getCurrentKey</a></span>()</code>
-<div class="block">Returns the current key.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRegionRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionRecordReader.html#getCurrentKey--">getCurrentKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
@@ -453,11 +451,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultithreadedTableMapper.SubMapRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultithreadedTableMapper.SubMapRecordReader.html#getCurrentKey--">getCurrentKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.RecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.RecordReader.html#getCurrentKey--">getCurrentKey</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.TableSnapshotRegionRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionRecordReader.html#getCurrentKey--">getCurrentKey</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableRecordReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html#getCurrentKey--">getCurrentKey</a></span>()</code>
+<div class="block">Returns the current key.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -470,16 +470,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
+                  org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
                   org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>
 <div class="block">Builds a <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce"><code>TableRecordReader</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
-                  org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MultiTableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableInputFormatBase.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;split,
@@ -499,13 +499,13 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MultiTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>,<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">MultiTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;context)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.html#getRegionStartKeys-java.util.List-boolean-">getRegionStartKeys</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionLocator.html" title="interface in org.apache.hadoop.hbase.client">RegionLocator</a>&gt;&nbsp;regionLocators,
@@ -570,14 +570,14 @@
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncTable.SyncMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">Import.Importer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/Import.Importer.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">Import.Importer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/Import.Importer.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncTable.SyncMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>&nbsp;</td>
 </tr>
@@ -589,21 +589,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">GroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/GroupingTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
-   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
-   org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>
-<div class="block">Extract the grouping columns from value to construct a new key.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RowCounter.RowCounterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/RowCounter.RowCounterMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;values,
    org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>
 <div class="block">Maps the data.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IdentityTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/IdentityTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
    <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
@@ -611,6 +603,14 @@
 <div class="block">Pass the key, value to reduce.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">GroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/GroupingTableMapper.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;key,
+   <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;value,
+   org.apache.hadoop.mapreduce.Mapper.Context&nbsp;context)</code>
+<div class="block">Extract the grouping columns from value to construct a new key.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Import.CellSortImporter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/Import.CellSortImporter.html#map-org.apache.hadoop.hbase.io.ImmutableBytesWritable-org.apache.hadoop.hbase.client.Result-org.apache.hadoop.mapreduce.Mapper.Context-">map</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/ImmutableBytesWritable.html" title="class in org.apache.hadoop.hbase.io">ImmutableBytesWritable</a>&nbsp;row,
diff --git a/devapidocs/org/apache/hadoop/hbase/io/class-use/TagCompressionContext.html b/devapidocs/org/apache/hadoop/hbase/io/class-use/TagCompressionContext.html
index 3358c9f..6c6b77d 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/class-use/TagCompressionContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/class-use/TagCompressionContext.html
@@ -133,14 +133,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#tagCompressionContext">tagCompressionContext</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#tagCompressionContext">tagCompressionContext</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#tagCompressionContext">tagCompressionContext</a></span></code>&nbsp;</td>
 </tr>
@@ -148,6 +140,14 @@
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#tagCompressionContext">tagCompressionContext</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#tagCompressionContext">tagCompressionContext</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#tagCompressionContext">tagCompressionContext</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -159,11 +159,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#getTagCompressionContext--">getTagCompressionContext</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getTagCompressionContext--">getTagCompressionContext</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getTagCompressionContext--">getTagCompressionContext</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#getTagCompressionContext--">getTagCompressionContext</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -176,11 +176,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#setTagCompressionContext-org.apache.hadoop.hbase.io.TagCompressionContext-">setTagCompressionContext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a>&nbsp;tagCompressionContext)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#setTagCompressionContext-org.apache.hadoop.hbase.io.TagCompressionContext-">setTagCompressionContext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a>&nbsp;tagCompressionContext)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#setTagCompressionContext-org.apache.hadoop.hbase.io.TagCompressionContext-">setTagCompressionContext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a>&nbsp;tagCompressionContext)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#setTagCompressionContext-org.apache.hadoop.hbase.io.TagCompressionContext-">setTagCompressionContext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a>&nbsp;tagCompressionContext)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html b/devapidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html
index 6c2be26..6848298 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/class-use/TimeRange.html
@@ -138,11 +138,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html#tr">tr</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#tr">tr</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#tr">tr</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Increment.html#tr">tr</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
@@ -150,7 +150,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#tr">tr</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#tr">tr</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -176,7 +176,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
@@ -186,9 +186,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#getTimeRange--">getTimeRange</a></span>()</code>
-<div class="block">Gets the TimeRange used for this append.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
@@ -198,7 +196,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html#getTimeRange--">getTimeRange</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Append.html#getTimeRange--">getTimeRange</a></span>()</code>
+<div class="block">Gets the TimeRange used for this append.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></code></td>
@@ -231,18 +231,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Table.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -256,6 +244,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateWithFilterBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncTable.CheckAndMutateWithFilterBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateWithFilterBuilder.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncTable.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">AsyncTable.CheckAndMutateBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.CheckAndMutateBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.CheckAndMutateBuilderImpl.html#timeRange-org.apache.hadoop.hbase.io.TimeRange-">timeRange</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;timeRange)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -510,12 +510,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#shouldSeek-org.apache.hadoop.hbase.io.TimeRange-long-">shouldSeek</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;tr,
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#shouldSeek-org.apache.hadoop.hbase.io.TimeRange-long-">shouldSeek</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;tr,
           long&nbsp;oldestUnexpiredTS)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#shouldSeek-org.apache.hadoop.hbase.io.TimeRange-long-">shouldSeek</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;tr,
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#shouldSeek-org.apache.hadoop.hbase.io.TimeRange-long-">shouldSeek</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a>&nbsp;tr,
           long&nbsp;oldestUnexpiredTS)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/compress/class-use/Compression.Algorithm.html b/devapidocs/org/apache/hadoop/hbase/io/compress/class-use/Compression.Algorithm.html
index 5860a5f..cf61a66 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/compress/class-use/Compression.Algorithm.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/compress/class-use/Compression.Algorithm.html
@@ -739,13 +739,13 @@
 <td class="colLast"><span class="typeNameLabel">CompressionContext.ValueCompressor.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.ValueCompressor.html#getAlgorithm--">getAlgorithm</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="../../../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReaderBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ReaderBase.html#getValueCompressionAlgorithm--">getValueCompressionAlgorithm</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.html#getValueCompressionAlgorithm--">getValueCompressionAlgorithm</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract <a href="../../../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReaderBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ReaderBase.html#getValueCompressionAlgorithm--">getValueCompressionAlgorithm</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompressionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.html#getValueCompressionAlgorithm-org.apache.hadoop.conf.Configuration-">getValueCompressionAlgorithm</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/crypto/aes/class-use/CryptoAES.html b/devapidocs/org/apache/hadoop/hbase/io/crypto/aes/class-use/CryptoAES.html
index ad64946..72f2b22 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/crypto/aes/class-use/CryptoAES.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/crypto/aes/class-use/CryptoAES.html
@@ -128,15 +128,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/io/crypto/aes/CryptoAES.html" title="class in org.apache.hadoop.hbase.io.crypto.aes">CryptoAES</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseSaslRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/security/HBaseSaslRpcClient.html#cryptoAES">cryptoAES</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CryptoAESWrapHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/security/CryptoAESWrapHandler.html#cryptoAES">cryptoAES</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/io/crypto/aes/CryptoAES.html" title="class in org.apache.hadoop.hbase.io.crypto.aes">CryptoAES</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CryptoAESUnwrapHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/security/CryptoAESUnwrapHandler.html#cryptoAES">cryptoAES</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseSaslRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/security/HBaseSaslRpcClient.html#cryptoAES">cryptoAES</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/io/crypto/aes/CryptoAES.html" title="class in org.apache.hadoop.hbase.io.crypto.aes">CryptoAES</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CryptoAESWrapHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/security/CryptoAESWrapHandler.html#cryptoAES">cryptoAES</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CryptoAESUnwrapHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/security/CryptoAESUnwrapHandler.html#cryptoAES">cryptoAES</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html b/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html
index c2948e9..6076b2f 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Cipher.html
@@ -136,18 +136,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/DefaultCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CryptoCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/CryptoCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/CipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Get an Cipher</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Cipher.html" title="class in org.apache.hadoop.hbase.io.crypto">Cipher</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/DefaultCipherProvider.html#getCipher-java.lang.String-">getCipher</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Encryptor.html b/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Encryptor.html
index c1a2126..0c94f86 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Encryptor.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/crypto/class-use/Encryptor.html
@@ -224,19 +224,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogWriter.html#encryptor">encryptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureAsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureAsyncProtobufLogWriter.html#encryptor">encryptor</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.html#encryptor">encryptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogWriter.html#encryptor">encryptor</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.EncryptedKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.EncryptedKvEncoder.html#encryptor">encryptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.html#encryptor">encryptor</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureAsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureAsyncProtobufLogWriter.html#encryptor">encryptor</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureWALCellCodec.EncryptedKvEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureWALCellCodec.EncryptedKvEncoder.html#encryptor">encryptor</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -259,11 +259,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SecureProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogWriter.html#setEncryptor-org.apache.hadoop.hbase.io.crypto.Encryptor-">setEncryptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a>&nbsp;encryptor)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureAsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureAsyncProtobufLogWriter.html#setEncryptor-org.apache.hadoop.hbase.io.crypto.Encryptor-">setEncryptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a>&nbsp;encryptor)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SecureAsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureAsyncProtobufLogWriter.html#setEncryptor-org.apache.hadoop.hbase.io.crypto.Encryptor-">setEncryptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a>&nbsp;encryptor)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SecureProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogWriter.html#setEncryptor-org.apache.hadoop.hbase.io.crypto.Encryptor-">setEncryptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a>&nbsp;encryptor)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/BufferedDataBlockEncoder.SeekerState.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/BufferedDataBlockEncoder.SeekerState.html
index 42e95d3..8001c5e 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/BufferedDataBlockEncoder.SeekerState.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/BufferedDataBlockEncoder.SeekerState.html
@@ -151,19 +151,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.FastDiffSeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffSeekerState.html#copyFromNext-org.apache.hadoop.hbase.io.encoding.BufferedDataBlockEncoder.SeekerState-">copyFromNext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.SeekerState</a>&nbsp;that)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.DiffSeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.DiffSeekerState.html#copyFromNext-org.apache.hadoop.hbase.io.encoding.BufferedDataBlockEncoder.SeekerState-">copyFromNext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.SeekerState</a>&nbsp;that)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#copyFromNext-org.apache.hadoop.hbase.io.encoding.BufferedDataBlockEncoder.SeekerState-">copyFromNext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.SeekerState</a>&nbsp;nextState)</code>
 <div class="block">Copy the state from the next one into this instance (the previous state
  placeholder).</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.FastDiffSeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffSeekerState.html#copyFromNext-org.apache.hadoop.hbase.io.encoding.BufferedDataBlockEncoder.SeekerState-">copyFromNext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.SeekerState</a>&nbsp;that)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/CompressionState.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/CompressionState.html
index 383e445..908ffb8 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/CompressionState.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/CompressionState.html
@@ -121,15 +121,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.FastDiffCompressionState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffCompressionState.html#copyFrom-org.apache.hadoop.hbase.io.encoding.CompressionState-">copyFrom</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a>&nbsp;state)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.DiffCompressionState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.DiffCompressionState.html#copyFrom-org.apache.hadoop.hbase.io.encoding.CompressionState-">copyFrom</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a>&nbsp;state)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.DiffCompressionState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.DiffCompressionState.html#copyFrom-org.apache.hadoop.hbase.io.encoding.CompressionState-">copyFrom</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a>&nbsp;state)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompressionState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html#copyFrom-org.apache.hadoop.hbase.io.encoding.CompressionState-">copyFrom</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a>&nbsp;state)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompressionState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html#copyFrom-org.apache.hadoop.hbase.io.encoding.CompressionState-">copyFrom</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a>&nbsp;state)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.FastDiffCompressionState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffCompressionState.html#copyFrom-org.apache.hadoop.hbase.io.encoding.CompressionState-">copyFrom</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a>&nbsp;state)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoder.EncodedSeeker.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoder.EncodedSeeker.html
index f9d6ece..1e20230 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoder.EncodedSeeker.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoder.EncodedSeeker.html
@@ -150,17 +150,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>
-<div class="block">Create a HFileBlock seeker which find KeyValues within a block.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
@@ -168,12 +158,22 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>
+<div class="block">Create a HFileBlock seeker which find KeyValues within a block.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoding.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoding.html
index 35ed18a..45ba99f 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoding.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/DataBlockEncoding.html
@@ -267,11 +267,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
@@ -301,18 +301,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
+                           byte[]&nbsp;header,
+                           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
                            byte[]&nbsp;headerBytes,
                            <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>
 <div class="block">Creates a encoder specific encoding context</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
-                           byte[]&nbsp;header,
-                           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -370,8 +370,8 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
@@ -379,11 +379,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileDataBlockEncoderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoderImpl.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileDataBlockEncoderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoderImpl.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
@@ -403,11 +403,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html#getEffectiveEncodingInCache-boolean-">getEffectiveEncodingInCache</a></span>(boolean&nbsp;isCompaction)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#getEffectiveEncodingInCache-boolean-">getEffectiveEncodingInCache</a></span>(boolean&nbsp;isCompaction)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#getEffectiveEncodingInCache-boolean-">getEffectiveEncodingInCache</a></span>(boolean&nbsp;isCompaction)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html#getEffectiveEncodingInCache-boolean-">getEffectiveEncodingInCache</a></span>(boolean&nbsp;isCompaction)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/EncodingState.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/EncodingState.html
index f8adc46..01012c5 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/EncodingState.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/EncodingState.html
@@ -141,11 +141,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getEncodingState--">getEncodingState</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getEncodingState--">getEncodingState</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getEncodingState--">getEncodingState</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getEncodingState--">getEncodingState</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -158,13 +158,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#setEncodingState-org.apache.hadoop.hbase.io.encoding.EncodingState-">setEncodingState</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a>&nbsp;state)</code>
-<div class="block">Sets the encoding state.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#setEncodingState-org.apache.hadoop.hbase.io.encoding.EncodingState-">setEncodingState</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a>&nbsp;state)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#setEncodingState-org.apache.hadoop.hbase.io.encoding.EncodingState-">setEncodingState</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a>&nbsp;state)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#setEncodingState-org.apache.hadoop.hbase.io.encoding.EncodingState-">setEncodingState</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a>&nbsp;state)</code>
+<div class="block">Sets the encoding state.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDecodingContext.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDecodingContext.html
index f3eff49..9b3f574 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDecodingContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDecodingContext.html
@@ -139,15 +139,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockDecodingContext-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockDecodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#newDataBlockDecodingContext-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockDecodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>
 <div class="block">Creates an encoder specific decoding context, which will prepare the data
  before actual decoding</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockDecodingContext-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockDecodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -159,6 +159,22 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>
 <div class="block">Create a HFileBlock seeker which find KeyValues within a block.</div>
 </td>
@@ -168,27 +184,9 @@
 <td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#createSeeker-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">createSeeker</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#decodeKeyValues-java.io.DataInputStream-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">decodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
-               <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>
-<div class="block">Decode.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#decodeKeyValues-java.io.DataInputStream-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">decodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
+               <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;blkDecodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
@@ -197,8 +195,10 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#decodeKeyValues-java.io.DataInputStream-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">decodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
-               <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;blkDecodingCtx)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#decodeKeyValues-java.io.DataInputStream-org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext-">decodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
+               <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a>&nbsp;decodingCtx)</code>
+<div class="block">Decode.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultDecodingContext.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultDecodingContext.html
index 7a76a08..83ae618 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultDecodingContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultDecodingContext.html
@@ -117,21 +117,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
                        int&nbsp;allocateHeaderLength,
                        int&nbsp;skipLastBytes,
                        <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
                        int&nbsp;allocateHeaderLength,
                        int&nbsp;skipLastBytes,
                        <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
                        int&nbsp;allocateHeaderLength,
                        int&nbsp;skipLastBytes,
                        <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
@@ -144,8 +144,8 @@
                        <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#internalDecodeKeyValues-java.io.DataInputStream-int-int-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultDecodingContext-">internalDecodeKeyValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a>&nbsp;source,
                        int&nbsp;allocateHeaderLength,
                        int&nbsp;skipLastBytes,
                        <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultDecodingContext</a>&nbsp;decodingCtx)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultEncodingContext.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultEncodingContext.html
index 92b6bc3..6ee0dc8 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultEncodingContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockDefaultEncodingContext.html
@@ -130,19 +130,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
               <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-              <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
+<td class="colFirst"><code>abstract int</code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+              <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingCtx,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
               <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
@@ -153,9 +153,9 @@
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract int</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-              <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingCtx,
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#internalEncode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext-java.io.DataOutputStream-">internalEncode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+              <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a>&nbsp;encodingContext,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockEncodingContext.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockEncodingContext.html
index feac0ea..c1417bb 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockEncodingContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/HFileBlockEncodingContext.html
@@ -143,18 +143,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
+                           byte[]&nbsp;header,
+                           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
                            byte[]&nbsp;headerBytes,
                            <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>
 <div class="block">Creates a encoder specific encoding context</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
-                           byte[]&nbsp;header,
-                           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -166,11 +166,9 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
       <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>
-<div class="block">Encodes a KeyValue.</div>
-</td>
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -180,9 +178,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#encode-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">encode</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
       <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>
+<div class="block">Encodes a KeyValue.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#endBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-byte:A-">endBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
+                byte[]&nbsp;uncompressedBytesWithHeader)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#endBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-byte:A-">endBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
+                byte[]&nbsp;uncompressedBytesWithHeader)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -193,42 +205,30 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#endBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-byte:A-">endBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
-                byte[]&nbsp;uncompressedBytesWithHeader)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#endBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-byte:A-">endBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out,
-                byte[]&nbsp;uncompressedBytesWithHeader)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#postEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-">postEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
-                  <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>
-<div class="block">Starts encoding for a block of KeyValues.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;blkEncodingCtx,
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;blkEncodingCtx,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;blkEncodingCtx,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;blkEncodingCtx,
+                  <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;blkEncodingCtx,
-                  <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#startBlockEncoding-org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext-java.io.DataOutputStream-">startBlockEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a>&nbsp;encodingCtx,
+                  <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html?is-external=true" title="class or interface in java.io">DataOutputStream</a>&nbsp;out)</code>
+<div class="block">Starts encoding for a block of KeyValues.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/NoneEncoder.html b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/NoneEncoder.html
index d453d09..7950f28 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/NoneEncoder.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/encoding/class-use/NoneEncoder.html
@@ -110,13 +110,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/NoneEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">NoneEncoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.CopyKeyEncodingState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.CopyKeyEncodingState.html#encoder">encoder</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/NoneEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">NoneEncoder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RowIndexEncoderV1.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexEncoderV1.html#encoder">encoder</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/NoneEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">NoneEncoder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.CopyKeyEncodingState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.CopyKeyEncodingState.html#encoder">encoder</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/bucket/class-use/BucketEntry.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/bucket/class-use/BucketEntry.html
index 5d9060e..752dec3 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/bucket/class-use/BucketEntry.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/bucket/class-use/BucketEntry.html
@@ -110,13 +110,13 @@
 <td class="colLast"><span class="typeNameLabel">BucketCache.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.html#backingMap">backingMap</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>,<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CachedEntryQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/CachedEntryQueue.html#COMPARATOR">COMPARATOR</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>(package private) static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BucketEntry.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html#COMPARATOR">COMPARATOR</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>,<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CachedEntryQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/CachedEntryQueue.html#COMPARATOR">COMPARATOR</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private org.apache.hbase.thirdparty.com.google.common.collect.MinMaxPriorityQueue&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>,<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CachedEntryQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/CachedEntryQueue.html#queue">queue</a></span></code>&nbsp;</td>
@@ -185,8 +185,8 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExclusiveMemoryMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ExclusiveMemoryMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract <a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
@@ -196,9 +196,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>
-<div class="block">Transfers data from file to the given byte buffer</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ExclusiveMemoryMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ExclusiveMemoryMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
@@ -209,8 +207,10 @@
 <td class="colLast"><span class="typeNameLabel">ByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ByteBufferIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>
+<div class="block">Transfers data from file to the given byte buffer</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.shaded.protobuf.generated.BucketCacheProtos.BucketEntry</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCache.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCache.html
index 92befd3..5f0aeb4 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCache.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCache.html
@@ -291,11 +291,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#getBlockCaches--">getBlockCaches</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getBlockCaches--">getBlockCaches</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getBlockCaches--">getBlockCaches</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#getBlockCaches--">getBlockCaches</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>[]</code></td>
@@ -345,11 +345,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#setVictimCache-org.apache.hadoop.hbase.io.hfile.BlockCache-">setVictimCache</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>&nbsp;victimCache)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#setVictimCache-org.apache.hadoop.hbase.io.hfile.BlockCache-">setVictimCache</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>&nbsp;victimCache)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#setVictimCache-org.apache.hadoop.hbase.io.hfile.BlockCache-">setVictimCache</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>&nbsp;victimCache)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#setVictimCache-org.apache.hadoop.hbase.io.hfile.BlockCache-">setVictimCache</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>&nbsp;victimCache)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -472,11 +472,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#blockCache">blockCache</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerWrapperImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerWrapperImpl.html#blockCache">blockCache</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerWrapperImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerWrapperImpl.html#blockCache">blockCache</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#blockCache">blockCache</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -502,13 +502,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getBlockCache--">getBlockCache</a></span>()</code>
-<div class="block">May be null if this is a master which not carry table.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getBlockCache--">getBlockCache</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile">BlockCache</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getBlockCache--">getBlockCache</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getBlockCache--">getBlockCache</a></span>()</code>
+<div class="block">May be null if this is a master which not carry table.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCacheKey.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCacheKey.html
index 5d7d604..ca04f9a 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCacheKey.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockCacheKey.html
@@ -206,16 +206,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;key,
+          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
 <div class="block">Cache the block with the specified name and buffer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;key,
-          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
@@ -244,19 +244,25 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value,
+          boolean&nbsp;inMemory)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
           boolean&nbsp;inMemory)</code>
 <div class="block">Cache the block with the specified name and buffer.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
-          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value,
+<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
           boolean&nbsp;inMemory)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
@@ -264,12 +270,6 @@
 <div class="block">Cache the block with the specified name and buffer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
-          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
-          boolean&nbsp;inMemory)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MemcachedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
@@ -278,13 +278,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#containsBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">containsBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>
-<div class="block">Whether the cache contains block with specified cacheKey</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#containsBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">containsBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#containsBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">containsBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#containsBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">containsBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>
+<div class="block">Whether the cache contains block with specified cacheKey</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -310,19 +310,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#evictBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-">evictBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -346,6 +346,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+        boolean&nbsp;caching,
+        boolean&nbsp;repeat,
+        boolean&nbsp;updateCacheMetrics)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
         boolean&nbsp;caching,
         boolean&nbsp;repeat,
@@ -353,14 +360,14 @@
 <div class="block">Get the buffer of the block with the specified name.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
         boolean&nbsp;caching,
         boolean&nbsp;repeat,
         boolean&nbsp;updateCacheMetrics)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
         boolean&nbsp;caching,
@@ -369,13 +376,6 @@
 <div class="block">Get the buffer of the block with the specified name.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
-        boolean&nbsp;caching,
-        boolean&nbsp;repeat,
-        boolean&nbsp;updateCacheMetrics)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MemcachedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockPriority.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockPriority.html
index c3de879c..49859a0 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockPriority.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockPriority.html
@@ -127,11 +127,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockPriority</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.CachedBlockView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.CachedBlockView.html#getBlockPriority--">getBlockPriority</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CachedBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html#getBlockPriority--">getBlockPriority</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockPriority</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CachedBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html#getBlockPriority--">getBlockPriority</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.CachedBlockView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.CachedBlockView.html#getBlockPriority--">getBlockPriority</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockPriority</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockType.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockType.html
index 882d152..d0bbac6 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockType.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/BlockType.html
@@ -135,11 +135,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -152,13 +152,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#postEncoding-org.apache.hadoop.hbase.io.hfile.BlockType-">postEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a>&nbsp;blockType)</code>
-<div class="block">Do any action that needs to be performed after the encoding.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#postEncoding-org.apache.hadoop.hbase.io.hfile.BlockType-">postEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a>&nbsp;blockType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#postEncoding-org.apache.hadoop.hbase.io.hfile.BlockType-">postEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a>&nbsp;blockType)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#postEncoding-org.apache.hadoop.hbase.io.hfile.BlockType-">postEncoding</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a>&nbsp;blockType)</code>
+<div class="block">Do any action that needs to be performed after the encoding.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -176,24 +176,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BlockCacheKey.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html#blockType">blockType</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#blockType">blockType</a></span></code>
 <div class="block">Type of block.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.Writer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html#blockType">blockType</a></span></code>
 <div class="block">Current block type.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlockBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockBuilder.html#blockType">blockType</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BlockCacheKey.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html#blockType">blockType</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -205,44 +205,44 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Cacheable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CachedBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BlockCacheKey.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.BlockWritable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockWritable.html#getBlockType--">getBlockType</a></span>()</code>
 <div class="block">The type of block this data should use.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.CachedBlockView.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.CachedBlockView.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CachedBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompoundBloomFilterWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.html#getInlineBlockType--">getInlineBlockType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BlockCacheKey.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Cacheable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getBlockType--">getBlockType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">InlineBlockWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InlineBlockWriter.html#getInlineBlockType--">getInlineBlockType</a></span>()</code>
 <div class="block">The type of blocks this block writer produces.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlockIndex.BlockIndexWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockIndex.BlockIndexWriter.html#getInlineBlockType--">getInlineBlockType</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompoundBloomFilterWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilterWriter.html#getInlineBlockType--">getInlineBlockType</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BlockType.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html#parse-byte:A-int-int-">parse</a></span>(byte[]&nbsp;buf,
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheConfig.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheConfig.html
index 8e63dea..5805908 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheConfig.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheConfig.html
@@ -200,26 +200,26 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#cacheConf">cacheConf</a></span></code>
-<div class="block">Cache configuration for caching data on write.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFile.WriterFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.WriterFactory.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.html#cacheConf">cacheConf</a></span></code>
 <div class="block">Block cache configuration.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlockIndex.BlockIndexWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockIndex.BlockIndexWriter.html#cacheConf">cacheConf</a></span></code>
 <div class="block">CacheConfig, or null if cache-on-write is disabled</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#cacheConf">cacheConf</a></span></code>
+<div class="block">Cache configuration for caching data on write.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CacheConfig.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html#DISABLED">DISABLED</a></span></code>
@@ -431,19 +431,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileWriter.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileWriter.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#cacheConf">cacheConf</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheStats.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheStats.html
index 0fc0c00..8c1024a 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheStats.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheStats.html
@@ -143,13 +143,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheStats</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#stats">stats</a></span></code>
-<div class="block">Cache statistics</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#stats">stats</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheStats</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#stats">stats</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#stats">stats</a></span></code>
+<div class="block">Cache statistics</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheStats</a></code></td>
@@ -186,13 +186,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheStats</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#getStats--">getStats</a></span>()</code>
-<div class="block">Get counter statistics for this cache.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getStats--">getStats</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheStats</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getStats--">getStats</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#getStats--">getStats</a></span>()</code>
+<div class="block">Get counter statistics for this cache.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheStats.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheStats</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/Cacheable.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/Cacheable.html
index 96eaef3..68e20ac 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/Cacheable.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/Cacheable.html
@@ -202,16 +202,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
-<div class="block">The block cached in LRUBlockCache will always be an heap block: on the one side, the heap
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
+<div class="block">The block cached in TinyLfuBlockCache will always be an heap block: on the one side, the heap
  access will be more faster then off-heap, the small index block or meta block cached in
  CombinedBlockCache will benefit a lot.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
-<div class="block">The block cached in TinyLfuBlockCache will always be an heap block: on the one side, the heap
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
+<div class="block">The block cached in LRUBlockCache will always be an heap block: on the one side, the heap
  access will be more faster then off-heap, the small index block or meta block cached in
  CombinedBlockCache will benefit a lot.</div>
 </td>
@@ -242,6 +242,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+        boolean&nbsp;caching,
+        boolean&nbsp;repeat,
+        boolean&nbsp;updateCacheMetrics)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
         boolean&nbsp;caching,
         boolean&nbsp;repeat,
@@ -249,14 +256,14 @@
 <div class="block">Get the buffer of the block with the specified name.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
         boolean&nbsp;caching,
         boolean&nbsp;repeat,
         boolean&nbsp;updateCacheMetrics)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
         boolean&nbsp;caching,
@@ -265,13 +272,6 @@
 <div class="block">Get the buffer of the block with the specified name.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
-        boolean&nbsp;caching,
-        boolean&nbsp;repeat,
-        boolean&nbsp;updateCacheMetrics)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MemcachedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.html#getBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-boolean-boolean-boolean-">getBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
@@ -318,13 +318,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Cacheable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--">getDeserializer</a></span>()</code>
-<div class="block">Returns CacheableDeserializer instance which reconstructs original object from ByteBuffer.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDeserializer--">getDeserializer</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDeserializer--">getDeserializer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Cacheable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--">getDeserializer</a></span>()</code>
+<div class="block">Returns CacheableDeserializer instance which reconstructs original object from ByteBuffer.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&gt;</code></td>
@@ -343,16 +343,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
-<div class="block">The block cached in LRUBlockCache will always be an heap block: on the one side, the heap
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
+<div class="block">The block cached in TinyLfuBlockCache will always be an heap block: on the one side, the heap
  access will be more faster then off-heap, the small index block or meta block cached in
  CombinedBlockCache will benefit a lot.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
-<div class="block">The block cached in TinyLfuBlockCache will always be an heap block: on the one side, the heap
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#asReferencedHeapBlock-org.apache.hadoop.hbase.io.hfile.Cacheable-">asReferencedHeapBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
+<div class="block">The block cached in LRUBlockCache will always be an heap block: on the one side, the heap
  access will be more faster then off-heap, the small index block or meta block cached in
  CombinedBlockCache will benefit a lot.</div>
 </td>
@@ -379,16 +379,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;key,
+          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf)</code>
 <div class="block">Cache the block with the specified name and buffer.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;key,
-          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
@@ -417,19 +417,25 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value,
+          boolean&nbsp;inMemory)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
           boolean&nbsp;inMemory)</code>
 <div class="block">Cache the block with the specified name and buffer.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
-          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;value,
+<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
+          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
           boolean&nbsp;inMemory)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruAdaptiveBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
@@ -437,12 +443,6 @@
 <div class="block">Cache the block with the specified name and buffer.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">InclusiveCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InclusiveCombinedBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
-          <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&nbsp;buf,
-          boolean&nbsp;inMemory)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MemcachedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.html#cacheBlock-org.apache.hadoop.hbase.io.hfile.BlockCacheKey-org.apache.hadoop.hbase.io.hfile.Cacheable-boolean-">cacheBlock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile">BlockCacheKey</a>&nbsp;cacheKey,
@@ -567,8 +567,8 @@
 <td class="colLast"><span class="typeNameLabel">BucketCache.RAMQueueEntry.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.RAMQueueEntry.html#getData--">getData</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExclusiveMemoryMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ExclusiveMemoryMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
@@ -578,9 +578,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>
-<div class="block">Transfers data from file to the given byte buffer</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ExclusiveMemoryMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ExclusiveMemoryMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
@@ -591,8 +589,10 @@
 <td class="colLast"><span class="typeNameLabel">ByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ByteBufferIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.html#read-org.apache.hadoop.hbase.io.hfile.bucket.BucketEntry-">read</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/BucketEntry.html" title="class in org.apache.hadoop.hbase.io.hfile.bucket">BucketEntry</a>&nbsp;be)</code>
+<div class="block">Transfers data from file to the given byte buffer</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheableDeserializer.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheableDeserializer.html
index 3f4c477..3febc4c 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheableDeserializer.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CacheableDeserializer.html
@@ -155,13 +155,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Cacheable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--">getDeserializer</a></span>()</code>
-<div class="block">Returns CacheableDeserializer instance which reconstructs original object from ByteBuffer.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDeserializer--">getDeserializer</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDeserializer--">getDeserializer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Cacheable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--">getDeserializer</a></span>()</code>
+<div class="block">Returns CacheableDeserializer instance which reconstructs original object from ByteBuffer.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>&gt;</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CachedBlock.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CachedBlock.html
index f04ca2e..0cdcb64 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CachedBlock.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/CachedBlock.html
@@ -175,11 +175,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html" title="interface in org.apache.hadoop.hbase.io.hfile">CachedBlock</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html" title="interface in org.apache.hadoop.hbase.io.hfile">CachedBlock</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/LruBlockCache.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CachedBlock.html" title="interface in org.apache.hadoop.hbase.io.hfile">CachedBlock</a>&gt;</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Reader.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Reader.html
index d85bb49..0656ef0 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Reader.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Reader.html
@@ -149,15 +149,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Reader</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileReaderImpl.HFileScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.HFileScannerImpl.html#reader">reader</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Reader</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompoundBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilter.html#reader">reader</a></span></code>
 <div class="block">Used to load chunks on demand</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Reader</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileReaderImpl.HFileScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.HFileScannerImpl.html#reader">reader</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Writer.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Writer.html
index 7053649..2ad9c16 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Writer.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFile.Writer.html
@@ -203,15 +203,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RowBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/util/RowBloomContext.html#addLastBloomKey-org.apache.hadoop.hbase.io.hfile.HFile.Writer-">addLastBloomKey</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Writer</a>&nbsp;writer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">BloomContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/util/BloomContext.html#addLastBloomKey-org.apache.hadoop.hbase.io.hfile.HFile.Writer-">addLastBloomKey</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Writer</a>&nbsp;writer)</code>
 <div class="block">Adds the last bloom key to the HFile Writer as part of StorefileWriter close.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RowBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/util/RowBloomContext.html#addLastBloomKey-org.apache.hadoop.hbase.io.hfile.HFile.Writer-">addLastBloomKey</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Writer</a>&nbsp;writer)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RowColBloomContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/util/RowColBloomContext.html#addLastBloomKey-org.apache.hadoop.hbase.io.hfile.HFile.Writer-">addLastBloomKey</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFile.Writer</a>&nbsp;writer)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileBlock.Writer.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileBlock.Writer.html
index f4b03ce..28a3c20 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileBlock.Writer.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileBlock.Writer.html
@@ -106,15 +106,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Writer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockIndex.BlockIndexWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockIndex.BlockIndexWriter.html#blockWriter">blockWriter</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Writer</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#blockWriter">blockWriter</a></span></code>
 <div class="block">block writer</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Writer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockIndex.BlockIndexWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockIndex.BlockIndexWriter.html#blockWriter">blockWriter</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileContext.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileContext.html
index 48372d6..27bc9bf 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileContext.html
@@ -115,11 +115,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#fileContext">fileContext</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#fileContext">fileContext</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#fileContext">fileContext</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#fileContext">fileContext</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
@@ -136,19 +136,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -161,29 +161,29 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockDecodingContext-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockDecodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#newDataBlockDecodingContext-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockDecodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>
 <div class="block">Creates an encoder specific decoding context, which will prepare the data
  before actual decoding</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockDecodingContext-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockDecodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
+                           byte[]&nbsp;header,
+                           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
                            byte[]&nbsp;headerBytes,
                            <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>
 <div class="block">Creates a encoder specific encoding context</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html#newDataBlockEncodingContext-org.apache.hadoop.hbase.io.encoding.DataBlockEncoding-byte:A-org.apache.hadoop.hbase.io.hfile.HFileContext-">newDataBlockEncodingContext</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a>&nbsp;encoding,
-                           byte[]&nbsp;header,
-                           <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;meta)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -224,23 +224,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFile.WriterFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.WriterFactory.html#fileContext">fileContext</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#fileContext">fileContext</a></span></code>
 <div class="block">Meta data that holds meta information on the hfileblock.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.Writer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html#fileContext">fileContext</a></span></code>
 <div class="block">Meta data that holds information about the hfileblock</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlock.FSReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html#fileContext">fileContext</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFile.WriterFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.WriterFactory.html#fileContext">fileContext</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlock.FSReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html#fileContext">fileContext</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
@@ -283,24 +283,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#getFileContext--">getFileContext</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFile.Writer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html#getFileContext--">getFileContext</a></span>()</code>
 <div class="block">Return the file context for the HFile this writer belongs to</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#getFileContext--">getFileContext</a></span>()</code>
 <div class="block">Return the file context of the HFile this reader belongs to</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.html#getFileContext--">getFileContext</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#getFileContext--">getFileContext</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getHFileContext--">getHFileContext</a></span>()</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileDataBlockEncoder.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileDataBlockEncoder.html
index 277a122..9ca0e7e 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileDataBlockEncoder.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileDataBlockEncoder.html
@@ -174,15 +174,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlock.FSReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReader.html#setDataBlockEncoder-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoder</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;encoder)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#setDataBlockEncoder-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoder</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;dataBlockEncoder)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlock.FSReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html#setDataBlockEncoder-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoder</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;encoder)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlock.FSReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReader.html#setDataBlockEncoder-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoder</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;encoder)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFile.Reader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Reader.html#setDataBlockEncoder-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoder</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;dataBlockEncoder)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileBlock.FSReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html#setDataBlockEncoder-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoder</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;encoder)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileInfo.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileInfo.html
index 947917b..f42ec28 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/HFileInfo.html
@@ -138,13 +138,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileInfo.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#fileInfo">fileInfo</a></span></code>
-<div class="block">A "file info" block: a key-value map of file-wide metadata.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.html#fileInfo">fileInfo</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileInfo.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.html#fileInfo">fileInfo</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#fileInfo">fileInfo</a></span></code>
+<div class="block">A "file info" block: a key-value map of file-wide metadata.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/InlineBlockWriter.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/InlineBlockWriter.html
index 4c8464a..44fab77 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/InlineBlockWriter.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/class-use/InlineBlockWriter.html
@@ -145,15 +145,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#addInlineBlockWriter-org.apache.hadoop.hbase.io.hfile.InlineBlockWriter-">addInlineBlockWriter</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InlineBlockWriter.html" title="interface in org.apache.hadoop.hbase.io.hfile">InlineBlockWriter</a>&nbsp;ibw)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HFile.Writer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html#addInlineBlockWriter-org.apache.hadoop.hbase.io.hfile.InlineBlockWriter-">addInlineBlockWriter</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InlineBlockWriter.html" title="interface in org.apache.hadoop.hbase.io.hfile">InlineBlockWriter</a>&nbsp;bloomWriter)</code>
 <div class="block">Adds an inline block writer such as a multi-level block index writer or
  a compound Bloom filter writer.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#addInlineBlockWriter-org.apache.hadoop.hbase.io.hfile.InlineBlockWriter-">addInlineBlockWriter</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/InlineBlockWriter.html" title="interface in org.apache.hadoop.hbase.io.hfile">InlineBlockWriter</a>&nbsp;ibw)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
index b41f0be..5b7f115 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
@@ -306,10 +306,10 @@
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockPriority</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.BlockCategory.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType.BlockCategory</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheFactory.ExternalBlockCaches.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockCacheFactory.ExternalBlockCaches</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.BlockCategory.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType.BlockCategory</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ReaderContext.ReaderType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">ReaderContext.ReaderType</span></a></li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/io/util/BlockIOUtils.html b/devapidocs/org/apache/hadoop/hbase/io/util/BlockIOUtils.html
index 2bf6c11..4c0e34a 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/util/BlockIOUtils.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/util/BlockIOUtils.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9};
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -75,13 +75,13 @@
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
@@ -110,7 +110,7 @@
 <hr>
 <br>
 <pre>@InterfaceAudience.Private
-public final class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.32">BlockIOUtils</a>
+public final class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.36">BlockIOUtils</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
 </li>
 </ul>
@@ -118,6 +118,29 @@
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#byteBufferPositionedReadMethod">byteBufferPositionedReadMethod</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#LOG">LOG</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.summary">
@@ -157,10 +180,14 @@
               <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;out)</code>&nbsp;</td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code>private static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#initByteBufferPositionReadableMethod--">initByteBufferPositionReadableMethod</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#isByteBufferReadable-org.apache.hadoop.fs.FSDataInputStream-">isByteBufferReadable</a></span>(org.apache.hadoop.fs.FSDataInputStream&nbsp;is)</code>&nbsp;</td>
 </tr>
-<tr id="i2" class="altColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtra-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtra</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
               org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
@@ -171,7 +198,23 @@
  <code>extraLen</code> also if available.</div>
 </td>
 </tr>
-<tr id="i3" class="rowColor">
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>private static boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtraDirectly-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtraDirectly</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+                      org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
+                      long&nbsp;position,
+                      int&nbsp;necessaryLen,
+                      int&nbsp;extraLen)</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>private static boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtraOnHeap-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtraOnHeap</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+                    org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
+                    long&nbsp;position,
+                    int&nbsp;necessaryLen,
+                    int&nbsp;extraLen)</code>&nbsp;</td>
+</tr>
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#readFully-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-int-">readFully</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
          org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
@@ -179,7 +222,7 @@
 <div class="block">Read length bytes into ByteBuffers directly.</div>
 </td>
 </tr>
-<tr id="i4" class="altColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#readFullyWithHeapBuffer-java.io.InputStream-org.apache.hadoop.hbase.nio.ByteBuff-int-">readFullyWithHeapBuffer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
                        <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;out,
@@ -188,7 +231,7 @@
  size is 1024 now).</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#readWithExtra-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-int-int-">readWithExtra</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
              org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
@@ -198,7 +241,7 @@
  contains necessaryLen bytes, which depends on how much bytes do the last time we read.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>private static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#readWithExtraOnHeap-java.io.InputStream-byte:A-int-int-int-">readWithExtraOnHeap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
                    byte[]&nbsp;buf,
@@ -225,6 +268,32 @@
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="LOG">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>LOG</h4>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.37">LOG</a></pre>
+</li>
+</ul>
+<a name="byteBufferPositionedReadMethod">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>byteBufferPositionedReadMethod</h4>
+<pre>private static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.40">byteBufferPositionedReadMethod</a></pre>
+</li>
+</ul>
+</li>
+</ul>
 <!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.detail">
@@ -237,7 +306,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>BlockIOUtils</h4>
-<pre>private&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.35">BlockIOUtils</a>()</pre>
+<pre>private&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.47">BlockIOUtils</a>()</pre>
 </li>
 </ul>
 </li>
@@ -248,13 +317,22 @@
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a name="initByteBufferPositionReadableMethod--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>initByteBufferPositionReadableMethod</h4>
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.51">initByteBufferPositionReadableMethod</a>()</pre>
+</li>
+</ul>
 <a name="isByteBufferReadable-org.apache.hadoop.fs.FSDataInputStream-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>isByteBufferReadable</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.39">isByteBufferReadable</a>(org.apache.hadoop.fs.FSDataInputStream&nbsp;is)</pre>
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.62">isByteBufferReadable</a>(org.apache.hadoop.fs.FSDataInputStream&nbsp;is)</pre>
 </li>
 </ul>
 <a name="readFully-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-int-">
@@ -263,7 +341,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>readFully</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.58">readFully</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.81">readFully</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
                              org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
                              int&nbsp;length)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -284,7 +362,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>readFullyWithHeapBuffer</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.97">readFullyWithHeapBuffer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.120">readFullyWithHeapBuffer</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
                                            <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;out,
                                            int&nbsp;length)
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -306,7 +384,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>readWithExtraOnHeap</h4>
-<pre>private static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.128">readWithExtraOnHeap</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
+<pre>private static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.151">readWithExtraOnHeap</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
                                            byte[]&nbsp;buf,
                                            int&nbsp;bufOffset,
                                            int&nbsp;necessaryLen,
@@ -336,7 +414,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>readWithExtra</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.159">readWithExtra</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.182">readWithExtra</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
                                     org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
                                     int&nbsp;necessaryLen,
                                     int&nbsp;extraLen)
@@ -363,7 +441,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>preadWithExtra</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.208">preadWithExtra</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.235">preadWithExtra</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
                                      org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
                                      long&nbsp;position,
                                      int&nbsp;necessaryLen,
@@ -373,7 +451,10 @@
  <code>extraLen</code> also if available. Analogous to
  <code>IOUtils.readFully(InputStream, byte[], int, int)</code>, but uses positional read and
  specifies a number of "extra" bytes that would be desirable but not absolutely necessary to
- read.</div>
+ read.
+
+ If the input stream supports ByteBufferPositionedReadable, it reads to the byte buffer
+ directly, and does not allocate a temporary byte array.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>buff</code> - ByteBuff to read into.</dd>
@@ -388,13 +469,49 @@
 </dl>
 </li>
 </ul>
+<a name="preadWithExtraOnHeap-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>preadWithExtraOnHeap</h4>
+<pre>private static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.246">preadWithExtraOnHeap</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+                                            org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
+                                            long&nbsp;position,
+                                            int&nbsp;necessaryLen,
+                                            int&nbsp;extraLen)
+                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="preadWithExtraDirectly-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>preadWithExtraDirectly</h4>
+<pre>private static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.265">preadWithExtraDirectly</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+                                              org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
+                                              long&nbsp;position,
+                                              int&nbsp;necessaryLen,
+                                              int&nbsp;extraLen)
+                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
 <a name="copyToByteBuff-byte:A-int-int-org.apache.hadoop.hbase.nio.ByteBuff-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>copyToByteBuff</h4>
-<pre>private static&nbsp;int&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.232">copyToByteBuff</a>(byte[]&nbsp;buf,
+<pre>private static&nbsp;int&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html#line.304">copyToByteBuff</a>(byte[]&nbsp;buf,
                                   int&nbsp;offset,
                                   int&nbsp;len,
                                   <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;out)
@@ -459,13 +576,13 @@
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/Call.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/Call.html
index afd1400..7267eab 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/Call.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/Call.html
@@ -172,11 +172,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">NettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcConnection.html#callTimeout-org.apache.hadoop.hbase.ipc.Call-">callTimeout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BlockingRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BlockingRpcConnection.html#callTimeout-org.apache.hadoop.hbase.ipc.Call-">callTimeout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">BlockingRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BlockingRpcConnection.html#callTimeout-org.apache.hadoop.hbase.ipc.Call-">callTimeout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcConnection.html#callTimeout-org.apache.hadoop.hbase.ipc.Call-">callTimeout</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
@@ -203,13 +203,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
-           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;hrc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BlockingRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BlockingRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
+           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;pcrc)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BlockingRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BlockingRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
-           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;pcrc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
+           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;hrc)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallQueueInfo.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallQueueInfo.html
index 625b769..0ca2147 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallQueueInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallQueueInfo.html
@@ -105,22 +105,22 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/CallQueueInfo.html" title="class in org.apache.hadoop.hbase.ipc">CallQueueInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FifoRpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/ipc/CallQueueInfo.html" title="class in org.apache.hadoop.hbase.ipc">CallQueueInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>
+<div class="block">Get call queue information</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/CallQueueInfo.html" title="class in org.apache.hadoop.hbase.ipc">CallQueueInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MasterFifoRpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FifoRpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/CallQueueInfo.html" title="class in org.apache.hadoop.hbase.ipc">CallQueueInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/ipc/CallQueueInfo.html" title="class in org.apache.hadoop.hbase.ipc">CallQueueInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>
-<div class="block">Get call queue information</div>
-</td>
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/CallQueueInfo.html" title="class in org.apache.hadoop.hbase.ipc">CallQueueInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MasterFifoRpcScheduler.html#getCallQueueInfo--">getCallQueueInfo</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallRunner.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallRunner.html
index 1000dc8..4a5621e 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallRunner.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CallRunner.html
@@ -149,13 +149,13 @@
 <td class="colLast"><span class="typeNameLabel">AdaptiveLifoCoDelCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AdaptiveLifoCoDelCallQueue.html#element--">element</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FastPathBalancedQueueRpcExecutor.FastPathHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FastPathBalancedQueueRpcExecutor.FastPathHandler.html#getCallRunner--">getCallRunner</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FifoRpcScheduler.FifoCallRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FifoRpcScheduler.FifoCallRunner.html#getCallRunner--">getCallRunner</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FastPathBalancedQueueRpcExecutor.FastPathHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FastPathBalancedQueueRpcExecutor.FastPathHandler.html#getCallRunner--">getCallRunner</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RpcExecutor.Handler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcExecutor.Handler.html#getCallRunner--">getCallRunner</a></span>()</code>&nbsp;</td>
@@ -223,11 +223,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RWQueueRpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RWQueueRpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancedQueueRpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BalancedQueueRpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FastPathBalancedQueueRpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FastPathBalancedQueueRpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;task)</code>
+<div class="block">Dispatches an RPC request asynchronously.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -235,28 +237,26 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">BalancedQueueRpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BalancedQueueRpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RWQueueRpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RWQueueRpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcScheduler.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FastPathBalancedQueueRpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FastPathBalancedQueueRpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MasterFifoRpcScheduler.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;task)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcScheduler.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcExecutor.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;callTask)</code>
 <div class="block">Add the request to the executor queue</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html#dispatch-org.apache.hadoop.hbase.ipc.CallRunner-">dispatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html" title="class in org.apache.hadoop.hbase.ipc">CallRunner</a>&nbsp;task)</code>
-<div class="block">Dispatches an RPC request asynchronously.</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FifoRpcScheduler.html#executeRpcCall-java.util.concurrent.ThreadPoolExecutor-java.util.concurrent.atomic.AtomicInteger-org.apache.hadoop.hbase.ipc.CallRunner-">executeRpcCall</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ThreadPoolExecutor.html?is-external=true" title="class or interface in java.util.concurrent">ThreadPoolExecutor</a>&nbsp;executor,
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CellBlockBuilder.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CellBlockBuilder.html
index d844c2b..7954a4d 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CellBlockBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/CellBlockBuilder.html
@@ -106,20 +106,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CellBlockBuilder.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#cellBlockBuilder">cellBlockBuilder</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CellBlockBuilder.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#cellBlockBuilder">cellBlockBuilder</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CellBlockBuilder.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#cellBlockBuilder">cellBlockBuilder</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CellBlockBuilder.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#cellBlockBuilder">cellBlockBuilder</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ipc/CellBlockBuilder.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NettyRpcDuplexHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcDuplexHandler.html#cellBlockBuilder">cellBlockBuilder</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/CellBlockBuilder.html" title="class in org.apache.hadoop.hbase.ipc">CellBlockBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#cellBlockBuilder">cellBlockBuilder</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRPCErrorHandler.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRPCErrorHandler.html
index f8adb08..ae4eeb4 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRPCErrorHandler.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRPCErrorHandler.html
@@ -127,11 +127,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRPCErrorHandler.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRPCErrorHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getErrorHandler--">getErrorHandler</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getErrorHandler--">getErrorHandler</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRPCErrorHandler.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRPCErrorHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getErrorHandler--">getErrorHandler</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getErrorHandler--">getErrorHandler</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -144,13 +144,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setErrorHandler-org.apache.hadoop.hbase.ipc.HBaseRPCErrorHandler-">setErrorHandler</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRPCErrorHandler.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRPCErrorHandler</a>&nbsp;handler)</code>
-<div class="block">Set the handler for calling out of RPC for error conditions.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#setErrorHandler-org.apache.hadoop.hbase.ipc.HBaseRPCErrorHandler-">setErrorHandler</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRPCErrorHandler.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRPCErrorHandler</a>&nbsp;handler)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#setErrorHandler-org.apache.hadoop.hbase.ipc.HBaseRPCErrorHandler-">setErrorHandler</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRPCErrorHandler.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRPCErrorHandler</a>&nbsp;handler)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setErrorHandler-org.apache.hadoop.hbase.ipc.HBaseRPCErrorHandler-">setErrorHandler</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRPCErrorHandler.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRPCErrorHandler</a>&nbsp;handler)</code>
+<div class="block">Set the handler for calling out of RPC for error conditions.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.CancellationCallback.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.CancellationCallback.html
index b2bb60d..ce57d4b 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.CancellationCallback.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.CancellationCallback.html
@@ -106,19 +106,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#notifyOnCancel-org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback-org.apache.hadoop.hbase.ipc.HBaseRpcController.CancellationCallback-">notifyOnCancel</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;callback,
+              <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.CancellationCallback.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController.CancellationCallback</a>&nbsp;action)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html#notifyOnCancel-org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback-org.apache.hadoop.hbase.ipc.HBaseRpcController.CancellationCallback-">notifyOnCancel</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;callback,
               <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.CancellationCallback.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController.CancellationCallback</a>&nbsp;action)</code>
 <div class="block">If not cancelled, add the callback to cancellation callback list.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#notifyOnCancel-org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback-org.apache.hadoop.hbase.ipc.HBaseRpcController.CancellationCallback-">notifyOnCancel</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;callback,
-              <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.CancellationCallback.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController.CancellationCallback</a>&nbsp;action)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcControllerImpl.html#notifyOnCancel-org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback-org.apache.hadoop.hbase.ipc.HBaseRpcController.CancellationCallback-">notifyOnCancel</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;callback,
+<td class="colLast"><span class="typeNameLabel">DelegatingHBaseRpcController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/DelegatingHBaseRpcController.html#notifyOnCancel-org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback-org.apache.hadoop.hbase.ipc.HBaseRpcController.CancellationCallback-">notifyOnCancel</a></span>(org.apache.hbase.thirdparty.com.google.protobuf.RpcCallback&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;callback,
               <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.CancellationCallback.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController.CancellationCallback</a>&nbsp;action)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.html
index 2525f87..bd0921f 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/HBaseRpcController.html
@@ -288,19 +288,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#start-org.apache.hadoop.hbase.ipc.HBaseRpcController-org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ScanResponse-">start</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;controller,
-     org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ScanResponse&nbsp;respWhenOpen)</code>
-<div class="block">Short cut for <code>build().start(HBaseRpcController, ScanResponse)</code>.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncScanSingleRegionRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.html#start-org.apache.hadoop.hbase.ipc.HBaseRpcController-org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ScanResponse-">start</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;controller,
      org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ScanResponse&nbsp;respWhenOpen)</code>
 <div class="block">Now we will also fetch some cells along with the scanner id when opening a scanner, so we also
  need to process the ScanResponse for the open scanner request.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncRpcRetryingCallerFactory.ScanSingleRegionCallerBuilder.html#start-org.apache.hadoop.hbase.ipc.HBaseRpcController-org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ScanResponse-">start</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;controller,
+     org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ScanResponse&nbsp;respWhenOpen)</code>
+<div class="block">Short cut for <code>build().start(HBaseRpcController, ScanResponse)</code>.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncTableImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncTableImpl.html#toResult-org.apache.hadoop.hbase.ipc.HBaseRpcController-org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MutateResponse-">toResult</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;controller,
@@ -491,13 +491,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
-           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;hrc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BlockingRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BlockingRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
+           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;pcrc)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BlockingRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/BlockingRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
-           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;pcrc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcConnection.html#sendRequest-org.apache.hadoop.hbase.ipc.Call-org.apache.hadoop.hbase.ipc.HBaseRpcController-">sendRequest</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/Call.html" title="class in org.apache.hadoop.hbase.ipc">Call</a>&nbsp;call,
+           <a href="../../../../../../org/apache/hadoop/hbase/ipc/HBaseRpcController.html" title="interface in org.apache.hadoop.hbase.ipc">HBaseRpcController</a>&nbsp;hrc)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServer.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServer.html
index 9d8c94f..7f083d9 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServer.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServer.html
@@ -105,16 +105,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServer.html" title="class in org.apache.hadoop.hbase.ipc">MetricsHBaseServer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NettyRpcServerRequestDecoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcServerRequestDecoder.html#metrics">metrics</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServer.html" title="class in org.apache.hadoop.hbase.ipc">MetricsHBaseServer</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServer.html" title="class in org.apache.hadoop.hbase.ipc">MetricsHBaseServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NettyRpcServerResponseEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcServerResponseEncoder.html#metrics">metrics</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServer.html" title="class in org.apache.hadoop.hbase.ipc">MetricsHBaseServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NettyRpcServerRequestDecoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcServerRequestDecoder.html#metrics">metrics</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NettyRpcServerResponseEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcServerResponseEncoder.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -127,13 +127,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServer.html" title="class in org.apache.hadoop.hbase.ipc">MetricsHBaseServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getMetrics--">getMetrics</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getMetrics--">getMetrics</a></span>()</code>
 <div class="block">Returns the metrics instance for reporting RPC call statistics</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServer.html" title="class in org.apache.hadoop.hbase.ipc">MetricsHBaseServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getMetrics--">getMetrics</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getMetrics--">getMetrics</a></span>()</code>
 <div class="block">Returns the metrics instance for reporting RPC call statistics</div>
 </td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerSource.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerSource.html
index 6dc72d1..d3e82aaf 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerSource.html
@@ -144,13 +144,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
+<td class="colFirst"><code>(package private) abstract <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactory.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerWrapper.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerWrapper</a>&nbsp;wrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) abstract <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactory.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerWrapper.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerWrapper</a>&nbsp;wrapper)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerWrapper.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerWrapper.html
index a33b070..9b123d3 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerWrapper.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/MetricsHBaseServerWrapper.html
@@ -148,13 +148,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
+<td class="colFirst"><code>(package private) abstract <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactory.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerWrapper.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerWrapper</a>&nbsp;wrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) abstract <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactory.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSource.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsHBaseServerSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.html#create-java.lang.String-org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;serverName,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerWrapper.html" title="interface in org.apache.hadoop.hbase.ipc">MetricsHBaseServerWrapper</a>&nbsp;wrapper)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/PriorityFunction.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/PriorityFunction.html
index 7cbf08c..a928250 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/PriorityFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/PriorityFunction.html
@@ -342,13 +342,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">MasterFifoRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MasterFifoRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html" title="interface in org.apache.hadoop.hbase.ipc">PriorityFunction</a>&nbsp;priority,
       <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterFifoRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MasterFifoRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">SimpleRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html" title="interface in org.apache.hadoop.hbase.ipc">PriorityFunction</a>&nbsp;priority,
       <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCall.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCall.html
index 71d03fb..2933266 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCall.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCall.html
@@ -207,16 +207,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
+    <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
     <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>
 <div class="block">This is a server side method, which is invoked over RPC.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
-    <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setCurrentCall-org.apache.hadoop.hbase.ipc.RpcCall-">setCurrentCall</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;rpcCall)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCallback.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCallback.html
index bb1d36e..cf100b7 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCallback.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcCallback.html
@@ -123,13 +123,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcCallContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCallContext.html#setCallBack-org.apache.hadoop.hbase.ipc.RpcCallback-">setCallBack</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCallback.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCallback</a>&nbsp;callback)</code>
-<div class="block">Sets a callback which has to be executed at the end of this RPC call.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#setCallBack-org.apache.hadoop.hbase.ipc.RpcCallback-">setCallBack</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCallback.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCallback</a>&nbsp;callback)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#setCallBack-org.apache.hadoop.hbase.ipc.RpcCallback-">setCallBack</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCallback.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCallback</a>&nbsp;callback)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcCallContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCallContext.html#setCallBack-org.apache.hadoop.hbase.ipc.RpcCallback-">setCallBack</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCallback.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCallback</a>&nbsp;callback)</code>
+<div class="block">Sets a callback which has to be executed at the end of this RPC call.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcClient.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcClient.html
index 0ae2da8..222ef4c 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcClient.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcClient.html
@@ -133,14 +133,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html" title="interface in org.apache.hadoop.hbase.ipc">RpcClient</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRpcClient--">getRpcClient</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html" title="interface in org.apache.hadoop.hbase.ipc">RpcClient</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#getRpcClient--">getRpcClient</a></span>()</code>
 <div class="block">Get the rpc client we used to communicate with other servers.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html" title="interface in org.apache.hadoop.hbase.ipc">RpcClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#getRpcClient--">getRpcClient</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcControllerFactory.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcControllerFactory.html
index e3db553..3ec56db 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcControllerFactory.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcControllerFactory.html
@@ -116,11 +116,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcControllerFactory.html" title="class in org.apache.hadoop.hbase.ipc">RpcControllerFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#rpcControllerFactory">rpcControllerFactory</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterRegistry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/MasterRegistry.html#rpcControllerFactory">rpcControllerFactory</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcControllerFactory.html" title="class in org.apache.hadoop.hbase.ipc">RpcControllerFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterRegistry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/MasterRegistry.html#rpcControllerFactory">rpcControllerFactory</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#rpcControllerFactory">rpcControllerFactory</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.Context.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.Context.html
index a4fbff6..fa63237 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.Context.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.Context.html
@@ -118,19 +118,19 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">FifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FifoRpcScheduler.html#init-org.apache.hadoop.hbase.ipc.RpcScheduler.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.Context.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler.Context</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcScheduler.html#init-org.apache.hadoop.hbase.ipc.RpcScheduler.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.Context.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler.Context</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html#init-org.apache.hadoop.hbase.ipc.RpcScheduler.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.Context.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler.Context</a>&nbsp;context)</code>
 <div class="block">Does some quick initialization.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">FifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/FifoRpcScheduler.html#init-org.apache.hadoop.hbase.ipc.RpcScheduler.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.Context.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler.Context</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcScheduler.html#init-org.apache.hadoop.hbase.ipc.RpcScheduler.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.Context.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler.Context</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.html
index 629b434..16e93a9 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcScheduler.html
@@ -154,11 +154,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getScheduler--">getScheduler</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getScheduler--">getScheduler</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#getScheduler--">getScheduler</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getScheduler--">getScheduler</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -275,13 +275,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">MasterFifoRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MasterFifoRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html" title="interface in org.apache.hadoop.hbase.ipc">PriorityFunction</a>&nbsp;priority,
       <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcScheduler.html" title="class in org.apache.hadoop.hbase.ipc">RpcScheduler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterFifoRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MasterFifoRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">SimpleRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SimpleRpcSchedulerFactory.html#create-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.ipc.PriorityFunction-org.apache.hadoop.hbase.Abortable-">create</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
       <a href="../../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html" title="interface in org.apache.hadoop.hbase.ipc">PriorityFunction</a>&nbsp;priority,
       <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcServerInterface.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcServerInterface.html
index fbf6ef0..6958497 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcServerInterface.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/RpcServerInterface.html
@@ -240,14 +240,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html" title="interface in org.apache.hadoop.hbase.ipc">RpcServerInterface</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRpcServer--">getRpcServer</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html" title="interface in org.apache.hadoop.hbase.ipc">RpcServerInterface</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRpcServer--">getRpcServer</a></span>()</code>
 <div class="block">Returns a reference to the region server's RPC server</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html" title="interface in org.apache.hadoop.hbase.ipc">RpcServerInterface</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRpcServer--">getRpcServer</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/SimpleRpcServerResponder.html b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/SimpleRpcServerResponder.html
index 29ff3fb..0c59fed 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/class-use/SimpleRpcServerResponder.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/class-use/SimpleRpcServerResponder.html
@@ -105,16 +105,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServerResponder.html" title="class in org.apache.hadoop.hbase.ipc">SimpleRpcServerResponder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleServerRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleServerRpcConnection.html#responder">responder</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServerResponder.html" title="class in org.apache.hadoop.hbase.ipc">SimpleRpcServerResponder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServer.html#responder">responder</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServerResponder.html" title="class in org.apache.hadoop.hbase.ipc">SimpleRpcServerResponder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleServerCall.html#responder">responder</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleServerRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleServerRpcConnection.html#responder">responder</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServerResponder.html" title="class in org.apache.hadoop.hbase.ipc">SimpleRpcServerResponder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServer.html#responder">responder</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleRpcServerResponder.html" title="class in org.apache.hadoop.hbase.ipc">SimpleRpcServerResponder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/SimpleServerCall.html#responder">responder</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html b/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
index e09acb7..b3e29c1 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
@@ -356,8 +356,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/BufferCallBeforeInitHandler.BufferCallAction.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">BufferCallBeforeInitHandler.BufferCallAction</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/CallEvent.Type.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">CallEvent.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/BufferCallBeforeInitHandler.BufferCallAction.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">BufferCallBeforeInitHandler.BufferCallAction</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.SourceStorage.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">MetricsHBaseServerSourceFactoryImpl.SourceStorage</span></a></li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/CellCreator.html b/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/CellCreator.html
index 5f86cd3..d073ec1 100644
--- a/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/CellCreator.html
+++ b/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/CellCreator.html
@@ -110,13 +110,13 @@
 <td class="colLast"><span class="typeNameLabel">TextSortReducer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TextSortReducer.html#kvCreator">kvCreator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/CellCreator.html" title="class in org.apache.hadoop.hbase.mapreduce">CellCreator</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PutSortReducer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/PutSortReducer.html#kvCreator">kvCreator</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/CellCreator.html" title="class in org.apache.hadoop.hbase.mapreduce">CellCreator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TsvImporterMapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html#kvCreator">kvCreator</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/CellCreator.html" title="class in org.apache.hadoop.hbase.mapreduce">CellCreator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PutSortReducer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/PutSortReducer.html#kvCreator">kvCreator</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.InputSplit.html b/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.InputSplit.html
index 3ade8cb..3b0ed4e 100644
--- a/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.InputSplit.html
+++ b/devapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.InputSplit.html
@@ -172,16 +172,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html#getSplits-org.apache.hadoop.conf.Configuration-">getSplits</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MultiTableSnapshotInputFormatImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableSnapshotInputFormatImpl.html#getSplits-org.apache.hadoop.conf.Configuration-">getSplits</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
 <div class="block">Return the list of splits extracted from the scans/snapshots pushed to conf by
  <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableSnapshotInputFormatImpl.html#setInput-org.apache.hadoop.conf.Configuration-java.util.Map-org.apache.hadoop.fs.Path-"><code>MultiTableSnapshotInputFormatImpl.setInput(org.apache.hadoop.conf.Configuration, java.util.Map, org.apache.hadoop.fs.Path)</code></a></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html#getSplits-org.apache.hadoop.conf.Configuration-">getSplits</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html#getSplits-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.snapshot.SnapshotManifest-java.util.List-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-">getSplits</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
diff --git a/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html b/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
index e3a21f2..e714754 100644
--- a/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
@@ -300,10 +300,10 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/WALPlayer.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">WALPlayer.Counter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/CellCounter.CellCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">CellCounter.CellCounterMapper.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">SyncTable.SyncMapper.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/RowCounter.RowCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">RowCounter.RowCounterMapper.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/CellCounter.CellCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">CellCounter.CellCounterMapper.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/WALPlayer.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">WALPlayer.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/TableSplit.Version.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableSplit.Version</span></a></li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html b/devapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html
index 6f3a382..c8f0834 100644
--- a/devapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html
+++ b/devapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html
@@ -117,16 +117,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/MultiTableSnapshotInputFormatImpl.html#org.apache.hadoop.hbase.mapred">MultiTableSnapshotInputFormatImpl</a>
-<div class="block">Shared implementation of mapreduce code over multiple table snapshots.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.InputSplit.html#org.apache.hadoop.hbase.mapred">TableSnapshotInputFormatImpl.InputSplit</a>
-<div class="block">Implementation class for InputSplit logic common between mapred and mapreduce.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.RecordReader.html#org.apache.hadoop.hbase.mapred">TableSnapshotInputFormatImpl.RecordReader</a>
 <div class="block">Implementation class for RecordReader logic common between mapred and mapreduce.</div>
 </td>
@@ -194,89 +184,94 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/MultiTableSnapshotInputFormatImpl.html#org.apache.hadoop.hbase.mapreduce">MultiTableSnapshotInputFormatImpl</a>
+<div class="block">Shared implementation of mapreduce code over multiple table snapshots.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/RegionSizeCalculator.html#org.apache.hadoop.hbase.mapreduce">RegionSizeCalculator</a>
 <div class="block">Computes size of each region for given table and given column families.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/RowCounter.RowCounterMapper.Counters.html#org.apache.hadoop.hbase.mapreduce">RowCounter.RowCounterMapper.Counters</a>
 <div class="block">Counter enumeration to count the actual rows.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/SyncTable.SyncMapper.CellScanner.html#org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper.CellScanner</a>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/SyncTable.SyncMapper.Counter.html#org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper.Counter</a>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableInputFormat.html#org.apache.hadoop.hbase.mapreduce">TableInputFormat</a>
 <div class="block">Convert HBase tabular data into a format that is consumable by Map/Reduce.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableInputFormatBase.html#org.apache.hadoop.hbase.mapreduce">TableInputFormatBase</a>
 <div class="block">A base for <a href="../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce"><code>TableInputFormat</code></a>s.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableMapper.html#org.apache.hadoop.hbase.mapreduce">TableMapper</a>
 <div class="block">Extends the base <code>Mapper</code> class to add the required input key
  and value classes.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableRecordReader.html#org.apache.hadoop.hbase.mapreduce">TableRecordReader</a>
 <div class="block">Iterate over an HBase table data, return (ImmutableBytesWritable, Result)
  pairs.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableRecordReaderImpl.html#org.apache.hadoop.hbase.mapreduce">TableRecordReaderImpl</a>
 <div class="block">Iterate over an HBase table data, return (ImmutableBytesWritable, Result)
  pairs.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableReducer.html#org.apache.hadoop.hbase.mapreduce">TableReducer</a>
 <div class="block">Extends the basic <code>Reducer</code> class to add the required key and
  value input/output classes.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormat.html#org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat</a>
 <div class="block">TableSnapshotInputFormat allows a MapReduce job to run over a table snapshot.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.InputSplit.html#org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a>
 <div class="block">Implementation class for InputSplit logic common between mapred and mapreduce.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatImpl.RecordReader.html#org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.RecordReader</a>
 <div class="block">Implementation class for RecordReader logic common between mapred and mapreduce.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSplit.html#org.apache.hadoop.hbase.mapreduce">TableSplit</a>
 <div class="block">A table split corresponds to a key range (low, high) and an optional scanner.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSplit.Version.html#org.apache.hadoop.hbase.mapreduce">TableSplit.Version</a>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/VisibilityExpressionResolver.html#org.apache.hadoop.hbase.mapreduce">VisibilityExpressionResolver</a>
 <div class="block">Interface to convert visibility expressions into Tags for storing along with Cells in HFiles.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/WALInputFormat.WALRecordReader.html#org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALRecordReader</a>
 <div class="block"><code>RecordReader</code> for an <a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal"><code>WAL</code></a> file.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/WALPlayer.Counter.html#org.apache.hadoop.hbase.mapreduce">WALPlayer.Counter</a>
 <div class="block">Enum for map metrics.</div>
 </td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/AssignmentManager.html b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/AssignmentManager.html
index 26d7293..9dc1772 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/AssignmentManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/AssignmentManager.html
@@ -133,11 +133,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getAssignmentManager--">getAssignmentManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getAssignmentManager--">getAssignmentManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getAssignmentManager--">getAssignmentManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getAssignmentManager--">getAssignmentManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -180,12 +180,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
            <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
            <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStateNode.html b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStateNode.html
index 98bf275..719a3ab 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStateNode.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStateNode.html
@@ -305,21 +305,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -399,23 +399,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>&nbsp;exception)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>&nbsp;exception)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>&nbsp;exception)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -432,6 +432,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
+                org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
+                long&nbsp;openSeqNum)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
                 org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
@@ -439,7 +448,7 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
@@ -448,15 +457,6 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
-                org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
-                long&nbsp;openSeqNum)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -515,33 +515,33 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-               <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-               <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+               <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+               <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
            <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#stateLoaded-org.apache.hadoop.hbase.master.assignment.AssignmentManager-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">stateLoaded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignmentManager.html" title="class in org.apache.hadoop.hbase.master.assignment">AssignmentManager</a>&nbsp;am,
            <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -556,21 +556,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalanceAction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalanceAction.html
index af75a6b..ada3459 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalanceAction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalanceAction.html
@@ -141,16 +141,16 @@
 <td class="colLast"><span class="typeNameLabel">LoadCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LoadCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLocalityPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colFirst"><code>(package private) abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLoadPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionReplicaCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionReplicaCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">LocalityBasedCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LocalityBasedCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
@@ -161,12 +161,12 @@
 <td class="colLast"><span class="typeNameLabel">RandomCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RandomCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionReplicaCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionReplicaCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLocalityPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LocalityBasedCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LocalityBasedCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLoadPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
@@ -186,23 +186,23 @@
                  int&nbsp;otherServer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MoveRegionAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/MoveRegionAction.html#undoAction--">undoAction</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BalanceAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html#undoAction--">undoAction</a></span>()</code>
 <div class="block">Returns an Action which would undo this action</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AssignRegionAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/AssignRegionAction.html#undoAction--">undoAction</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SwapRegionsAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/SwapRegionsAction.html#undoAction--">undoAction</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MoveRegionAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/MoveRegionAction.html#undoAction--">undoAction</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerClusterState.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerClusterState.html
index 3050ab1..e7e6ffa 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerClusterState.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerClusterState.html
@@ -156,16 +156,16 @@
 <td class="colLast"><span class="typeNameLabel">LoadCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LoadCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLocalityPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colFirst"><code>(package private) abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLoadPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionReplicaCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionReplicaCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">LocalityBasedCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LocalityBasedCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
@@ -176,12 +176,12 @@
 <td class="colLast"><span class="typeNameLabel">RandomCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RandomCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionReplicaCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionReplicaCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLocalityPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LocalityBasedCandidateGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LocalityBasedCandidateGenerator.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.FavoredNodeLoadPicker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#generate-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">generate</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private int</code></td>
@@ -284,43 +284,43 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">PrimaryRegionCountSkewCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/PrimaryRegionCountSkewCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">HeterogeneousRegionCountCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>
-<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
- any costly calculation.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCountSkewCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">CostFromRegionLoadFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">MoveCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionReplicaGroupingCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">LocalityBasedCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">CostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>
 <div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
  any costly calculation.</div>
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionReplicaGroupingCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">PrimaryRegionCountSkewCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/PrimaryRegionCountSkewCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">LocalityBasedCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionCountSkewCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">HeterogeneousRegionCountCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>
+<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
+ any costly calculation.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) void</code></td>
+<td class="colLast"><span class="typeNameLabel">CostFromRegionLoadFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html#prepare-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-">prepare</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.master.balancer.BalancerClusterState-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a>&nbsp;cluster,
                 <a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerRegionLoad.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerRegionLoad.html
index 850a9a7..44013e5 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerRegionLoad.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/BalancerRegionLoad.html
@@ -117,7 +117,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected double</code></td>
-<td class="colLast"><span class="typeNameLabel">ReadRequestCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/ReadRequestCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected double</code></td>
@@ -125,20 +125,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected double</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WriteRequestCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected double</code></td>
+<td class="colLast"><span class="typeNameLabel">CPRequestCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CPRequestCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected double</code></td>
+<td class="colLast"><span class="typeNameLabel">ReadRequestCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/ReadRequestCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected abstract double</code></td>
 <td class="colLast"><span class="typeNameLabel">CostFromRegionLoadFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected double</code></td>
-<td class="colLast"><span class="typeNameLabel">CPRequestCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/CPRequestCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected double</code></td>
-<td class="colLast"><span class="typeNameLabel">WriteRequestCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html#getCostFromRl-org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad-">getCostFromRl</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerRegionLoad.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerRegionLoad</a>&nbsp;rl)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/ClusterInfoProvider.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/ClusterInfoProvider.html
index 4b9b649..4ff073c 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/ClusterInfoProvider.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/ClusterInfoProvider.html
@@ -180,11 +180,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterInfoProvider.html" title="interface in org.apache.hadoop.hbase.master.balancer">ClusterInfoProvider</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionHDFSBlockLocationFinder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html#provider">provider</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MoveCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html#provider">provider</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterInfoProvider.html" title="interface in org.apache.hadoop.hbase.master.balancer">ClusterInfoProvider</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MoveCostFunction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html#provider">provider</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionHDFSBlockLocationFinder.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html#provider">provider</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterInfoProvider.html" title="interface in org.apache.hadoop.hbase.master.balancer">ClusterInfoProvider</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/RegionHDFSBlockLocationFinder.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/RegionHDFSBlockLocationFinder.html
index c02c2bd..87150cd 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/RegionHDFSBlockLocationFinder.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/RegionHDFSBlockLocationFinder.html
@@ -103,13 +103,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionHDFSBlockLocationFinder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#regionFinder">regionFinder</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionHDFSBlockLocationFinder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#regionFinder">regionFinder</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/RegionHDFSBlockLocationFinder.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionHDFSBlockLocationFinder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#regionFinder">regionFinder</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-tree.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-tree.html
index 55e1874..56a27f7 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-tree.html
@@ -212,8 +212,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.LocalityType.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalancerClusterState.LocalityType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalanceAction.Type.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalanceAction.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.LocalityType.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalancerClusterState.LocalityType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/ClusterSchema.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/ClusterSchema.html
index 16bf814..bdc89b0 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/ClusterSchema.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/ClusterSchema.html
@@ -132,11 +132,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/ClusterSchema.html" title="interface in org.apache.hadoop.hbase.master">ClusterSchema</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getClusterSchema--">getClusterSchema</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getClusterSchema--">getClusterSchema</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/ClusterSchema.html" title="interface in org.apache.hadoop.hbase.master">ClusterSchema</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getClusterSchema--">getClusterSchema</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getClusterSchema--">getClusterSchema</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/HMaster.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/HMaster.html
index 21d4627..333d235 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/HMaster.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/HMaster.html
@@ -381,11 +381,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionsRecoveryChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/RegionsRecoveryChore.html#hMaster">hMaster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionsRecoveryConfigManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/RegionsRecoveryConfigManager.html#hMaster">hMaster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionsRecoveryConfigManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/RegionsRecoveryConfigManager.html#hMaster">hMaster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionsRecoveryChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/RegionsRecoveryChore.html#hMaster">hMaster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
@@ -393,11 +393,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterRpcServices.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClusterStatusPublisher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ClusterStatusPublisher.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterStatusPublisher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ClusterStatusPublisher.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterRpcServices.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
@@ -509,11 +509,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerChore.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClusterStatusChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterStatusChore.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterStatusChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterStatusChore.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerChore.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -628,11 +628,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MobFileCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCleanerChore.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MobFileCompactionChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCompactionChore.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html" title="class in org.apache.hadoop.hbase.master">HMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MobFileCompactionChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCompactionChore.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MobFileCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCleanerChore.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterCoprocessorHost.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterCoprocessorHost.html
index 326002c..40cda97 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterCoprocessorHost.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterCoprocessorHost.html
@@ -121,11 +121,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html" title="class in org.apache.hadoop.hbase.master">MasterCoprocessorHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterCoprocessorHost--">getMasterCoprocessorHost</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterCoprocessorHost--">getMasterCoprocessorHost</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html" title="class in org.apache.hadoop.hbase.master">MasterCoprocessorHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterCoprocessorHost--">getMasterCoprocessorHost</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterCoprocessorHost--">getMasterCoprocessorHost</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterFileSystem.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterFileSystem.html
index 43726cc..ae5d328 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterFileSystem.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterFileSystem.html
@@ -125,11 +125,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MasterFileSystem.html" title="class in org.apache.hadoop.hbase.master">MasterFileSystem</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterFileSystem--">getMasterFileSystem</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterFileSystem--">getMasterFileSystem</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MasterFileSystem.html" title="class in org.apache.hadoop.hbase.master">MasterFileSystem</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterFileSystem--">getMasterFileSystem</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterFileSystem--">getMasterFileSystem</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterServices.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterServices.html
index 090e495..766cd7e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterServices.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterServices.html
@@ -296,7 +296,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableStateManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
@@ -304,23 +304,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/SplitWALManager.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableStateManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SplitWALManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/SplitWALManager.html#master">master</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SplitWALManager.SplitWorkerAssigner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/SplitWALManager.SplitWorkerAssigner.html#master">master</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html#master">master</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClusterSchemaServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ClusterSchemaServiceImpl.html#masterServices">masterServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableNamespaceManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TableNamespaceManager.html#masterServices">masterServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableNamespaceManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TableNamespaceManager.html#masterServices">masterServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClusterSchemaServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ClusterSchemaServiceImpl.html#masterServices">masterServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
@@ -554,11 +554,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogJanitor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/janitor/CatalogJanitor.html#services">services</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReportMakingVisitor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/janitor/ReportMakingVisitor.html#services">services</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReportMakingVisitor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/janitor/ReportMakingVisitor.html#services">services</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CatalogJanitor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/janitor/CatalogJanitor.html#services">services</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -644,14 +644,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">setMasterServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/RegionNormalizer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">setMasterServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices)</code>
 <div class="block">Set the master service.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">setMasterServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -689,21 +689,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureEnv.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureUtil.NonceProcedureRunnable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureUtil.NonceProcedureRunnable.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureEnv.FsUtilsLeaseRecovery.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.FsUtilsLeaseRecovery.html#master">master</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RecoverMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RecoverMetaProcedure.html#master">master</a></span></code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureEnv.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html#master">master</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureUtil.NonceProcedureRunnable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureUtil.NonceProcedureRunnable.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureEnv.FsUtilsLeaseRecovery.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.FsUtilsLeaseRecovery.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -810,15 +810,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html#master">master</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotHFileCleaner.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TakeSnapshotHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#master">master</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotHFileCleaner.html#master">master</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TakeSnapshotHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html#master">master</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
@@ -984,11 +984,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html#masterServices">masterServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotasObserver.html#masterServices">masterServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotasObserver.html#masterServices">masterServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html#masterServices">masterServices</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterWalManager.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterWalManager.html
index 5596291..c81c63d 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterWalManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MasterWalManager.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MasterWalManager.html" title="class in org.apache.hadoop.hbase.master">MasterWalManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterWalManager--">getMasterWalManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterWalManager--">getMasterWalManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MasterWalManager.html" title="class in org.apache.hadoop.hbase.master">MasterWalManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterWalManager--">getMasterWalManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterWalManager--">getMasterWalManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMaster.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMaster.html
index a4126d3..8b5aa95 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMaster.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMaster.html
@@ -156,11 +156,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMaster.html" title="class in org.apache.hadoop.hbase.master">MetricsMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterMetrics--">getMasterMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterMetrics--">getMasterMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMaster.html" title="class in org.apache.hadoop.hbase.master">MetricsMaster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterMetrics--">getMasterMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterMetrics--">getMasterMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterProcSource.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterProcSource.html
index 53bc14e..543ba75 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterProcSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterProcSource.html
@@ -136,11 +136,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterProcSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterProcSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterProcSource</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterQuotaSource.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterQuotaSource.html
index 409f471..9d2fe90 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterQuotaSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterQuotaSource.html
@@ -137,11 +137,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterQuotaSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterQuotaSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterQuotaSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterQuotaSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterQuotaSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterQuotaSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterQuotaSource</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterSource.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterSource.html
index 78cbc72..266423e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterSource.html
@@ -136,11 +136,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterSource</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterWrapper.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterWrapper.html
index 3c5fb7f..070159a 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterWrapper.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/MetricsMasterWrapper.html
@@ -139,8 +139,8 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterQuotaSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterQuotaSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterQuotaSource</a></code></td>
@@ -148,20 +148,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterProcSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterQuotaSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsMasterQuotaSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterQuotaSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterProcSource</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterSource</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterProcSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterProcSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterProcSourceFactoryImpl.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSource.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsMasterSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactory.html#create-org.apache.hadoop.hbase.master.MetricsMasterWrapper-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MetricsMasterWrapper.html" title="interface in org.apache.hadoop.hbase.master">MetricsMasterWrapper</a>&nbsp;masterWrapper)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/RackManager.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/RackManager.html
index ae74a0e..989e849 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/RackManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/RackManager.html
@@ -176,13 +176,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#rackManager">rackManager</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/master/RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#rackManager">rackManager</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BalancerClusterState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#rackManager">rackManager</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionPlan.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionPlan.html
index 904baf4..27ef8ac 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionPlan.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionPlan.html
@@ -172,13 +172,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
 <div class="block">Execute region plans with throttling</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
 <div class="block">Execute region plans with throttling</div>
 </td>
 </tr>
@@ -218,13 +218,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
 <div class="block">Execute region plans with throttling</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#executeRegionPlansWithThrottling-java.util.List-">executeRegionPlansWithThrottling</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;plans)</code>
 <div class="block">Execute region plans with throttling</div>
 </td>
 </tr>
@@ -295,11 +295,10 @@
 <td class="colLast"><span class="typeNameLabel">MaintenanceLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/MaintenanceLoadBalancer.html#balanceCluster-java.util.Map-">balanceCluster</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&gt;&nbsp;loadOfAllTable)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
- implementation.</div>
+<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -312,16 +311,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colLast"><span class="typeNameLabel">FavoredStochasticBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
+<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
+ implementation.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
-<div class="block">Perform the major balance operation for table, all sub classes should override this method.</div>
+<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
 </td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionState.State.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionState.State.html
index c77b52e..d188cdc 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionState.State.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/RegionState.State.html
@@ -163,14 +163,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setRegionStateInMeta-java.util.Map-">setRegionStateInMeta</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;&nbsp;nameOrEncodedName2State)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Hbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html#setRegionStateInMeta-java.util.Map-">setRegionStateInMeta</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;&nbsp;nameOrEncodedName2State)</code>
 <div class="block">Update region state in Meta only.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setRegionStateInMeta-java.util.Map-">setRegionStateInMeta</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;&nbsp;nameOrEncodedName2State)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -182,14 +182,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setRegionStateInMeta-java.util.Map-">setRegionStateInMeta</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;&nbsp;nameOrEncodedName2State)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Hbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Hbck.html#setRegionStateInMeta-java.util.Map-">setRegionStateInMeta</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;&nbsp;nameOrEncodedName2State)</code>
 <div class="block">Update region state in Meta only.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HBaseHbck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/HBaseHbck.html#setRegionStateInMeta-java.util.Map-">setRegionStateInMeta</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master">RegionState.State</a>&gt;&nbsp;nameOrEncodedName2State)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/ServerManager.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/ServerManager.html
index 77ce724..72792e3 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/ServerManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/ServerManager.html
@@ -112,7 +112,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html" title="class in org.apache.hadoop.hbase.master">ServerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/RegionServerTracker.html#serverManager">serverManager</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#serverManager">serverManager</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html" title="class in org.apache.hadoop.hbase.master">ServerManager</a></code></td>
@@ -120,7 +120,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html" title="class in org.apache.hadoop.hbase.master">ServerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#serverManager">serverManager</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerTracker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/RegionServerTracker.html#serverManager">serverManager</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -140,11 +140,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html" title="class in org.apache.hadoop.hbase.master">ServerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getServerManager--">getServerManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getServerManager--">getServerManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html" title="class in org.apache.hadoop.hbase.master">ServerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getServerManager--">getServerManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getServerManager--">getServerManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.ResubmitDirective.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.ResubmitDirective.html
index a66890c..b4fd84c 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.ResubmitDirective.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.ResubmitDirective.html
@@ -113,12 +113,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#resubmitTask-java.lang.String-org.apache.hadoop.hbase.master.SplitLogManager.Task-org.apache.hadoop.hbase.master.SplitLogManager.ResubmitDirective-">resubmitTask</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path,
-            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.Task.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.Task</a>&nbsp;task,
-            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master">SplitLogManager.ResubmitDirective</a>&nbsp;directive)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.html#resubmitTask-java.lang.String-org.apache.hadoop.hbase.master.SplitLogManager.Task-org.apache.hadoop.hbase.master.SplitLogManager.ResubmitDirective-">resubmitTask</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;taskName,
             <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.Task.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.Task</a>&nbsp;task,
             <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master">SplitLogManager.ResubmitDirective</a>&nbsp;force)</code>
@@ -126,6 +120,12 @@
 <div class="block">Resubmit the task in case if found unassigned or failed</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#resubmitTask-java.lang.String-org.apache.hadoop.hbase.master.SplitLogManager.Task-org.apache.hadoop.hbase.master.SplitLogManager.ResubmitDirective-">resubmitTask</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path,
+            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.Task.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.Task</a>&nbsp;task,
+            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master">SplitLogManager.ResubmitDirective</a>&nbsp;directive)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.Task.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.Task.html
index 69e3810..c6f7289 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.Task.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitLogManager.Task.html
@@ -147,12 +147,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#resubmitTask-java.lang.String-org.apache.hadoop.hbase.master.SplitLogManager.Task-org.apache.hadoop.hbase.master.SplitLogManager.ResubmitDirective-">resubmitTask</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path,
-            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.Task.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.Task</a>&nbsp;task,
-            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master">SplitLogManager.ResubmitDirective</a>&nbsp;directive)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.html#resubmitTask-java.lang.String-org.apache.hadoop.hbase.master.SplitLogManager.Task-org.apache.hadoop.hbase.master.SplitLogManager.ResubmitDirective-">resubmitTask</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;taskName,
             <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.Task.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.Task</a>&nbsp;task,
             <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master">SplitLogManager.ResubmitDirective</a>&nbsp;force)</code>
@@ -160,6 +154,12 @@
 <div class="block">Resubmit the task in case if found unassigned or failed</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKSplitLogManagerCoordination.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html#resubmitTask-java.lang.String-org.apache.hadoop.hbase.master.SplitLogManager.Task-org.apache.hadoop.hbase.master.SplitLogManager.ResubmitDirective-">resubmitTask</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path,
+            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.Task.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.Task</a>&nbsp;task,
+            <a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master">SplitLogManager.ResubmitDirective</a>&nbsp;directive)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitWALManager.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitWALManager.html
index d49b336..e923b76 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitWALManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/SplitWALManager.html
@@ -116,13 +116,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/master/SplitWALManager.html" title="class in org.apache.hadoop.hbase.master">SplitWALManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getSplitWALManager--">getSplitWALManager</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/SplitWALManager.html" title="class in org.apache.hadoop.hbase.master">SplitWALManager</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getSplitWALManager--">getSplitWALManager</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/hadoop/hbase/master/SplitWALManager.html" title="class in org.apache.hadoop.hbase.master">SplitWALManager</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getSplitWALManager--">getSplitWALManager</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/class-use/TableStateManager.html b/devapidocs/org/apache/hadoop/hbase/master/class-use/TableStateManager.html
index cf1dc12..6b7e86c 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/class-use/TableStateManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/class-use/TableStateManager.html
@@ -129,11 +129,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/TableStateManager.html" title="class in org.apache.hadoop.hbase.master">TableStateManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getTableStateManager--">getTableStateManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getTableStateManager--">getTableStateManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/master/TableStateManager.html" title="class in org.apache.hadoop.hbase.master">TableStateManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getTableStateManager--">getTableStateManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getTableStateManager--">getTableStateManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/janitor/class-use/CatalogJanitor.html b/devapidocs/org/apache/hadoop/hbase/master/janitor/class-use/CatalogJanitor.html
index 5d22d8a..3b3e3e3 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/janitor/class-use/CatalogJanitor.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/janitor/class-use/CatalogJanitor.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/janitor/CatalogJanitor.html" title="class in org.apache.hadoop.hbase.master.janitor">CatalogJanitor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getCatalogJanitor--">getCatalogJanitor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getCatalogJanitor--">getCatalogJanitor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/janitor/CatalogJanitor.html" title="class in org.apache.hadoop.hbase.master.janitor">CatalogJanitor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getCatalogJanitor--">getCatalogJanitor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getCatalogJanitor--">getCatalogJanitor</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/locking/class-use/LockManager.html b/devapidocs/org/apache/hadoop/hbase/master/locking/class-use/LockManager.html
index 85112e9..e849a5c 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/locking/class-use/LockManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/locking/class-use/LockManager.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/locking/LockManager.html" title="class in org.apache.hadoop.hbase.master.locking">LockManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLockManager--">getLockManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getLockManager--">getLockManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/locking/LockManager.html" title="class in org.apache.hadoop.hbase.master.locking">LockManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getLockManager--">getLockManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLockManager--">getLockManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.PlanType.html b/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.PlanType.html
index d04fc01..7cd5f7e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.PlanType.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.PlanType.html
@@ -107,15 +107,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.PlanType.html" title="enum in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan.PlanType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MergeNormalizationPlan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/MergeNormalizationPlan.html#getType--">getType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitNormalizationPlan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/SplitNormalizationPlan.html#getType--">getType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.PlanType.html" title="enum in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan.PlanType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NormalizationPlan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html#getType--">getType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MergeNormalizationPlan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/MergeNormalizationPlan.html#getType--">getType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.PlanType.html" title="enum in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan.PlanType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitNormalizationPlan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/SplitNormalizationPlan.html#getType--">getType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NormalizationPlan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html#getType--">getType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.PlanType.html" title="enum in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan.PlanType</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.html b/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.html
index 59f9655..c27d605 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/NormalizationPlan.html
@@ -139,14 +139,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#computePlansForTable-org.apache.hadoop.hbase.client.TableDescriptor-">computePlansForTable</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/RegionNormalizer.html#computePlansForTable-org.apache.hadoop.hbase.client.TableDescriptor-">computePlansForTable</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>
 <div class="block">Computes a list of normalizer actions to perform on the target table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#computePlansForTable-org.apache.hadoop.hbase.client.TableDescriptor-">computePlansForTable</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.html" title="interface in org.apache.hadoop.hbase.master.normalizer">NormalizationPlan</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">SimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#computeSplitNormalizationPlans-org.apache.hadoop.hbase.master.normalizer.SimpleRegionNormalizer.NormalizeContext-">computeSplitNormalizationPlans</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.NormalizeContext.html" title="class in org.apache.hadoop.hbase.master.normalizer">SimpleRegionNormalizer.NormalizeContext</a>&nbsp;ctx)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/RegionNormalizerManager.html b/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/RegionNormalizerManager.html
index 8068d75..a992a0e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/RegionNormalizerManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/normalizer/class-use/RegionNormalizerManager.html
@@ -124,11 +124,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/RegionNormalizerManager.html" title="class in org.apache.hadoop.hbase.master.normalizer">RegionNormalizerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getRegionNormalizerManager--">getRegionNormalizerManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getRegionNormalizerManager--">getRegionNormalizerManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/normalizer/RegionNormalizerManager.html" title="class in org.apache.hadoop.hbase.master.normalizer">RegionNormalizerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getRegionNormalizerManager--">getRegionNormalizerManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getRegionNormalizerManager--">getRegionNormalizerManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/package-tree.html b/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
index b37c49e..a149c4c 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
@@ -319,12 +319,12 @@
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.ResubmitDirective</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MetaRegionLocationCache.ZNodeOpType.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetaRegionLocationCache.ZNodeOpType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/SplitLogManager.TerminationStatus.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.TerminationStatus</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">RegionState.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MasterRpcServices.BalanceSwitchMode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetricsMasterSourceFactoryImpl.FactoryStorage</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/ServerManager.ServerLiveState.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">ServerManager.ServerLiveState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MetaRegionLocationCache.ZNodeOpType.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetaRegionLocationCache.ZNodeOpType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetricsMasterSourceFactoryImpl.FactoryStorage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">RegionState.State</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/CreateTableProcedure.CreateHdfsRegions.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/CreateTableProcedure.CreateHdfsRegions.html
index 91d8051..acfa80a 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/CreateTableProcedure.CreateHdfsRegions.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/CreateTableProcedure.CreateHdfsRegions.html
@@ -103,6 +103,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+              <a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
+              <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
               <a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
@@ -111,13 +118,6 @@
 <div class="block">Create region layout in file system.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-              <a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
-              <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/MasterProcedureEnv.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/MasterProcedureEnv.html
index 12fac9b..16a9eaf 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/MasterProcedureEnv.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/MasterProcedureEnv.html
@@ -133,11 +133,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureExecutor</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureExecutor</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteProcedure.html" title="interface in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteProcedure</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>,?&gt;</code></td>
@@ -190,22 +190,22 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
@@ -219,11 +219,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -369,19 +369,19 @@
                                        int&nbsp;regionReplication)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2">StateMachineProcedure.Flow</a></code></td>
 <td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#executeFromState-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.GCMergedRegionsState-">executeFromState</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -423,21 +423,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#finishTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">finishTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -452,7 +452,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
@@ -460,7 +460,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
@@ -474,13 +476,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) static org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse</code></td>
@@ -659,11 +659,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
@@ -672,26 +672,34 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-               <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-               <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+               <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+               <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>&nbsp;exception)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
@@ -699,7 +707,7 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
@@ -707,14 +715,6 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>&nbsp;exception)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -779,6 +779,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
+                org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
+                long&nbsp;openSeqNum)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
                 org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
@@ -786,7 +795,7 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
@@ -795,15 +804,6 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode,
-                org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode&nbsp;code,
-                long&nbsp;openSeqNum)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#reportTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode-long-">reportTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -910,13 +910,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
-<div class="block">At end of timeout, wake ourselves up so we run again.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<div class="block">At end of timeout, wake ourselves up so we run again.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
@@ -927,21 +927,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">startTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -969,21 +969,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -1011,11 +1011,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
@@ -1216,20 +1216,20 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
@@ -1241,15 +1241,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
@@ -1355,23 +1355,23 @@
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#closeExcessReplicasIfNeeded-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">closeExcessReplicasIfNeeded</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerRemoteProcedure.html#completionCleanup-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">completionCleanup</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#completionCleanup-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">completionCleanup</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -1379,11 +1379,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#completionCleanup-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">completionCleanup</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerRemoteProcedure.html#completionCleanup-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">completionCleanup</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#completionCleanup-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">completionCleanup</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#completionCleanup-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">completionCleanup</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static void</code></td>
@@ -1407,6 +1407,13 @@
               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+              <a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
+              <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
               <a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
@@ -1415,13 +1422,6 @@
 <div class="block">Create region layout in file system.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#createFsLayout-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.client.TableDescriptor-java.util.List-org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.CreateHdfsRegions-">createFsLayout</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
-              <a href="../../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;tableDescriptor,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;newRegions,
-              <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html" title="interface in org.apache.hadoop.hbase.master.procedure">CreateTableProcedure.CreateHdfsRegions</a>&nbsp;hdfsRegionHandler)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CreateTableProcedure.CreateHdfsRegions.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.CreateHdfsRegions.html#createHdfsRegions-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.TableName-java.util.List-">createHdfsRegions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -1659,7 +1659,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#holdLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">holdLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#holdLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">holdLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
@@ -1671,7 +1671,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#holdLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">holdLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#holdLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">holdLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
@@ -1817,17 +1817,17 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#prepareModify-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prepareModify</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
-<div class="block">Action before any real action of adding namespace.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#prepareModify-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prepareModify</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block">Check conditions before any real action of modifying a table.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#prepareModify-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prepareModify</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<div class="block">Action before any real action of adding namespace.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#prepareRestore-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prepareRestore</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
@@ -1844,15 +1844,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#releaseLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">releaseLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -2083,11 +2083,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
@@ -2097,11 +2097,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#shouldWaitClientAck-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">shouldWaitClientAck</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#shouldWaitClientAck-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">shouldWaitClientAck</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#shouldWaitClientAck-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">shouldWaitClientAck</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#shouldWaitClientAck-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">shouldWaitClientAck</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -2121,13 +2121,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#updateTableDescriptor-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateTableDescriptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#updateTableDescriptor-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateTableDescriptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block">Update descriptor</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#updateTableDescriptor-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateTableDescriptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#updateTableDescriptor-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateTableDescriptor</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block">Update descriptor</div>
 </td>
 </tr>
@@ -2154,22 +2154,22 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CreateNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateNamespaceProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractStateMachineTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2434,6 +2434,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2441,28 +2449,20 @@
 <td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">abort</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#afterReplay-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">afterReplay</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html#afterReplay-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">afterReplay</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html#afterReplay-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">afterReplay</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#afterReplay-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">afterReplay</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2472,7 +2472,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#complete-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-java.lang.Throwable-">complete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;error)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2513,11 +2513,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected abstract void</code></td>
@@ -2527,15 +2527,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
@@ -2543,11 +2543,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
@@ -2557,15 +2557,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#prePeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">prePeerModification</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -2590,7 +2590,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;remote)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2600,7 +2600,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;remote)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2621,6 +2621,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#rollback-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">rollback</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#rollback-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">rollback</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#rollback-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">rollback</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2629,14 +2637,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#rollback-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">rollback</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#rollback-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">rollback</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html#rollbackState-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.SyncReplicationReplayWALState-">rollbackState</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
              org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.SyncReplicationReplayWALState&nbsp;state)</code>&nbsp;</td>
 </tr>
@@ -2662,11 +2662,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#setTimeoutFailure-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">setTimeoutFailure</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -2684,19 +2684,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
@@ -2704,19 +2704,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
@@ -2724,7 +2724,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#waitInitialized-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">waitInitialized</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/PeerProcedureInterface.PeerOperationType.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/PeerProcedureInterface.PeerOperationType.html
index d5033fd..102fef5 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/PeerProcedureInterface.PeerOperationType.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/PeerProcedureInterface.PeerOperationType.html
@@ -152,7 +152,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
@@ -160,35 +160,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TransitPeerSyncReplicationStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TransitPeerSyncReplicationStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#getPeerOperationType--">getPeerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">PeerProcedureInterface.PeerOperationType</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ProcedurePrepareLatch.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ProcedurePrepareLatch.html
index 528d8ba..d30edb2 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ProcedurePrepareLatch.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ProcedurePrepareLatch.html
@@ -185,11 +185,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ProcedurePrepareLatch.html" title="class in org.apache.hadoop.hbase.master.procedure">ProcedurePrepareLatch</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#syncLatch">syncLatch</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#syncLatch">syncLatch</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ProcedurePrepareLatch.html" title="class in org.apache.hadoop.hbase.master.procedure">ProcedurePrepareLatch</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#syncLatch">syncLatch</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#syncLatch">syncLatch</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ProcedurePrepareLatch.html" title="class in org.apache.hadoop.hbase.master.procedure">ProcedurePrepareLatch</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ServerProcedureInterface.ServerOperationType.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ServerProcedureInterface.ServerOperationType.html
index 3a97aa6..0432f77 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ServerProcedureInterface.ServerOperationType.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/ServerProcedureInterface.ServerOperationType.html
@@ -112,17 +112,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.html#getServerOperationType--">getServerOperationType</a></span>()</code>
-<div class="block">Given an operation type we can take decisions about what to do with pending operations.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.html#getServerOperationType--">getServerOperationType</a></span>()</code>
+<div class="block">Given an operation type we can take decisions about what to do with pending operations.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
@@ -130,7 +130,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
@@ -161,11 +161,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface.ServerOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#getServerOperationType--">getServerOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/TableProcedureInterface.TableOperationType.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/TableProcedureInterface.TableOperationType.html
index 70dc504..3b89040 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/TableProcedureInterface.TableOperationType.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/class-use/TableProcedureInterface.TableOperationType.html
@@ -112,22 +112,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GCRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>
@@ -136,11 +126,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GCRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/GCRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
@@ -154,13 +146,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -209,23 +209,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
@@ -233,41 +217,31 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html#getTableOperationType--">getTableOperationType</a></span>()</code>
-<div class="block">Given an operation type we can take decisions about what to do with pending operations.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
@@ -275,9 +249,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DeleteTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableProcedureInterface.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html#getTableOperationType--">getTableOperationType</a></span>()</code>
+<div class="block">Given an operation type we can take decisions about what to do with pending operations.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.html#getTableOperationType--">getTableOperationType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableProcedureInterface.TableOperationType.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Returns the enum constant of this type with the specified name.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/procedure/package-tree.html b/devapidocs/org/apache/hadoop/hbase/master/procedure/package-tree.html
index ad07634..0d9fe72 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/procedure/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/procedure/package-tree.html
@@ -222,10 +222,10 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">PeerProcedureInterface.PeerOperationType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MetaProcedureInterface.MetaOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MetaProcedureInterface.MetaOperationType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">ServerProcedureInterface.ServerOperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">TableProcedureInterface.TableOperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">ServerProcedureInterface.ServerOperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MetaProcedureInterface.MetaOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MetaProcedureInterface.MetaOperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">PeerProcedureInterface.PeerOperationType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/region/class-use/MasterRegionFlusherAndCompactor.html b/devapidocs/org/apache/hadoop/hbase/master/region/class-use/MasterRegionFlusherAndCompactor.html
index 6a45aea..f354d76 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/region/class-use/MasterRegionFlusherAndCompactor.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/region/class-use/MasterRegionFlusherAndCompactor.html
@@ -103,13 +103,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionFlusherAndCompactor.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegionFlusherAndCompactor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterRegionWALRoller.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionWALRoller.html#flusherAndCompactor">flusherAndCompactor</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionFlusherAndCompactor.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegionFlusherAndCompactor</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MasterRegion.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegion.html#flusherAndCompactor">flusherAndCompactor</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionFlusherAndCompactor.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegionFlusherAndCompactor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterRegionWALRoller.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionWALRoller.html#flusherAndCompactor">flusherAndCompactor</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/ReplicationPeerManager.html b/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/ReplicationPeerManager.html
index 511135e..8e59cfa 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/ReplicationPeerManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/ReplicationPeerManager.html
@@ -129,13 +129,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication">ReplicationPeerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerManager--">getReplicationPeerManager</a></span>()</code>
-<div class="block">Returns the <a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication"><code>ReplicationPeerManager</code></a>.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getReplicationPeerManager--">getReplicationPeerManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication">ReplicationPeerManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getReplicationPeerManager--">getReplicationPeerManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerManager--">getReplicationPeerManager</a></span>()</code>
+<div class="block">Returns the <a href="../../../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication"><code>ReplicationPeerManager</code></a>.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/SyncReplicationReplayWALManager.html b/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/SyncReplicationReplayWALManager.html
index d6f2da9..698a2a7 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/SyncReplicationReplayWALManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/replication/class-use/SyncReplicationReplayWALManager.html
@@ -121,13 +121,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getSyncReplicationReplayWALManager--">getSyncReplicationReplayWALManager</a></span>()</code>
-<div class="block">Returns the <a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.html" title="class in org.apache.hadoop.hbase.master.replication"><code>SyncReplicationReplayWALManager</code></a>.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getSyncReplicationReplayWALManager--">getSyncReplicationReplayWALManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getSyncReplicationReplayWALManager--">getSyncReplicationReplayWALManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getSyncReplicationReplayWALManager--">getSyncReplicationReplayWALManager</a></span>()</code>
+<div class="block">Returns the <a href="../../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.html" title="class in org.apache.hadoop.hbase.master.replication"><code>SyncReplicationReplayWALManager</code></a>.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/snapshot/class-use/SnapshotManager.html b/devapidocs/org/apache/hadoop/hbase/master/snapshot/class-use/SnapshotManager.html
index 564e16e..f17cefa 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/snapshot/class-use/SnapshotManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/snapshot/class-use/SnapshotManager.html
@@ -125,11 +125,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot">SnapshotManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getSnapshotManager--">getSnapshotManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getSnapshotManager--">getSnapshotManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/snapshot/SnapshotManager.html" title="class in org.apache.hadoop.hbase.master.snapshot">SnapshotManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getSnapshotManager--">getSnapshotManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getSnapshotManager--">getSnapshotManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/zksyncer/class-use/MetaLocationSyncer.html b/devapidocs/org/apache/hadoop/hbase/master/zksyncer/class-use/MetaLocationSyncer.html
index 421070b..2a34416 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/zksyncer/class-use/MetaLocationSyncer.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/zksyncer/class-use/MetaLocationSyncer.html
@@ -117,13 +117,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/zksyncer/MetaLocationSyncer.html" title="class in org.apache.hadoop.hbase.master.zksyncer">MetaLocationSyncer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMetaLocationSyncer--">getMetaLocationSyncer</a></span>()</code>
-<div class="block">Get the meta location syncer.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMetaLocationSyncer--">getMetaLocationSyncer</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/master/zksyncer/MetaLocationSyncer.html" title="class in org.apache.hadoop.hbase.master.zksyncer">MetaLocationSyncer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMetaLocationSyncer--">getMetaLocationSyncer</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMetaLocationSyncer--">getMetaLocationSyncer</a></span>()</code>
+<div class="block">Get the meta location syncer.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistry.html b/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistry.html
index 1c972f3..c3fee80 100644
--- a/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistry.html
+++ b/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistry.html
@@ -165,7 +165,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getMetricRegistryForRegionServer--">getMetricRegistryForRegionServer</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">WALCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/WALCoprocessorEnvironment.html#getMetricRegistryForRegionServer--">getMetricRegistryForRegionServer</a></span>()</code>
 <div class="block">Returns a MetricRegistry that can be used to track metrics at the region server level.</div>
 </td>
 </tr>
@@ -177,7 +177,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/WALCoprocessorEnvironment.html#getMetricRegistryForRegionServer--">getMetricRegistryForRegionServer</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getMetricRegistryForRegionServer--">getMetricRegistryForRegionServer</a></span>()</code>
 <div class="block">Returns a MetricRegistry that can be used to track metrics at the region server level.</div>
 </td>
 </tr>
@@ -356,11 +356,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricRegistryFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistryFactoryImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricRegistriesImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistriesImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricRegistriesImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistriesImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricRegistryFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistryFactoryImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistryInfo.html b/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistryInfo.html
index f492560..a95ee27 100644
--- a/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistryInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/metrics/class-use/MetricRegistryInfo.html
@@ -276,11 +276,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricRegistryFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistryFactoryImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricRegistriesImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistriesImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricRegistriesImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistriesImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricRegistryFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/metrics/impl/MetricRegistryFactoryImpl.html#create-org.apache.hadoop.hbase.metrics.MetricRegistryInfo-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistryInfo.html" title="class in org.apache.hadoop.hbase.metrics">MetricRegistryInfo</a>&nbsp;info)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/metrics/MetricRegistry.html" title="interface in org.apache.hadoop.hbase.metrics">MetricRegistry</a>&gt;</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/metrics/class-use/OperationMetrics.html b/devapidocs/org/apache/hadoop/hbase/metrics/class-use/OperationMetrics.html
index 56c3286..69b6667 100644
--- a/devapidocs/org/apache/hadoop/hbase/metrics/class-use/OperationMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/metrics/class-use/OperationMetrics.html
@@ -149,51 +149,51 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getAssignMetrics--">getAssignMetrics</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getAssignMetrics--">getAssignMetrics</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getCloseMetrics--">getCloseMetrics</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getAssignMetrics--">getAssignMetrics</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getCloseMetrics--">getCloseMetrics</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getMergeMetrics--">getMergeMetrics</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getCloseMetrics--">getCloseMetrics</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getMergeMetrics--">getMergeMetrics</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getMoveMetrics--">getMoveMetrics</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getMergeMetrics--">getMergeMetrics</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getMoveMetrics--">getMoveMetrics</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getOpenMetrics--">getOpenMetrics</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getMoveMetrics--">getMoveMetrics</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getOpenMetrics--">getOpenMetrics</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getOpenMetrics--">getOpenMetrics</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getReopenMetrics--">getReopenMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getReopenMetrics--">getReopenMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getReopenMetrics--">getReopenMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getReopenMetrics--">getReopenMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
@@ -205,19 +205,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getSplitMetrics--">getSplitMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getSplitMetrics--">getSplitMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getSplitMetrics--">getSplitMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getSplitMetrics--">getSplitMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getUnassignMetrics--">getUnassignMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getUnassignMetrics--">getUnassignMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/metrics/OperationMetrics.html" title="class in org.apache.hadoop.hbase.metrics">OperationMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSource.html#getUnassignMetrics--">getUnassignMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsAssignmentManagerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MetricsAssignmentManagerSourceImpl.html#getUnassignMetrics--">getUnassignMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/mob/class-use/MobFileCache.html b/devapidocs/org/apache/hadoop/hbase/mob/class-use/MobFileCache.html
index 68d9e35..8e2e072 100644
--- a/devapidocs/org/apache/hadoop/hbase/mob/class-use/MobFileCache.html
+++ b/devapidocs/org/apache/hadoop/hbase/mob/class-use/MobFileCache.html
@@ -166,20 +166,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMobStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HMobStore.html#mobFileCache">mobFileCache</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#mobFileCache">mobFileCache</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#mobFileCache">mobFileCache</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsRegionServerWrapperImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerWrapperImpl.html#mobFileCache">mobFileCache</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HMobStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HMobStore.html#mobFileCache">mobFileCache</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#mobFileCache">mobFileCache</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -204,13 +204,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getMobFileCache--">getMobFileCache</a></span>()</code>
-<div class="block">May be null if this is a master which not carry table.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getMobFileCache--">getMobFileCache</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/mob/MobFileCache.html" title="class in org.apache.hadoop.hbase.mob">MobFileCache</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getMobFileCache--">getMobFileCache</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getMobFileCache--">getMobFileCache</a></span>()</code>
+<div class="block">May be null if this is a master which not carry table.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html b/devapidocs/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html
index e1b1b1f..d5bb31a 100644
--- a/devapidocs/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html
+++ b/devapidocs/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html
@@ -260,7 +260,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring">MonitoredTask.State</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html#line.18">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring">MonitoredTask.State</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html#line.83">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -280,7 +280,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring">MonitoredTask.State</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html#line.18">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring">MonitoredTask.State</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html#line.83">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredRPCHandler.html b/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredRPCHandler.html
index 13a9ecf..5393a41 100644
--- a/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredRPCHandler.html
+++ b/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredRPCHandler.html
@@ -151,16 +151,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
+    <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
     <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>
 <div class="block">This is a server side method, which is invoked over RPC.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
-    <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CallRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/CallRunner.html#setStatus-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">setStatus</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredTask.html b/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredTask.html
index 2ae5008..9f99993 100644
--- a/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredTask.html
+++ b/devapidocs/org/apache/hadoop/hbase/monitoring/class-use/MonitoredTask.html
@@ -144,15 +144,15 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private void</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#waitForRegionServers-org.apache.hadoop.hbase.monitoring.MonitoredTask-">waitForRegionServers</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/ServerManager.html#waitForRegionServers-org.apache.hadoop.hbase.monitoring.MonitoredTask-">waitForRegionServers</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>
 <div class="block">Wait for the region servers to report in.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#waitForRegionServers-org.apache.hadoop.hbase.monitoring.MonitoredTask-">waitForRegionServers</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">SplitLogManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.html#waitForSplittingCompletion-org.apache.hadoop.hbase.master.SplitLogManager.TaskBatch-org.apache.hadoop.hbase.monitoring.MonitoredTask-">waitForSplittingCompletion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/SplitLogManager.TaskBatch.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.TaskBatch</a>&nbsp;batch,
@@ -457,23 +457,17 @@
 <td class="colLast"><span class="typeNameLabel">HStore.StoreFlusherImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#commit-org.apache.hadoop.hbase.monitoring.MonitoredTask-">commit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#commitFile-org.apache.hadoop.fs.Path-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-">commitFile</a></span>(org.apache.hadoop.fs.Path&nbsp;path,
-          long&nbsp;logCacheFlushId,
-          <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#doClose-boolean-org.apache.hadoop.hbase.monitoring.MonitoredTask-">doClose</a></span>(boolean&nbsp;abort,
        <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#finalizeWriter-org.apache.hadoop.hbase.regionserver.StoreFileWriter-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-">finalizeWriter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;writer,
               long&nbsp;cacheFlushSeqNum,
               <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#flushCache-long-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushCache</a></span>(long&nbsp;logCacheFlushId,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
@@ -483,7 +477,7 @@
 <div class="block">Write out current snapshot.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFlushContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html#flushCache-org.apache.hadoop.hbase.monitoring.MonitoredTask-">flushCache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>
 <div class="block">Flush the cache (create the new store file)
@@ -492,11 +486,27 @@
  of the store.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.StoreFlusherImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#flushCache-org.apache.hadoop.hbase.monitoring.MonitoredTask-">flushCache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+             long&nbsp;cacheFlushSeqNum,
+             <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+             long&nbsp;cacheFlushId,
+             <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
@@ -506,41 +516,25 @@
 <div class="block">Turns a snapshot of memstore into a set of store files.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
-             long&nbsp;cacheFlushId,
-             <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
-             long&nbsp;cacheFlushSeqNum,
-             <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private long</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#initializeRegionInternals-org.apache.hadoop.hbase.util.CancelableProgressable-org.apache.hadoop.hbase.monitoring.MonitoredTask-">initializeRegionInternals</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/CancelableProgressable.html" title="interface in org.apache.hadoop.hbase.util">CancelableProgressable</a>&nbsp;reporter,
                          <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private long</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#initializeStores-org.apache.hadoop.hbase.util.CancelableProgressable-org.apache.hadoop.hbase.monitoring.MonitoredTask-">initializeStores</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/CancelableProgressable.html" title="interface in org.apache.hadoop.hbase.util">CancelableProgressable</a>&nbsp;reporter,
                 <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>
 <div class="block">Open all Stores.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private long</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#initializeStores-org.apache.hadoop.hbase.util.CancelableProgressable-org.apache.hadoop.hbase.monitoring.MonitoredTask-boolean-">initializeStores</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/CancelableProgressable.html" title="interface in org.apache.hadoop.hbase.util">CancelableProgressable</a>&nbsp;reporter,
                 <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
                 boolean&nbsp;warmup)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResultImpl.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.FlushResultImpl</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#internalFlushcache-java.util.Collection-org.apache.hadoop.hbase.monitoring.MonitoredTask-boolean-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">internalFlushcache</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&gt;&nbsp;storesToFlush,
                   <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
@@ -549,13 +543,13 @@
 <div class="block">Flushing given stores.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.html" title="interface in org.apache.hadoop.hbase.regionserver">HRegion.FlushResult</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#internalFlushcache-org.apache.hadoop.hbase.monitoring.MonitoredTask-">internalFlushcache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>
 <div class="block">Flushing all stores.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResultImpl.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.FlushResultImpl</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#internalFlushcache-org.apache.hadoop.hbase.wal.WAL-long-java.util.Collection-org.apache.hadoop.hbase.monitoring.MonitoredTask-boolean-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">internalFlushcache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;wal,
                   long&nbsp;myseqid,
@@ -566,14 +560,14 @@
 <div class="block">Flush the memstore.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResultImpl.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.FlushResultImpl</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#internalFlushCacheAndCommit-org.apache.hadoop.hbase.wal.WAL-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.HRegion.PrepareFlushResult-java.util.Collection-">internalFlushCacheAndCommit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;wal,
                            <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
                            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.PrepareFlushResult.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.PrepareFlushResult</a>&nbsp;prepareResult,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&gt;&nbsp;storesToFlush)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.PrepareFlushResult.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.PrepareFlushResult</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#internalPrepareFlushCache-org.apache.hadoop.hbase.wal.WAL-long-java.util.Collection-org.apache.hadoop.hbase.monitoring.MonitoredTask-boolean-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">internalPrepareFlushCache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;wal,
                          long&nbsp;myseqid,
@@ -582,7 +576,7 @@
                          boolean&nbsp;writeFlushWalMarker,
                          <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>(package private) long</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#replayRecoveredEditsIfAny-java.util.Map-org.apache.hadoop.hbase.util.CancelableProgressable-org.apache.hadoop.hbase.monitoring.MonitoredTask-">replayRecoveredEditsIfAny</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;maxSeqIdInStores,
                          <a href="../../../../../../org/apache/hadoop/hbase/util/CancelableProgressable.html" title="interface in org.apache.hadoop.hbase.util">CancelableProgressable</a>&nbsp;reporter,
diff --git a/devapidocs/org/apache/hadoop/hbase/monitoring/package-tree.html b/devapidocs/org/apache/hadoop/hbase/monitoring/package-tree.html
index 8e1184b..c9ca896 100644
--- a/devapidocs/org/apache/hadoop/hbase/monitoring/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/monitoring/package-tree.html
@@ -126,8 +126,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">MonitoredTask.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.monitoring.<a href="../../../../../org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.TaskType.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">TaskMonitor.TaskFilter.TaskType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">MonitoredTask.State</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.NamedQueueEvent.html b/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.NamedQueueEvent.html
index f18763f..12224a7 100644
--- a/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.NamedQueueEvent.html
+++ b/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.NamedQueueEvent.html
@@ -216,15 +216,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.NamedQueueEvent.html" title="enum in org.apache.hadoop.hbase.namequeues">NamedQueuePayload.NamedQueueEvent</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#getEvent--">getEvent</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#getEvent--">getEvent</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.NamedQueueEvent.html" title="enum in org.apache.hadoop.hbase.namequeues">NamedQueuePayload.NamedQueueEvent</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#getEvent--">getEvent</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#getEvent--">getEvent</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.NamedQueueEvent.html" title="enum in org.apache.hadoop.hbase.namequeues">NamedQueuePayload.NamedQueueEvent</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#getEvent--">getEvent</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#getEvent--">getEvent</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.html b/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.html
index f069af6..0924f35 100644
--- a/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.html
+++ b/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueuePayload.html
@@ -198,17 +198,17 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#consumeEventFromDisruptor-org.apache.hadoop.hbase.namequeues.NamedQueuePayload-">consumeEventFromDisruptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueuePayload</a>&nbsp;namedQueuePayload)</code>
-<div class="block">This implementation is specific to slowLog event.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#consumeEventFromDisruptor-org.apache.hadoop.hbase.namequeues.NamedQueuePayload-">consumeEventFromDisruptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueuePayload</a>&nbsp;namedQueuePayload)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#consumeEventFromDisruptor-org.apache.hadoop.hbase.namequeues.NamedQueuePayload-">consumeEventFromDisruptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueuePayload</a>&nbsp;namedQueuePayload)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#consumeEventFromDisruptor-org.apache.hadoop.hbase.namequeues.NamedQueuePayload-">consumeEventFromDisruptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueuePayload</a>&nbsp;namedQueuePayload)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#consumeEventFromDisruptor-org.apache.hadoop.hbase.namequeues.NamedQueuePayload-">consumeEventFromDisruptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueuePayload</a>&nbsp;namedQueuePayload)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#consumeEventFromDisruptor-org.apache.hadoop.hbase.namequeues.NamedQueuePayload-">consumeEventFromDisruptor</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueuePayload.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueuePayload</a>&nbsp;namedQueuePayload)</code>
+<div class="block">This implementation is specific to slowLog event.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueueRecorder.html b/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueueRecorder.html
index b908079..e224bb3 100644
--- a/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueueRecorder.html
+++ b/devapidocs/org/apache/hadoop/hbase/namequeues/class-use/NamedQueueRecorder.html
@@ -133,14 +133,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setNamedQueueRecorder-org.apache.hadoop.hbase.namequeues.NamedQueueRecorder-">setNamedQueueRecorder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueueRecorder</a>&nbsp;namedQueueRecorder)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#setNamedQueueRecorder-org.apache.hadoop.hbase.namequeues.NamedQueueRecorder-">setNamedQueueRecorder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueueRecorder</a>&nbsp;namedQueueRecorder)</code>
 <div class="block">Set Online SlowLog Provider</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setNamedQueueRecorder-org.apache.hadoop.hbase.namequeues.NamedQueueRecorder-">setNamedQueueRecorder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueueRecorder</a>&nbsp;namedQueueRecorder)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -189,13 +189,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueueRecorder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SlowLogTableOpsChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/SlowLogTableOpsChore.html#namedQueueRecorder">namedQueueRecorder</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueueRecorder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NamedQueueRecorder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html#namedQueueRecorder">namedQueueRecorder</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueRecorder.html" title="class in org.apache.hadoop.hbase.namequeues">NamedQueueRecorder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SlowLogTableOpsChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/namequeues/SlowLogTableOpsChore.html#namedQueueRecorder">namedQueueRecorder</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/namequeues/request/class-use/NamedQueueGetRequest.html b/devapidocs/org/apache/hadoop/hbase/namequeues/request/class-use/NamedQueueGetRequest.html
index fb65a16..a3d8507 100644
--- a/devapidocs/org/apache/hadoop/hbase/namequeues/request/class-use/NamedQueueGetRequest.html
+++ b/devapidocs/org/apache/hadoop/hbase/namequeues/request/class-use/NamedQueueGetRequest.html
@@ -107,14 +107,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LogEventHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/LogEventHandler.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamedQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
 <div class="block">Retrieve in memory queue records from ringbuffer</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamedQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">LogEventHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/LogEventHandler.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
 <div class="block">Retrieve in memory queue records from ringbuffer</div>
 </td>
 </tr>
@@ -140,15 +140,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/namequeues/response/class-use/NamedQueueGetResponse.html b/devapidocs/org/apache/hadoop/hbase/namequeues/response/class-use/NamedQueueGetResponse.html
index c0e7186..03e493c 100644
--- a/devapidocs/org/apache/hadoop/hbase/namequeues/response/class-use/NamedQueueGetResponse.html
+++ b/devapidocs/org/apache/hadoop/hbase/namequeues/response/class-use/NamedQueueGetResponse.html
@@ -107,14 +107,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">LogEventHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/LogEventHandler.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamedQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
 <div class="block">Retrieve in memory queue records from ringbuffer</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamedQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/NamedQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">LogEventHandler.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/LogEventHandler.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>
 <div class="block">Retrieve in memory queue records from ringbuffer</div>
 </td>
 </tr>
@@ -140,15 +140,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerRejectionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerRejectionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/response/NamedQueueGetResponse.html" title="class in org.apache.hadoop.hbase.namequeues.response">NamedQueueGetResponse</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BalancerDecisionQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/BalancerDecisionQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SlowLogQueueService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/namequeues/impl/SlowLogQueueService.html#getNamedQueueRecords-org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest-">getNamedQueueRecords</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/namequeues/request/NamedQueueGetRequest.html" title="class in org.apache.hadoop.hbase.namequeues.request">NamedQueueGetRequest</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/net/class-use/Address.html b/devapidocs/org/apache/hadoop/hbase/net/class-use/Address.html
index 8e11e79..262f087 100644
--- a/devapidocs/org/apache/hadoop/hbase/net/class-use/Address.html
+++ b/devapidocs/org/apache/hadoop/hbase/net/class-use/Address.html
@@ -214,22 +214,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>
 <div class="block">Get group info for the given hostPort</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -248,25 +248,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#moveServersToRSGroup-java.util.Set-java.lang.String-">moveServersToRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
+                    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#moveServersToRSGroup-java.util.Set-java.lang.String-">moveServersToRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroup)</code>
 <div class="block">Move given set of servers to the specified target RegionServer group</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#moveServersToRSGroup-java.util.Set-java.lang.String-">moveServersToRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#moveServersToRSGroup-java.util.Set-java.lang.String-">moveServersToRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
-                    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#moveServersToRSGroup-java.util.Set-java.lang.String-">moveServersToRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#moveServersToRSGroup-java.util.Set-java.lang.String-">moveServersToRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -277,23 +277,23 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#removeServersFromRSGroup-java.util.Set-">removeServersFromRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#removeServersFromRSGroup-java.util.Set-">removeServersFromRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>
 <div class="block">Remove decommissioned servers from group
   1.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#removeServersFromRSGroup-java.util.Set-">removeServersFromRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#removeServersFromRSGroup-java.util.Set-">removeServersFromRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#removeServersFromRSGroup-java.util.Set-">removeServersFromRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#removeServersFromRSGroup-java.util.Set-">removeServersFromRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -704,13 +704,13 @@
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getDefaultServers-java.util.List-">getDefaultServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;&nbsp;rsGroupInfoList)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getOnlineServers--">getOnlineServers</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getOnlineServers--">getOnlineServers</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getOnlineServers--">getOnlineServers</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html#getServers--">getServers</a></span>()</code>
@@ -748,7 +748,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Retrieve the RSGroupInfo a server is affiliated to</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
@@ -758,14 +761,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Retrieve the RSGroupInfo a server is affiliated to</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -836,8 +836,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#moveServers-java.util.Set-java.lang.String-">moveServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
-           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#moveServers-java.util.Set-java.lang.String-">moveServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
+           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroup)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Move given set of servers to the specified target RegionServer group.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -848,15 +851,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#moveServers-java.util.Set-java.lang.String-">moveServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
-           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroup)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Move given set of servers to the specified target RegionServer group.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#moveServers-java.util.Set-java.lang.String-">moveServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
+           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroupName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#moveServers-java.util.Set-java.lang.String-">moveServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#moveServers-java.util.Set-java.lang.String-">moveServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers,
            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetGroupName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -876,7 +876,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#removeServers-java.util.Set-">removeServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#removeServers-java.util.Set-">removeServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Remove decommissioned servers from rsgroup.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -886,14 +889,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#removeServers-java.util.Set-">removeServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Remove decommissioned servers from rsgroup.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#removeServers-java.util.Set-">removeServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#removeServers-java.util.Set-">removeServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#removeServers-java.util.Set-">removeServers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&gt;&nbsp;servers)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/nio/class-use/ByteBuff.html b/devapidocs/org/apache/hadoop/hbase/nio/class-use/ByteBuff.html
index d9539af..3be644e 100644
--- a/devapidocs/org/apache/hadoop/hbase/nio/class-use/ByteBuff.html
+++ b/devapidocs/org/apache/hadoop/hbase/nio/class-use/ByteBuff.html
@@ -169,7 +169,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
@@ -177,15 +177,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Codec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodec.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodec.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/KeyValueCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/codec/CellCodecWithTags.html#getDecoder-org.apache.hadoop.hbase.nio.ByteBuff-">getDecoder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -306,14 +306,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#currentBuffer">currentBuffer</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.SeekerState.html#currentBuffer">currentBuffer</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#currentBuffer">currentBuffer</a></span></code>&nbsp;</td>
 </tr>
@@ -323,6 +315,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#currentBuffer">currentBuffer</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.SeekerState.html#currentBuffer">currentBuffer</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#rowOffsets">rowOffsets</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
@@ -336,6 +336,22 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>
 <div class="block">Return first key in block as a cell.</div>
 </td>
@@ -345,29 +361,6 @@
 <td class="colLast"><span class="typeNameLabel">FastDiffDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CopyKeyDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexCodecV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DiffKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PrefixKeyDeltaEncoder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html#getFirstKeyCellInBlock-org.apache.hadoop.hbase.nio.ByteBuff-">getFirstKeyCellInBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;block)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#prepareDecoding-int-int-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.hbase.nio.ByteBuff-">prepareDecoding</a></span>(int&nbsp;onDiskSizeWithoutHeader,
-               int&nbsp;uncompressedSizeWithoutHeader,
-               <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;blockBufferWithoutHeader,
-               <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;onDiskBlock)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HFileBlockDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html#prepareDecoding-int-int-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.hbase.nio.ByteBuff-">prepareDecoding</a></span>(int&nbsp;onDiskSizeWithoutHeader,
                int&nbsp;uncompressedSizeWithoutHeader,
@@ -377,11 +370,16 @@
  process.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultDecodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html#prepareDecoding-int-int-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.hbase.nio.ByteBuff-">prepareDecoding</a></span>(int&nbsp;onDiskSizeWithoutHeader,
+               int&nbsp;uncompressedSizeWithoutHeader,
+               <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;blockBufferWithoutHeader,
+               <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;onDiskBlock)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#setCurrentBuffer-org.apache.hadoop.hbase.nio.ByteBuff-">setCurrentBuffer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buffer)</code>
-<div class="block">Set on which buffer there will be done seeking.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#setCurrentBuffer-org.apache.hadoop.hbase.nio.ByteBuff-">setCurrentBuffer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buffer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -389,7 +387,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#setCurrentBuffer-org.apache.hadoop.hbase.nio.ByteBuff-">setCurrentBuffer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buffer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DataBlockEncoder.EncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html#setCurrentBuffer-org.apache.hadoop.hbase.nio.ByteBuff-">setCurrentBuffer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buffer)</code>
+<div class="block">Set on which buffer there will be done seeking.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -732,16 +732,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#write-org.apache.hadoop.hbase.nio.ByteBuff-long-">write</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;srcBuffer,
+     long&nbsp;offset)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">IOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/IOEngine.html#write-org.apache.hadoop.hbase.nio.ByteBuff-long-">write</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;srcBuffer,
      long&nbsp;offset)</code>
 <div class="block">Transfers the data from the given MultiByteBuffer to IOEngine</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">FileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.html#write-org.apache.hadoop.hbase.nio.ByteBuff-long-">write</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;srcBuff,
-     long&nbsp;offset)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ByteBufferIOEngine.html#write-org.apache.hadoop.hbase.nio.ByteBuff-long-">write</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;src,
@@ -751,7 +751,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#write-org.apache.hadoop.hbase.nio.ByteBuff-long-">write</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;srcBuffer,
+<td class="colLast"><span class="typeNameLabel">FileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.html#write-org.apache.hadoop.hbase.nio.ByteBuff-long-">write</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;srcBuff,
      long&nbsp;offset)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -787,6 +787,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private static boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">BlockIOUtils.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtraDirectly-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtraDirectly</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+                      org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
+                      long&nbsp;position,
+                      int&nbsp;necessaryLen,
+                      int&nbsp;extraLen)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">BlockIOUtils.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#preadWithExtraOnHeap-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-long-int-int-">preadWithExtraOnHeap</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buff,
+                    org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
+                    long&nbsp;position,
+                    int&nbsp;necessaryLen,
+                    int&nbsp;extraLen)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">BlockIOUtils.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/util/BlockIOUtils.html#readFully-org.apache.hadoop.hbase.nio.ByteBuff-org.apache.hadoop.fs.FSDataInputStream-int-">readFully</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
          org.apache.hadoop.fs.FSDataInputStream&nbsp;dis,
@@ -1120,15 +1136,6 @@
                  int&nbsp;index)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#put-int-org.apache.hadoop.hbase.nio.ByteBuff-int-int-">put</a></span>(int&nbsp;offset,
-   <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;src,
-   int&nbsp;srcOffset,
-   int&nbsp;length)</code>
-<div class="block">Copies the contents from the src ByteBuff to this ByteBuff.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/nio/MultiByteBuff.html" title="class in org.apache.hadoop.hbase.nio">MultiByteBuff</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultiByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/MultiByteBuff.html#put-int-org.apache.hadoop.hbase.nio.ByteBuff-int-int-">put</a></span>(int&nbsp;offset,
    <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;src,
@@ -1137,13 +1144,22 @@
 <div class="block">Copies from a src MBB to this MBB.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/nio/SingleByteBuff.html" title="class in org.apache.hadoop.hbase.nio">SingleByteBuff</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SingleByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/SingleByteBuff.html#put-int-org.apache.hadoop.hbase.nio.ByteBuff-int-int-">put</a></span>(int&nbsp;offset,
    <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;src,
    int&nbsp;srcOffset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#put-int-org.apache.hadoop.hbase.nio.ByteBuff-int-int-">put</a></span>(int&nbsp;offset,
+   <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;src,
+   int&nbsp;srcOffset,
+   int&nbsp;length)</code>
+<div class="block">Copies the contents from the src ByteBuff to this ByteBuff.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <td class="colLast"><span class="typeNameLabel">ByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#readCompressedInt-org.apache.hadoop.hbase.nio.ByteBuff-">readCompressedInt</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/package-tree.html b/devapidocs/org/apache/hadoop/hbase/package-tree.html
index 82780c2..062757e 100644
--- a/devapidocs/org/apache/hadoop/hbase/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/package-tree.html
@@ -454,19 +454,19 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Cell.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CompatibilitySingletonFactory.SingletonStorage.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompatibilitySingletonFactory.SingletonStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Size.Unit.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Size.Unit</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Coprocessor.State.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Coprocessor.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterMetrics.Option</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClientMetaTableAccessor.QueryType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClientMetaTableAccessor.QueryType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HConstants.OperationStatusCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompareOperator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Cell.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClientMetaTableAccessor.QueryType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClientMetaTableAccessor.QueryType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Size.Unit.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Size.Unit</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CompatibilitySingletonFactory.SingletonStorage.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompatibilitySingletonFactory.SingletonStorage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterMetrics.Option</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HConstants.OperationStatusCode</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/package-use.html b/devapidocs/org/apache/hadoop/hbase/package-use.html
index 728da95..cef48ca 100644
--- a/devapidocs/org/apache/hadoop/hbase/package-use.html
+++ b/devapidocs/org/apache/hadoop/hbase/package-use.html
@@ -224,249 +224,242 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapred">org.apache.hadoop.hbase.mapred</a></td>
-<td class="colLast">
-<div class="block">Provides HBase <a href="https://cwiki.apache.org/confluence/display/HADOOP2/HadoopMapReduce">MapReduce</a>
-Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mapreduce">org.apache.hadoop.hbase.mapreduce</a></td>
 <td class="colLast">
 <div class="block">Provides HBase <a href="https://cwiki.apache.org/confluence/display/HADOOP2/HadoopMapReduce">MapReduce</a>
 Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master">org.apache.hadoop.hbase.master</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.assignment">org.apache.hadoop.hbase.master.assignment</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.balancer">org.apache.hadoop.hbase.master.balancer</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.cleaner">org.apache.hadoop.hbase.master.cleaner</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.http">org.apache.hadoop.hbase.master.http</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.janitor">org.apache.hadoop.hbase.master.janitor</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.locking">org.apache.hadoop.hbase.master.locking</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.normalizer">org.apache.hadoop.hbase.master.normalizer</a></td>
 <td class="colLast">
 <div class="block">The Region Normalizer subsystem is responsible for coaxing all the regions in a table toward
  a "normal" size, according to their storefile size.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.procedure">org.apache.hadoop.hbase.master.procedure</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.region">org.apache.hadoop.hbase.master.region</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.replication">org.apache.hadoop.hbase.master.replication</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.snapshot">org.apache.hadoop.hbase.master.snapshot</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.zksyncer">org.apache.hadoop.hbase.master.zksyncer</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mob">org.apache.hadoop.hbase.mob</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mob.mapreduce">org.apache.hadoop.hbase.mob.mapreduce</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.namequeues">org.apache.hadoop.hbase.namequeues</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.namespace">org.apache.hadoop.hbase.namespace</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure">org.apache.hadoop.hbase.procedure</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure.flush">org.apache.hadoop.hbase.procedure.flush</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure2">org.apache.hadoop.hbase.procedure2</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure2.store.region">org.apache.hadoop.hbase.procedure2.store.region</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure2.store.wal">org.apache.hadoop.hbase.procedure2.store.wal</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.quotas">org.apache.hadoop.hbase.quotas</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.quotas.policies">org.apache.hadoop.hbase.quotas.policies</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver">org.apache.hadoop.hbase.regionserver</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.compactions">org.apache.hadoop.hbase.regionserver.compactions</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.handler">org.apache.hadoop.hbase.regionserver.handler</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.querymatcher">org.apache.hadoop.hbase.regionserver.querymatcher</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.snapshot">org.apache.hadoop.hbase.regionserver.snapshot</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.throttle">org.apache.hadoop.hbase.regionserver.throttle</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.wal">org.apache.hadoop.hbase.regionserver.wal</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.replication">org.apache.hadoop.hbase.replication</a></td>
 <td class="colLast">
 <div class="block">Multi Cluster Replication</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.replication.master">org.apache.hadoop.hbase.replication.master</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.replication.regionserver">org.apache.hadoop.hbase.replication.regionserver</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.rest">org.apache.hadoop.hbase.rest</a></td>
 <td class="colLast">
 <div class="block">HBase REST</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.rest.model">org.apache.hadoop.hbase.rest.model</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.rsgroup">org.apache.hadoop.hbase.rsgroup</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security">org.apache.hadoop.hbase.security</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.access">org.apache.hadoop.hbase.security.access</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.token">org.apache.hadoop.hbase.security.token</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.visibility">org.apache.hadoop.hbase.security.visibility</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.slowlog">org.apache.hadoop.hbase.slowlog</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.snapshot">org.apache.hadoop.hbase.snapshot</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.testing">org.apache.hadoop.hbase.testing</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.thrift">org.apache.hadoop.hbase.thrift</a></td>
 <td class="colLast">
 <div class="block">Provides an HBase <a href="http://incubator.apache.org/thrift/">Thrift</a>
 service.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.thrift2">org.apache.hadoop.hbase.thrift2</a></td>
 <td class="colLast">
 <div class="block">Provides an HBase <a href="http://thrift.apache.org/">Thrift</a>
 service.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.thrift2.client">org.apache.hadoop.hbase.thrift2.client</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.tool">org.apache.hadoop.hbase.tool</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.trace">org.apache.hadoop.hbase.trace</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.util">org.apache.hadoop.hbase.util</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.util.compaction">org.apache.hadoop.hbase.util.compaction</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.util.hbck">org.apache.hadoop.hbase.util.hbck</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.wal">org.apache.hadoop.hbase.wal</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.zookeeper">org.apache.hadoop.hbase.zookeeper</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hbase.archetypes.exemplars.client">org.apache.hbase.archetypes.exemplars.client</a></td>
 <td class="colLast">
 <div class="block">This package provides fully-functional exemplar Java code demonstrating
@@ -2021,23 +2014,6 @@
 </tbody>
 </table>
 </li>
-<li class="blockList"><a name="org.apache.hadoop.hbase.mapred">
-<!--   -->
-</a>
-<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
-<caption><span>Classes in <a href="../../../../org/apache/hadoop/hbase/package-summary.html">org.apache.hadoop.hbase</a> used by <a href="../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colOne" scope="col">Class and Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/TableName.html#org.apache.hadoop.hbase.mapred">TableName</a>
-<div class="block">Immutable POJO class for representing a table name.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
 <li class="blockList"><a name="org.apache.hadoop.hbase.mapreduce">
 <!--   -->
 </a>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/MasterProcedureManagerHost.html b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/MasterProcedureManagerHost.html
index b3a11f2..f8110bb 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/MasterProcedureManagerHost.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/MasterProcedureManagerHost.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/MasterProcedureManagerHost.html" title="class in org.apache.hadoop.hbase.procedure">MasterProcedureManagerHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterProcedureManagerHost--">getMasterProcedureManagerHost</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterProcedureManagerHost--">getMasterProcedureManagerHost</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/MasterProcedureManagerHost.html" title="class in org.apache.hadoop.hbase.procedure">MasterProcedureManagerHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterProcedureManagerHost--">getMasterProcedureManagerHost</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterProcedureManagerHost--">getMasterProcedureManagerHost</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureCoordinatorRpcs.html b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureCoordinatorRpcs.html
index 917a745..d0973b6 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureCoordinatorRpcs.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureCoordinatorRpcs.html
@@ -132,16 +132,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinatorRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureCoordinatorRpcs</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKProcedureCoordinationManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureCoordinationManager.html#getProcedureCoordinatorRpcs-java.lang.String-java.lang.String-">getProcedureCoordinatorRpcs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;procType,
-                           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;coordNode)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinatorRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureCoordinatorRpcs</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureCoordinationManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinationManager.html#getProcedureCoordinatorRpcs-java.lang.String-java.lang.String-">getProcedureCoordinatorRpcs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;procType,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;coordNode)</code>
 <div class="block">Method to retrieve <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinatorRpcs.html" title="interface in org.apache.hadoop.hbase.procedure"><code>ProcedureCoordinatorRpcs</code></a></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinatorRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureCoordinatorRpcs</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKProcedureCoordinationManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureCoordinationManager.html#getProcedureCoordinatorRpcs-java.lang.String-java.lang.String-">getProcedureCoordinatorRpcs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;procType,
+                           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;coordNode)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinatorRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureCoordinatorRpcs</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureCoordinator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinator.html#getRpcs--">getRpcs</a></span>()</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMember.html b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMember.html
index ae4a7c1..d6ef672 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMember.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMember.html
@@ -164,16 +164,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#start-java.lang.String-org.apache.hadoop.hbase.procedure.ProcedureMember-">start</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;memberName,
+     <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMember.html" title="class in org.apache.hadoop.hbase.procedure">ProcedureMember</a>&nbsp;listener)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#start-java.lang.String-org.apache.hadoop.hbase.procedure.ProcedureMember-">start</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;memberName,
      <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMember.html" title="class in org.apache.hadoop.hbase.procedure">ProcedureMember</a>&nbsp;member)</code>
 <div class="block">Initialize and start any threads or connections the member needs.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#start-java.lang.String-org.apache.hadoop.hbase.procedure.ProcedureMember-">start</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;memberName,
-     <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMember.html" title="class in org.apache.hadoop.hbase.procedure">ProcedureMember</a>&nbsp;listener)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMemberRpcs.html b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMemberRpcs.html
index f97f23c..3f1b98b 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMemberRpcs.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/ProcedureMemberRpcs.html
@@ -148,13 +148,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Subprocedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html#rpcs">rpcs</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureMember.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMember.html#rpcs">rpcs</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Subprocedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html#rpcs">rpcs</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -166,14 +166,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKProcedureCoordinationManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureCoordinationManager.html#getProcedureMemberRpcs-java.lang.String-">getProcedureMemberRpcs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;procType)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureCoordinationManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureCoordinationManager.html#getProcedureMemberRpcs-java.lang.String-">getProcedureMemberRpcs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;procType)</code>
 <div class="block">Method to retrieve <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure"><code>ProcedureMemberRpcs</code></a></div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKProcedureCoordinationManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureCoordinationManager.html#getProcedureMemberRpcs-java.lang.String-">getProcedureMemberRpcs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;procType)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html" title="interface in org.apache.hadoop.hbase.procedure">ProcedureMemberRpcs</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureMember.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMember.html#getRpcs--">getRpcs</a></span>()</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/Subprocedure.html b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/Subprocedure.html
index b83dcab..76ac3a7 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure/class-use/Subprocedure.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure/class-use/Subprocedure.html
@@ -209,33 +209,40 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#sendMemberAborted-org.apache.hadoop.hbase.procedure.Subprocedure-org.apache.hadoop.hbase.errorhandling.ForeignException-">sendMemberAborted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
-                 <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;cause)</code>
-<div class="block">Notify the coordinator that we aborted the specified <a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure"><code>Subprocedure</code></a></div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#sendMemberAborted-org.apache.hadoop.hbase.procedure.Subprocedure-org.apache.hadoop.hbase.errorhandling.ForeignException-">sendMemberAborted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
                  <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;ee)</code>
 <div class="block">This should be called by the member and should write a serialized root cause exception as
  to the abort znode.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#sendMemberAborted-org.apache.hadoop.hbase.procedure.Subprocedure-org.apache.hadoop.hbase.errorhandling.ForeignException-">sendMemberAborted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
+                 <a href="../../../../../../org/apache/hadoop/hbase/errorhandling/ForeignException.html" title="class in org.apache.hadoop.hbase.errorhandling">ForeignException</a>&nbsp;cause)</code>
+<div class="block">Notify the coordinator that we aborted the specified <a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure"><code>Subprocedure</code></a></div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#sendMemberAcquired-org.apache.hadoop.hbase.procedure.Subprocedure-">sendMemberAcquired</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub)</code>
+<div class="block">This attempts to create an acquired state znode for the procedure (snapshot name).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#sendMemberAcquired-org.apache.hadoop.hbase.procedure.Subprocedure-">sendMemberAcquired</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub)</code>
 <div class="block">Notify the coordinator that the specified <a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure"><code>Subprocedure</code></a> has acquired the locally required
  barrier condition.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#sendMemberAcquired-org.apache.hadoop.hbase.procedure.Subprocedure-">sendMemberAcquired</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub)</code>
-<div class="block">This attempts to create an acquired state znode for the procedure (snapshot name).</div>
+<td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#sendMemberCompleted-org.apache.hadoop.hbase.procedure.Subprocedure-byte:A-">sendMemberCompleted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
+                   byte[]&nbsp;data)</code>
+<div class="block">This acts as the ack for a completed procedure</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMemberRpcs.html#sendMemberCompleted-org.apache.hadoop.hbase.procedure.Subprocedure-byte:A-">sendMemberCompleted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
                    byte[]&nbsp;data)</code>
@@ -243,13 +250,6 @@
  needed to be done under the global barrier.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKProcedureMemberRpcs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html#sendMemberCompleted-org.apache.hadoop.hbase.procedure.Subprocedure-byte:A-">sendMemberCompleted</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;sub,
-                   byte[]&nbsp;data)</code>
-<div class="block">This acts as the ack for a completed procedure</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureMember.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/ProcedureMember.html#submitSubprocedure-org.apache.hadoop.hbase.procedure.Subprocedure-">submitSubprocedure</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a>&nbsp;subproc)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/CompletedProcedureRetainer.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/CompletedProcedureRetainer.html
index f7f7d57..1eb3ee6 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/CompletedProcedureRetainer.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/CompletedProcedureRetainer.html
@@ -103,15 +103,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>,<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureRetainer.html" title="class in org.apache.hadoop.hbase.procedure2">CompletedProcedureRetainer</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html" title="type parameter in CompletedProcedureCleaner">TEnvironment</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#completed">completed</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>,<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureRetainer.html" title="class in org.apache.hadoop.hbase.procedure2">CompletedProcedureRetainer</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html" title="type parameter in ProcedureExecutor">TEnvironment</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html#completed">completed</a></span></code>
 <div class="block">Map the the procId returned by submitProcedure(), the Root-ProcID, to the Procedure.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>,<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureRetainer.html" title="class in org.apache.hadoop.hbase.procedure2">CompletedProcedureRetainer</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html" title="type parameter in CompletedProcedureCleaner">TEnvironment</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#completed">completed</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResource.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResource.html
index a2773ec..7f8c3c5 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResource.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResource.html
@@ -112,13 +112,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLocks--">getLocks</a></span>()</code>
-<div class="block">Get locks</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getLocks--">getLocks</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getLocks--">getLocks</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLocks--">getLocks</a></span>()</code>
+<div class="block">Get locks</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -154,13 +154,13 @@
                     <a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html" title="class in org.apache.hadoop.hbase.procedure2">LockAndQueue</a>&nbsp;queue)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SchemaLocking.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SchemaLocking.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SchemaLocking.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SchemaLocking.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -173,15 +173,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getLocks--">getLocks</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">SchemaLocking.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SchemaLocking.html#getLocks--">getLocks</a></span>()</code>
 <div class="block">List lock queues.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getLocks--">getLocks</a></span>()</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -214,12 +214,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -233,13 +233,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#getLocks--">getLocks</a></span>()</code>
-<div class="block">List lock queues.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#getLocks--">getLocks</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#getLocks--">getLocks</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#getLocks--">getLocks</a></span>()</code>
+<div class="block">List lock queues.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResourceType.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResourceType.html
index 5dc7ede..d1309e9 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResourceType.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/LockedResourceType.html
@@ -120,13 +120,13 @@
                     <a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html" title="class in org.apache.hadoop.hbase.procedure2">LockAndQueue</a>&nbsp;queue)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SchemaLocking.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SchemaLocking.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SchemaLocking.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SchemaLocking.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -195,12 +195,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html" title="class in org.apache.hadoop.hbase.procedure2">LockedResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
+<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#getLockResource-org.apache.hadoop.hbase.procedure2.LockedResourceType-java.lang.String-">getLockResource</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2">LockedResourceType</a>&nbsp;resourceType,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;resourceName)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.LockState.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.LockState.html
index 136cdbf..138b0d8 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.LockState.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.LockState.html
@@ -124,11 +124,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -168,15 +168,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCrashProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractStateMachineNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.html#acquireLock-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">acquireLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.html
index 25bae9c..938fc5c 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/Procedure.html
@@ -141,13 +141,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getProcedures--">getProcedures</a></span>()</code>
-<div class="block">Get procedures</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getProcedures--">getProcedures</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getProcedures--">getProcedures</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getProcedures--">getProcedures</a></span>()</code>
+<div class="block">Get procedures</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&gt;</code></td>
@@ -311,19 +311,19 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -689,12 +689,12 @@
 <td class="colLast"><span class="typeNameLabel">PeerQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/PeerQueue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">TableQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableQueue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
+<td class="colFirst"><code>(package private) abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">Queue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/Queue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerQueue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableQueue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
@@ -703,8 +703,8 @@
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">Queue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/Queue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ServerQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerQueue.html#requireExclusiveLock-org.apache.hadoop.hbase.procedure2.Procedure-">requireExclusiveLock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static byte[]</code></td>
@@ -1106,11 +1106,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LockedResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html#exclusiveLockOwnerProcedure">exclusiveLockOwnerProcedure</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html#exclusiveLockOwnerProcedure">exclusiveLockOwnerProcedure</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html#exclusiveLockOwnerProcedure">exclusiveLockOwnerProcedure</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LockedResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html#exclusiveLockOwnerProcedure">exclusiveLockOwnerProcedure</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureRetainer.html" title="type parameter in CompletedProcedureRetainer">TEnvironment</a>&gt;</code></td>
@@ -1227,7 +1227,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LockedResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html#getExclusiveLockOwnerProcedure--">getExclusiveLockOwnerProcedure</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html#getExclusiveLockOwnerProcedure--">getExclusiveLockOwnerProcedure</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
@@ -1237,7 +1237,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html#getExclusiveLockOwnerProcedure--">getExclusiveLockOwnerProcedure</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">LockedResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockedResource.html#getExclusiveLockOwnerProcedure--">getExclusiveLockOwnerProcedure</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureRetainer.html" title="type parameter in CompletedProcedureRetainer">TEnvironment</a>&gt;</code></td>
@@ -1430,13 +1430,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#completionCleanup-org.apache.hadoop.hbase.procedure2.Procedure-">completionCleanup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>
-<div class="block">The procedure in execution completed.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#completionCleanup-org.apache.hadoop.hbase.procedure2.Procedure-">completionCleanup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#completionCleanup-org.apache.hadoop.hbase.procedure2.Procedure-">completionCleanup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#completionCleanup-org.apache.hadoop.hbase.procedure2.Procedure-">completionCleanup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>
+<div class="block">The procedure in execution completed.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.Procedure</code></td>
@@ -1507,15 +1507,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">LockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html#hasLockAccess-org.apache.hadoop.hbase.procedure2.Procedure-">hasLockAccess</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">LockStatus.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockStatus.html#hasLockAccess-org.apache.hadoop.hbase.procedure2.Procedure-">hasLockAccess</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>
 <div class="block">Return true if the procedure itself holds the exclusive lock, or any ancestors of the give
  procedure hold the exclusive lock.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">LockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/LockAndQueue.html#hasLockAccess-org.apache.hadoop.hbase.procedure2.Procedure-">hasLockAccess</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">Procedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#haveSameParent-org.apache.hadoop.hbase.procedure2.Procedure-org.apache.hadoop.hbase.procedure2.Procedure-">haveSameParent</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;a,
@@ -1659,13 +1659,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#yield-org.apache.hadoop.hbase.procedure2.Procedure-">yield</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>
-<div class="block">The procedure can't run at the moment.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#yield-org.apache.hadoop.hbase.procedure2.Procedure-">yield</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SimpleProcedureScheduler.html#yield-org.apache.hadoop.hbase.procedure2.Procedure-">yield</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureScheduler.html#yield-org.apache.hadoop.hbase.procedure2.Procedure-">yield</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&nbsp;proc)</code>
+<div class="block">The procedure can't run at the moment.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
@@ -1779,15 +1779,15 @@
 <td class="colLast"><span class="typeNameLabel">ProtoAndProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/store/ProtoAndProcedure.html#getProcedure--">getProcedure</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">InMemoryProcedureIterator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/store/InMemoryProcedureIterator.html#next--">next</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureStore.ProcedureIterator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureIterator.html#next--">next</a></span>()</code>
 <div class="block">Returns the next procedure in the iteration.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">InMemoryProcedureIterator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/store/InMemoryProcedureIterator.html#next--">next</a></span>()</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureEvent.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureEvent.html
index 34e408c..aa5810f 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureEvent.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureEvent.html
@@ -141,11 +141,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureEvent.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureEvent</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getInitializedEvent--">getInitializedEvent</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getInitializedEvent--">getInitializedEvent</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureEvent.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureEvent</a>&lt;?&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getInitializedEvent--">getInitializedEvent</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getInitializedEvent--">getInitializedEvent</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureExecutor.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureExecutor.html
index 7889282..8fcb31a 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureExecutor.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureExecutor.html
@@ -125,11 +125,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureExecutor</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureExecutor</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterProcedureExecutor--">getMasterProcedureExecutor</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureMetrics.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureMetrics.html
index ee03c4a..fe1d777 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureMetrics.html
@@ -217,7 +217,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
@@ -225,7 +225,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
@@ -239,13 +241,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#getProcedureMetrics-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">getProcedureMetrics</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureStateSerializer.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureStateSerializer.html
index 7e337fd..49db10b 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureStateSerializer.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureStateSerializer.html
@@ -120,7 +120,17 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GCRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -128,34 +138,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">GCRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -166,17 +158,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">GCRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -184,34 +194,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">OpenRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/OpenRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">MoveRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">GCRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -222,13 +214,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CloseRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/CloseRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -268,23 +268,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -292,29 +284,37 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RecoverMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RecoverMetaProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -322,51 +322,43 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReopenTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ReopenTableRegionsProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DeleteTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteTableProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -374,29 +366,37 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">DeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteNamespaceProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RecoverMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/RecoverMetaProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -404,28 +404,28 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractStateMachineRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/AbstractStateMachineRegionProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReopenTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ReopenTableRegionsProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ModifyNamespaceProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DeleteTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/DeleteTableProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
@@ -446,107 +446,107 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitPeerSyncReplicationStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitPeerSyncReplicationStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitPeerSyncReplicationStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoverStandbyProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RecoverStandbyProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueueRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueueRemoteProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitPeerSyncReplicationStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -586,11 +586,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">FailedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/FailedProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SequentialProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SequentialProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SequentialProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SequentialProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FailedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/FailedProcedure.html#deserializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">deserializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected abstract void</code></td>
@@ -609,11 +609,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">FailedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/FailedProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SequentialProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SequentialProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">SequentialProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/SequentialProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FailedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/FailedProcedure.html#serializeStateData-org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer-">serializeStateData</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureStateSerializer.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureStateSerializer</a>&nbsp;serializer)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureSuspendedException.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureSuspendedException.html
index e7f03c7..a22ff66 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureSuspendedException.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureSuspendedException.html
@@ -143,13 +143,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2">StateMachineProcedure.Flow</a></code></td>
 <td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#executeFromState-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.GCMergedRegionsState-">executeFromState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
@@ -192,15 +192,15 @@
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStateNode-">updateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                 <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStateNode</a>&nbsp;regionNode)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureYieldException.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureYieldException.html
index 6333309..dbff3b5 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureYieldException.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/ProcedureYieldException.html
@@ -115,13 +115,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&gt;[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">execute</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2">StateMachineProcedure.Flow</a></code></td>
 <td class="colLast"><span class="typeNameLabel">GCMultipleMergedRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.html#executeFromState-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.GCMergedRegionsState-">executeFromState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/RemoteProcedureDispatcher.RemoteOperation.html b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/RemoteProcedureDispatcher.RemoteOperation.html
index 9e6554c..03ca74e 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/RemoteProcedureDispatcher.RemoteOperation.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/class-use/RemoteProcedureDispatcher.RemoteOperation.html
@@ -142,21 +142,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
@@ -226,7 +226,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;remote)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -236,7 +236,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationReplayWALRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
+<td class="colLast"><span class="typeNameLabel">RefreshPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RefreshPeerProcedure.html#remoteCallBuild-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-">remoteCallBuild</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env,
                <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;remote)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html b/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
index ee03b33..78d28992 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
@@ -217,11 +217,11 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">StateMachineProcedure.Flow</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">Procedure.LockState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/RootProcedureState.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">RootProcedureState.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">Procedure.LockState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockedResourceType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">StateMachineProcedure.Flow</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/class-use/ProcedureStore.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/class-use/ProcedureStore.html
index 99e0aff..dfd9ed4 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/class-use/ProcedureStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/class-use/ProcedureStore.html
@@ -151,11 +151,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#store">store</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html#store">store</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html#store">store</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#store">store</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html
index 86f54b7..fb3a5dc 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html
@@ -122,7 +122,7 @@
 </dl>
 <hr>
 <br>
-<pre>private static enum <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.707">WALProcedureStore.PushType</a>
+<pre>private static enum <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.709">WALProcedureStore.PushType</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&gt;</pre>
 </li>
 </ul>
@@ -213,7 +213,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>INSERT</h4>
-<pre>public static final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.707">INSERT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.709">INSERT</a></pre>
 </li>
 </ul>
 <a name="UPDATE">
@@ -222,7 +222,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>UPDATE</h4>
-<pre>public static final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.707">UPDATE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.709">UPDATE</a></pre>
 </li>
 </ul>
 <a name="DELETE">
@@ -231,7 +231,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DELETE</h4>
-<pre>public static final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.707">DELETE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.709">DELETE</a></pre>
 </li>
 </ul>
 </li>
@@ -248,7 +248,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>[]&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.707">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>[]&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.709">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -268,7 +268,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.707">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html#line.709">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html
index 053aeff..d556aec 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html
@@ -113,7 +113,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.209">WALProcedureStore.SyncMetrics</a>
+<pre>public static class <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.211">WALProcedureStore.SyncMetrics</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
 </li>
 </ul>
@@ -233,7 +233,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>timestamp</h4>
-<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.210">timestamp</a></pre>
+<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.212">timestamp</a></pre>
 </li>
 </ul>
 <a name="syncWaitMs">
@@ -242,7 +242,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncWaitMs</h4>
-<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.211">syncWaitMs</a></pre>
+<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.213">syncWaitMs</a></pre>
 </li>
 </ul>
 <a name="totalSyncedBytes">
@@ -251,7 +251,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>totalSyncedBytes</h4>
-<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.212">totalSyncedBytes</a></pre>
+<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.214">totalSyncedBytes</a></pre>
 </li>
 </ul>
 <a name="syncedEntries">
@@ -260,7 +260,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncedEntries</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.213">syncedEntries</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.215">syncedEntries</a></pre>
 </li>
 </ul>
 <a name="syncedPerSec">
@@ -269,7 +269,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>syncedPerSec</h4>
-<pre>private&nbsp;float <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.214">syncedPerSec</a></pre>
+<pre>private&nbsp;float <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.216">syncedPerSec</a></pre>
 </li>
 </ul>
 </li>
@@ -286,7 +286,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SyncMetrics</h4>
-<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.209">SyncMetrics</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.211">SyncMetrics</a>()</pre>
 </li>
 </ul>
 </li>
@@ -303,7 +303,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTimestamp</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.216">getTimestamp</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.218">getTimestamp</a>()</pre>
 </li>
 </ul>
 <a name="getSyncWaitMs--">
@@ -312,7 +312,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSyncWaitMs</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.220">getSyncWaitMs</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.222">getSyncWaitMs</a>()</pre>
 </li>
 </ul>
 <a name="getTotalSyncedBytes--">
@@ -321,7 +321,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTotalSyncedBytes</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.224">getTotalSyncedBytes</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.226">getTotalSyncedBytes</a>()</pre>
 </li>
 </ul>
 <a name="getSyncedEntries--">
@@ -330,7 +330,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSyncedEntries</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.228">getSyncedEntries</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.230">getSyncedEntries</a>()</pre>
 </li>
 </ul>
 <a name="getSyncedPerSec--">
@@ -339,7 +339,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getSyncedPerSec</h4>
-<pre>public&nbsp;float&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.232">getSyncedPerSec</a>()</pre>
+<pre>public&nbsp;float&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html#line.234">getSyncedPerSec</a>()</pre>
 </li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html
index 9c9e7d1..92141db 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html
@@ -124,7 +124,7 @@
 <br>
 <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
  @InterfaceAudience.Private
-public class <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.116">WALProcedureStore</a>
+public class <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.118">WALProcedureStore</a>
 extends <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html" title="class in org.apache.hadoop.hbase.procedure2.store">ProcedureStoreBase</a></pre>
 <div class="block">WAL implementation of the ProcedureStore.
  <p/>
@@ -1061,7 +1061,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>LOG</h4>
-<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.117">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.119">LOG</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1071,7 +1071,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>LOG_PREFIX</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.118">LOG_PREFIX</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.120">LOG_PREFIX</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1085,7 +1085,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>MASTER_PROCEDURE_LOGDIR</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.120">MASTER_PROCEDURE_LOGDIR</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.122">MASTER_PROCEDURE_LOGDIR</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Used to construct the name of the log directory for master procedures</div>
 <dl>
@@ -1100,7 +1100,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>WAL_COUNT_WARN_THRESHOLD_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.123">WAL_COUNT_WARN_THRESHOLD_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.125">WAL_COUNT_WARN_THRESHOLD_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1114,7 +1114,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_WAL_COUNT_WARN_THRESHOLD</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.125">DEFAULT_WAL_COUNT_WARN_THRESHOLD</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.127">DEFAULT_WAL_COUNT_WARN_THRESHOLD</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1128,7 +1128,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.127">EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.129">EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1142,7 +1142,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY</h4>
-<pre>private static final&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.129">DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY</a></pre>
+<pre>private static final&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.131">DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1156,7 +1156,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>MAX_RETRIES_BEFORE_ROLL_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.131">MAX_RETRIES_BEFORE_ROLL_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.133">MAX_RETRIES_BEFORE_ROLL_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1170,7 +1170,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_MAX_RETRIES_BEFORE_ROLL</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.133">DEFAULT_MAX_RETRIES_BEFORE_ROLL</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.135">DEFAULT_MAX_RETRIES_BEFORE_ROLL</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1184,7 +1184,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>WAIT_BEFORE_ROLL_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.135">WAIT_BEFORE_ROLL_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.137">WAIT_BEFORE_ROLL_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1198,7 +1198,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_WAIT_BEFORE_ROLL</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.137">DEFAULT_WAIT_BEFORE_ROLL</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.139">DEFAULT_WAIT_BEFORE_ROLL</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1212,7 +1212,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>ROLL_RETRIES_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.139">ROLL_RETRIES_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.141">ROLL_RETRIES_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1226,7 +1226,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_ROLL_RETRIES</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.141">DEFAULT_ROLL_RETRIES</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.143">DEFAULT_ROLL_RETRIES</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1240,7 +1240,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>MAX_SYNC_FAILURE_ROLL_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.143">MAX_SYNC_FAILURE_ROLL_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.145">MAX_SYNC_FAILURE_ROLL_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1254,7 +1254,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_MAX_SYNC_FAILURE_ROLL</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.145">DEFAULT_MAX_SYNC_FAILURE_ROLL</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.147">DEFAULT_MAX_SYNC_FAILURE_ROLL</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1268,7 +1268,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>PERIODIC_ROLL_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.147">PERIODIC_ROLL_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.149">PERIODIC_ROLL_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1282,7 +1282,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_PERIODIC_ROLL</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.149">DEFAULT_PERIODIC_ROLL</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.151">DEFAULT_PERIODIC_ROLL</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1296,7 +1296,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>SYNC_WAIT_MSEC_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.151">SYNC_WAIT_MSEC_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.153">SYNC_WAIT_MSEC_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1310,7 +1310,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_SYNC_WAIT_MSEC</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.152">DEFAULT_SYNC_WAIT_MSEC</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.154">DEFAULT_SYNC_WAIT_MSEC</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1324,7 +1324,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>USE_HSYNC_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.154">USE_HSYNC_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.156">USE_HSYNC_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1338,7 +1338,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_USE_HSYNC</h4>
-<pre>private static final&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.155">DEFAULT_USE_HSYNC</a></pre>
+<pre>private static final&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.157">DEFAULT_USE_HSYNC</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1352,7 +1352,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>ROLL_THRESHOLD_CONF_KEY</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.157">ROLL_THRESHOLD_CONF_KEY</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.159">ROLL_THRESHOLD_CONF_KEY</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1366,7 +1366,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_ROLL_THRESHOLD</h4>
-<pre>private static final&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.158">DEFAULT_ROLL_THRESHOLD</a></pre>
+<pre>private static final&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.160">DEFAULT_ROLL_THRESHOLD</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1380,7 +1380,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>STORE_WAL_SYNC_STATS_COUNT</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.160">STORE_WAL_SYNC_STATS_COUNT</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.162">STORE_WAL_SYNC_STATS_COUNT</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1394,7 +1394,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_SYNC_STATS_COUNT</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.162">DEFAULT_SYNC_STATS_COUNT</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.164">DEFAULT_SYNC_STATS_COUNT</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -1408,7 +1408,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>logs</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/LinkedList.html?is-external=true" title="class or interface in java.util">LinkedList</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.164">logs</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/LinkedList.html?is-external=true" title="class or interface in java.util">LinkedList</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.166">logs</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1418,7 +1418,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>holdingCleanupTracker</h4>
-<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.165">holdingCleanupTracker</a></pre>
+<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.167">holdingCleanupTracker</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1428,7 +1428,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>storeTracker</h4>
-<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.166">storeTracker</a></pre>
+<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.168">storeTracker</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1438,7 +1438,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>lock</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/ReentrantLock.html?is-external=true" title="class or interface in java.util.concurrent.locks">ReentrantLock</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.167">lock</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/ReentrantLock.html?is-external=true" title="class or interface in java.util.concurrent.locks">ReentrantLock</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.169">lock</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1448,7 +1448,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>waitCond</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Condition.html?is-external=true" title="class or interface in java.util.concurrent.locks">Condition</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.168">waitCond</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Condition.html?is-external=true" title="class or interface in java.util.concurrent.locks">Condition</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.170">waitCond</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1458,7 +1458,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>slotCond</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Condition.html?is-external=true" title="class or interface in java.util.concurrent.locks">Condition</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.169">slotCond</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Condition.html?is-external=true" title="class or interface in java.util.concurrent.locks">Condition</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.171">slotCond</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1468,7 +1468,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncCond</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Condition.html?is-external=true" title="class or interface in java.util.concurrent.locks">Condition</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.170">syncCond</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Condition.html?is-external=true" title="class or interface in java.util.concurrent.locks">Condition</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.172">syncCond</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1478,7 +1478,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>leaseRecovery</h4>
-<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.172">leaseRecovery</a></pre>
+<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.174">leaseRecovery</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1488,7 +1488,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>conf</h4>
-<pre>private final&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.173">conf</a></pre>
+<pre>private final&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.175">conf</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1498,7 +1498,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>fs</h4>
-<pre>private final&nbsp;org.apache.hadoop.fs.FileSystem <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.174">fs</a></pre>
+<pre>private final&nbsp;org.apache.hadoop.fs.FileSystem <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.176">fs</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1508,7 +1508,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>walDir</h4>
-<pre>private final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.175">walDir</a></pre>
+<pre>private final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.177">walDir</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1518,7 +1518,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>walArchiveDir</h4>
-<pre>private final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.176">walArchiveDir</a></pre>
+<pre>private final&nbsp;org.apache.hadoop.fs.Path <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.178">walArchiveDir</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1528,7 +1528,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>enforceStreamCapability</h4>
-<pre>private final&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.177">enforceStreamCapability</a></pre>
+<pre>private final&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.179">enforceStreamCapability</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1538,7 +1538,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncException</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReference.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicReference</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.179">syncException</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReference.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicReference</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.181">syncException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1548,7 +1548,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>loading</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.180">loading</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.182">loading</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1558,7 +1558,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>inSync</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.181">inSync</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.183">inSync</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1568,7 +1568,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>totalSynced</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.182">totalSynced</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.184">totalSynced</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1578,7 +1578,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>lastRollTs</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.183">lastRollTs</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.185">lastRollTs</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1588,7 +1588,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncId</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.184">syncId</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.186">syncId</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1598,7 +1598,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>slotsCache</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/LinkedTransferQueue.html?is-external=true" title="class or interface in java.util.concurrent">LinkedTransferQueue</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.186">slotsCache</a></pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/LinkedTransferQueue.html?is-external=true" title="class or interface in java.util.concurrent">LinkedTransferQueue</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.188">slotsCache</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1608,7 +1608,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>corruptedLogs</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.187">corruptedLogs</a></pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.189">corruptedLogs</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1618,7 +1618,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>stream</h4>
-<pre>private&nbsp;org.apache.hadoop.fs.FSDataOutputStream <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.188">stream</a></pre>
+<pre>private&nbsp;org.apache.hadoop.fs.FSDataOutputStream <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.190">stream</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1628,7 +1628,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>runningProcCount</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.189">runningProcCount</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.191">runningProcCount</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1638,7 +1638,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>flushLogId</h4>
-<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.190">flushLogId</a></pre>
+<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.192">flushLogId</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1648,7 +1648,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncMaxSlot</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.191">syncMaxSlot</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.193">syncMaxSlot</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1658,7 +1658,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>slotIndex</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.192">slotIndex</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.194">slotIndex</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1668,7 +1668,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncThread</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.193">syncThread</a></pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.195">syncThread</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1678,7 +1678,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>slots</h4>
-<pre>private&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>[] <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.194">slots</a></pre>
+<pre>private&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>[] <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.196">slots</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1688,7 +1688,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>walCountWarnThreshold</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.196">walCountWarnThreshold</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.198">walCountWarnThreshold</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1698,7 +1698,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>maxRetriesBeforeRoll</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.197">maxRetriesBeforeRoll</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.199">maxRetriesBeforeRoll</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1708,7 +1708,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>maxSyncFailureRoll</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.198">maxSyncFailureRoll</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.200">maxSyncFailureRoll</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1718,7 +1718,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>waitBeforeRoll</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.199">waitBeforeRoll</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.201">waitBeforeRoll</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1728,7 +1728,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>rollRetries</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.200">rollRetries</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.202">rollRetries</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1738,7 +1738,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>periodicRollMsec</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.201">periodicRollMsec</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.203">periodicRollMsec</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1748,7 +1748,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>rollThreshold</h4>
-<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.202">rollThreshold</a></pre>
+<pre>private&nbsp;long <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.204">rollThreshold</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1758,7 +1758,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>useHsync</h4>
-<pre>private&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.203">useHsync</a></pre>
+<pre>private&nbsp;boolean <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.205">useHsync</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1768,7 +1768,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncWaitMsec</h4>
-<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.204">syncWaitMsec</a></pre>
+<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.206">syncWaitMsec</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1778,7 +1778,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncMetricsQueue</h4>
-<pre>private&nbsp;org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.SyncMetrics</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.207">syncMetricsQueue</a></pre>
+<pre>private&nbsp;org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.SyncMetrics</a>&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.209">syncMetricsQueue</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1788,7 +1788,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>WALS_PATH_FILTER</h4>
-<pre>private static final&nbsp;org.apache.hadoop.fs.PathFilter <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1273">WALS_PATH_FILTER</a></pre>
+<pre>private static final&nbsp;org.apache.hadoop.fs.PathFilter <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1281">WALS_PATH_FILTER</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1798,7 +1798,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>FILE_STATUS_ID_COMPARATOR</h4>
-<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;org.apache.hadoop.fs.FileStatus&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1281">FILE_STATUS_ID_COMPARATOR</a></pre>
+<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;org.apache.hadoop.fs.FileStatus&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1289">FILE_STATUS_ID_COMPARATOR</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1816,7 +1816,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>WALProcedureStore</h4>
-<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.237">WALProcedureStore</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.239">WALProcedureStore</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                          <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a>&nbsp;leaseRecovery)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -1832,7 +1832,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>WALProcedureStore</h4>
-<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.243">WALProcedureStore</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.245">WALProcedureStore</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                          org.apache.hadoop.fs.Path&nbsp;walDir,
                          org.apache.hadoop.fs.Path&nbsp;walArchiveDir,
                          <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a>&nbsp;leaseRecovery)
@@ -1858,7 +1858,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>start</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.275">start</a>(int&nbsp;numSlots)
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.277">start</a>(int&nbsp;numSlots)
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#start-int-">ProcedureStore</a></code></span></div>
@@ -1877,7 +1877,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>stop</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.325">stop</a>(boolean&nbsp;abort)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.327">stop</a>(boolean&nbsp;abort)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#stop-boolean-">ProcedureStore</a></code></span></div>
 <div class="block">Stop/Close the procedure store</div>
@@ -1893,7 +1893,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>sendStopSignal</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.358">sendStopSignal</a>()</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.360">sendStopSignal</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1903,7 +1903,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getNumThreads</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.370">getNumThreads</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.372">getNumThreads</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1917,7 +1917,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setRunningProcedureCount</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.375">setRunningProcedureCount</a>(int&nbsp;count)</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.377">setRunningProcedureCount</a>(int&nbsp;count)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#setRunningProcedureCount-int-">ProcedureStore</a></code></span></div>
 <div class="block">Set the number of procedure running.
@@ -1934,7 +1934,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStoreTracker</h4>
-<pre>public&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.380">getStoreTracker</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.382">getStoreTracker</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1944,7 +1944,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getActiveLogs</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.384">getActiveLogs</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.386">getActiveLogs</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1954,7 +1954,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCorruptedLogs</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.393">getCorruptedLogs</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.395">getCorruptedLogs</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -1964,7 +1964,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>recoverLease</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.398">recoverLease</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.400">recoverLease</a>()
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#recoverLease--">ProcedureStore</a></code></span></div>
@@ -1981,7 +1981,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>load</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.445">load</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureLoader.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureLoader</a>&nbsp;loader)
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.447">load</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureLoader.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureLoader</a>&nbsp;loader)
           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#load-org.apache.hadoop.hbase.procedure2.store.ProcedureStore.ProcedureLoader-">ProcedureStore</a></code></span></div>
@@ -2000,7 +2000,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tryCleanupLogsOnLoad</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.507">tryCleanupLogsOnLoad</a>()</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.509">tryCleanupLogsOnLoad</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2010,7 +2010,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>insert</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.528">insert</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.530">insert</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
                    <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;subprocs)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#insert-org.apache.hadoop.hbase.procedure2.Procedure-org.apache.hadoop.hbase.procedure2.Procedure:A-">ProcedureStore</a></code></span></div>
@@ -2033,7 +2033,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>insert</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.562">insert</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;procs)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.564">insert</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;procs)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#insert-org.apache.hadoop.hbase.procedure2.Procedure:A-">ProcedureStore</a></code></span></div>
 <div class="block">Serialize a set of new procedures.
@@ -2051,7 +2051,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>update</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.591">update</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.593">update</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#update-org.apache.hadoop.hbase.procedure2.Procedure-">ProcedureStore</a></code></span></div>
 <div class="block">The specified procedure was executed,
@@ -2068,7 +2068,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>delete</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.614">delete</a>(long&nbsp;procId)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.616">delete</a>(long&nbsp;procId)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#delete-long-">ProcedureStore</a></code></span></div>
 <div class="block">The specified procId was removed from the executor,
@@ -2086,7 +2086,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>delete</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.634">delete</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.636">delete</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
                    long[]&nbsp;subProcIds)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#delete-org.apache.hadoop.hbase.procedure2.Procedure-long:A-">ProcedureStore</a></code></span></div>
@@ -2105,7 +2105,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>delete</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.659">delete</a>(long[]&nbsp;procIds,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.661">delete</a>(long[]&nbsp;procIds,
                    int&nbsp;offset,
                    int&nbsp;count)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -2127,7 +2127,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>delete</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.673">delete</a>(long[]&nbsp;procIds)</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.675">delete</a>(long[]&nbsp;procIds)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2137,7 +2137,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>acquireSlot</h4>
-<pre>private&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.697">acquireSlot</a>()</pre>
+<pre>private&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.699">acquireSlot</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2147,7 +2147,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>releaseSlot</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.702">releaseSlot</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&nbsp;slot)</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.704">releaseSlot</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&nbsp;slot)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2157,7 +2157,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>pushData</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.709">pushData</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&nbsp;type,
+<pre>private&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.711">pushData</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&nbsp;type,
                       <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>&nbsp;slot,
                       long&nbsp;procId,
                       long[]&nbsp;subProcIds)</pre>
@@ -2170,7 +2170,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>updateStoreTracker</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.769">updateStoreTracker</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&nbsp;type,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.771">updateStoreTracker</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a>&nbsp;type,
                                 long&nbsp;procId,
                                 long[]&nbsp;subProcIds)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -2182,7 +2182,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isSyncAborted</h4>
-<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.800">isSyncAborted</a>()</pre>
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.802">isSyncAborted</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2192,7 +2192,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncLoop</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.804">syncLoop</a>()
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.806">syncLoop</a>()
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2207,7 +2207,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSyncMetrics</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.SyncMetrics</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.884">getSyncMetrics</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.SyncMetrics</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.886">getSyncMetrics</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2217,7 +2217,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncSlots</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.893">syncSlots</a>()
+<pre>private&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.895">syncSlots</a>()
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2232,7 +2232,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncSlots</h4>
-<pre>protected&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.921">syncSlots</a>(org.apache.hadoop.fs.FSDataOutputStream&nbsp;stream,
+<pre>protected&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.923">syncSlots</a>(org.apache.hadoop.fs.FSDataOutputStream&nbsp;stream,
                          <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/ByteSlot.html" title="class in org.apache.hadoop.hbase.procedure2.util">ByteSlot</a>[]&nbsp;slots,
                          int&nbsp;offset,
                          int&nbsp;count)
@@ -2250,7 +2250,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>syncStream</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.940">syncStream</a>(org.apache.hadoop.fs.FSDataOutputStream&nbsp;stream)
+<pre>protected&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.942">syncStream</a>(org.apache.hadoop.fs.FSDataOutputStream&nbsp;stream)
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2265,7 +2265,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>rollWriterWithRetries</h4>
-<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.948">rollWriterWithRetries</a>()</pre>
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.950">rollWriterWithRetries</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2275,7 +2275,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tryRollWriter</h4>
-<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.966">tryRollWriter</a>()</pre>
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.968">tryRollWriter</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2285,7 +2285,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMillisToNextPeriodicRoll</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.975">getMillisToNextPeriodicRoll</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.977">getMillisToNextPeriodicRoll</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2295,7 +2295,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMillisFromLastRoll</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.982">getMillisFromLastRoll</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.984">getMillisFromLastRoll</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2305,7 +2305,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>periodicRollForTesting</h4>
-<pre>void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.986">periodicRollForTesting</a>()
+<pre>void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.988">periodicRollForTesting</a>()
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2320,7 +2320,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>rollWriterForTesting</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.995">rollWriterForTesting</a>()
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.997">rollWriterForTesting</a>()
                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2335,7 +2335,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeInactiveLogsForTesting</h4>
-<pre>void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1004">removeInactiveLogsForTesting</a>()
+<pre>void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1006">removeInactiveLogsForTesting</a>()
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2350,7 +2350,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>periodicRoll</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1013">periodicRoll</a>()
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1015">periodicRoll</a>()
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2365,7 +2365,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>rollWriter</h4>
-<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1034">rollWriter</a>()
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1036">rollWriter</a>()
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2380,7 +2380,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>rollWriter</h4>
-<pre>boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1057">rollWriter</a>(long&nbsp;logId)
+<pre>boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1059">rollWriter</a>(long&nbsp;logId)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2395,7 +2395,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>closeCurrentLogStream</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1134">closeCurrentLogStream</a>(boolean&nbsp;abort)</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1142">closeCurrentLogStream</a>(boolean&nbsp;abort)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2405,7 +2405,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeInactiveLogs</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1165">removeInactiveLogs</a>()
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1173">removeInactiveLogs</a>()
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2420,7 +2420,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>buildHoldingCleanupTracker</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1178">buildHoldingCleanupTracker</a>()</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1186">buildHoldingCleanupTracker</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2430,7 +2430,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeAllLogs</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1212">removeAllLogs</a>(long&nbsp;lastLogId,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1220">removeAllLogs</a>(long&nbsp;lastLogId,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;why)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Remove all logs with logId <= <code>lastLogId</code>.</div>
@@ -2442,7 +2442,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeLogFile</h4>
-<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1234">removeLogFile</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&nbsp;log,
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1242">removeLogFile</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&nbsp;log,
                               org.apache.hadoop.fs.Path&nbsp;walArchiveDir)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
@@ -2453,7 +2453,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getWALDir</h4>
-<pre>public&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1251">getWALDir</a>()</pre>
+<pre>public&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1259">getWALDir</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2463,7 +2463,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getWalArchiveDir</h4>
-<pre>org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1255">getWalArchiveDir</a>()</pre>
+<pre>org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1263">getWalArchiveDir</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2473,7 +2473,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getFileSystem</h4>
-<pre>public&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1259">getFileSystem</a>()</pre>
+<pre>public&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1267">getFileSystem</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2483,7 +2483,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getLogFilePath</h4>
-<pre>protected&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1263">getLogFilePath</a>(long&nbsp;logId)
+<pre>protected&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1271">getLogFilePath</a>(long&nbsp;logId)
                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2498,7 +2498,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getLogIdFromName</h4>
-<pre>private static&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1267">getLogIdFromName</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>private static&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1275">getLogIdFromName</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 </li>
 </ul>
@@ -2508,7 +2508,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getLogFiles</h4>
-<pre>private&nbsp;org.apache.hadoop.fs.FileStatus[]&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1291">getLogFiles</a>()
+<pre>private&nbsp;org.apache.hadoop.fs.FileStatus[]&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1299">getLogFiles</a>()
                                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <dl>
@@ -2523,7 +2523,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaxLogId</h4>
-<pre>private static&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1307">getMaxLogId</a>(org.apache.hadoop.fs.FileStatus[]&nbsp;logFiles)</pre>
+<pre>private static&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1315">getMaxLogId</a>(org.apache.hadoop.fs.FileStatus[]&nbsp;logFiles)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Make sure that the file set are gotten by calling <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#getLogFiles--"><code>getLogFiles()</code></a>, where we will sort
  the file set by log id.</div>
@@ -2539,7 +2539,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>initOldLogs</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1319">initOldLogs</a>(org.apache.hadoop.fs.FileStatus[]&nbsp;logFiles)
+<pre>private&nbsp;long&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1327">initOldLogs</a>(org.apache.hadoop.fs.FileStatus[]&nbsp;logFiles)
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Make sure that the file set are gotten by calling <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#getLogFiles--"><code>getLogFiles()</code></a>, where we will sort
@@ -2558,7 +2558,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>initTrackerFromOldLogs</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1345">initTrackerFromOldLogs</a>()</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1353">initTrackerFromOldLogs</a>()</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">If last log's tracker is not null, use it as <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#storeTracker"><code>storeTracker</code></a>. Otherwise, set storeTracker
  as partial, and let <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFormatReader.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal"><code>ProcedureWALFormatReader</code></a> rebuild it using entries in the log.</div>
@@ -2570,7 +2570,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>initOldLog</h4>
-<pre>private&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1361">initOldLog</a>(org.apache.hadoop.fs.FileStatus&nbsp;logFile,
+<pre>private&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureWALFile</a>&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1369">initOldLog</a>(org.apache.hadoop.fs.FileStatus&nbsp;logFile,
                                     org.apache.hadoop.fs.Path&nbsp;walArchiveDir)
                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
@@ -2587,7 +2587,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>main</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1399">main</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html#line.1407">main</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Parses a directory of WALs building up ProcedureState.
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.DeleteState.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.DeleteState.html
index d47e9b9..e092291 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.DeleteState.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.DeleteState.html
@@ -104,17 +104,17 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker.DeleteState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BitSetNode.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/BitSetNode.html#isDeleted-long-">isDeleted</a></span>(long&nbsp;procId)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker.DeleteState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureStoreTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html#isDeleted-long-">isDeleted</a></span>(long&nbsp;procId)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">If <a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html#partial"><code>ProcedureStoreTracker.partial</code></a> is false, returns state from the bitmap.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker.DeleteState</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BitSetNode.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/BitSetNode.html#isDeleted-long-">isDeleted</a></span>(long&nbsp;procId)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker.DeleteState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureStoreTracker.DeleteState.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.html
index 38e0fc6..acb582c 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/class-use/ProcedureStoreTracker.html
@@ -124,17 +124,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureWALFile.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html#tracker">tracker</a></span></code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureWALFormatReader.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFormatReader.html#tracker">tracker</a></span></code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Global tracker that will be used by the WALProcedureStore after load.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">ProcedureStoreTracker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ProcedureWALFile.</span><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.html#tracker">tracker</a></span></code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/package-tree.html b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/package-tree.html
index d094b12..a402ab9 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/store/wal/package-tree.html
@@ -133,8 +133,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">WALProcedureStore.PushType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">ProcedureStoreTracker.DeleteState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">WALProcedureStore.PushType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/util/class-use/DelayedUtil.DelayedWithTimeout.html b/devapidocs/org/apache/hadoop/hbase/procedure2/util/class-use/DelayedUtil.DelayedWithTimeout.html
index 056490b..2a06193 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/util/class-use/DelayedUtil.DelayedWithTimeout.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/util/class-use/DelayedUtil.DelayedWithTimeout.html
@@ -145,11 +145,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/DelayQueue.html?is-external=true" title="class or interface in java.util.concurrent">DelayQueue</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/DelayedUtil.DelayedWithTimeout.html" title="interface in org.apache.hadoop.hbase.procedure2.util">DelayedUtil.DelayedWithTimeout</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RemoteProcedureDispatcher.TimeoutExecutorThread.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.TimeoutExecutorThread.html#queue">queue</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TimeoutExecutorThread.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/TimeoutExecutorThread.html#queue">queue</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/DelayQueue.html?is-external=true" title="class or interface in java.util.concurrent">DelayQueue</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/util/DelayedUtil.DelayedWithTimeout.html" title="interface in org.apache.hadoop.hbase.procedure2.util">DelayedUtil.DelayedWithTimeout</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TimeoutExecutorThread.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/TimeoutExecutorThread.html#queue">queue</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RemoteProcedureDispatcher.TimeoutExecutorThread.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.TimeoutExecutorThread.html#queue">queue</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html b/devapidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
index 9002f19..9d2f35b 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
@@ -321,7 +321,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.52">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.57">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -341,7 +341,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.52">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.57">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/FileArchiverNotifier.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/FileArchiverNotifier.html
index d848225..6022446 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/FileArchiverNotifier.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/FileArchiverNotifier.html
@@ -132,15 +132,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
-   org.apache.hadoop.conf.Configuration&nbsp;conf,
-   org.apache.hadoop.fs.FileSystem&nbsp;fs,
-   <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
-<div class="block">Returns the <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactory.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
    org.apache.hadoop.conf.Configuration&nbsp;conf,
    org.apache.hadoop.fs.FileSystem&nbsp;fs,
@@ -148,6 +139,15 @@
 <div class="block">Creates or obtains a <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given args.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FileArchiverNotifierFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifierFactoryImpl.html#get-org.apache.hadoop.hbase.client.Connection-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.TableName-">get</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a>&nbsp;conn,
+   org.apache.hadoop.conf.Configuration&nbsp;conf,
+   org.apache.hadoop.fs.FileSystem&nbsp;fs,
+   <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
+<div class="block">Returns the <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>FileArchiverNotifier</code></a> instance for the given <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a>.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/quotas/FileArchiverNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">FileArchiverNotifier</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SnapshotQuotaObserverChore.html#getNotifierForTable-org.apache.hadoop.hbase.TableName-">getNotifierForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tn)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/MasterQuotaManager.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/MasterQuotaManager.html
index 0423225..dae0dcb 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/MasterQuotaManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/MasterQuotaManager.html
@@ -125,11 +125,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">MasterQuotaManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterQuotaManager--">getMasterQuotaManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterQuotaManager--">getMasterQuotaManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">MasterQuotaManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getMasterQuotaManager--">getMasterQuotaManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getMasterQuotaManager--">getMasterQuotaManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaFilter.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaFilter.html
index 2b70193..4f1c883 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaFilter.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaFilter.html
@@ -119,22 +119,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>
 <div class="block">List the quotas based on the filter.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaLimiter.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaLimiter.html
index 0bddb46..84fbde8 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaLimiter.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaLimiter.html
@@ -166,13 +166,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TimeBasedLimiter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TimeBasedLimiter.html#fromThrottle-org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Throttle-">fromThrottle</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Throttle&nbsp;throttle)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaLimiterFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiterFactory.html#fromThrottle-org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Throttle-">fromThrottle</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Throttle&nbsp;throttle)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TimeBasedLimiter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TimeBasedLimiter.html#fromThrottle-org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Throttle-">fromThrottle</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Throttle&nbsp;throttle)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NoopQuotaLimiter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopQuotaLimiter.html#get--">get</a></span>()</code>&nbsp;</td>
@@ -203,14 +203,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/UserQuotaState.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
-<div class="block">Return the limiter for the specified table associated with this quota.</div>
+<td class="colLast"><span class="typeNameLabel">QuotaCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaCache.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
+<div class="block">Returns the limiter associated to the specified table.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaLimiter.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaLimiter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QuotaCache.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaCache.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
-<div class="block">Returns the limiter associated to the specified table.</div>
+<td class="colLast"><span class="typeNameLabel">UserQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/UserQuotaState.html#getTableLimiter-org.apache.hadoop.hbase.TableName-">getTableLimiter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>
+<div class="block">Return the limiter for the specified table associated with this quota.</div>
 </td>
 </tr>
 <tr class="rowColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaSettings.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaSettings.html
index 225f4cb..8fb6052 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaSettings.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaSettings.html
@@ -119,22 +119,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>
 <div class="block">List the quotas based on the filter.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getQuota-org.apache.hadoop.hbase.quotas.QuotaFilter-">getQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaFilter.html" title="class in org.apache.hadoop.hbase.quotas">QuotaFilter</a>&nbsp;filter)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -152,22 +152,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>
 <div class="block">Apply the new quota settings.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#setQuota-org.apache.hadoop.hbase.quotas.QuotaSettings-">setQuota</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;quota)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -283,16 +283,16 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SpaceLimitSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceLimitSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>(package private) abstract <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>
 <div class="block">Merges the provided settings with <code>this</code> and returns a new settings
  object to the caller if the merged settings differ from the original.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SpaceLimitSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceLimitSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaRetriever.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaRetriever.html#next--">next</a></span>()</code>&nbsp;</td>
@@ -566,16 +566,16 @@
               org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas&nbsp;quotas)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">GlobalQuotaSettingsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/GlobalQuotaSettingsImpl.html#getQuotaSettings--">getQuotaSettings</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">GlobalQuotaSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/GlobalQuotaSettings.html#getQuotaSettings--">getQuotaSettings</a></span>()</code>
 <div class="block">Computes a list of QuotaSettings that present the complete quota state of the combination of
  this user, table, and/or namespace.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">GlobalQuotaSettingsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/GlobalQuotaSettingsImpl.html#getQuotaSettings--">getQuotaSettings</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaRetriever.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaRetriever.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
@@ -600,24 +600,24 @@
 <td class="colLast"><span class="typeNameLabel">GlobalQuotaSettingsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/GlobalQuotaSettingsImpl.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;other)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettingsFactory.QuotaGlobalsSettingsBypass.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettingsFactory.QuotaGlobalsSettingsBypass</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QuotaSettingsFactory.QuotaGlobalsSettingsBypass.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettingsFactory.QuotaGlobalsSettingsBypass.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SpaceLimitSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceLimitSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/ThrottleSettings.html" title="class in org.apache.hadoop.hbase.quotas">ThrottleSettings</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ThrottleSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ThrottleSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;other)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettingsFactory.QuotaGlobalsSettingsBypass.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettingsFactory.QuotaGlobalsSettingsBypass</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QuotaSettingsFactory.QuotaGlobalsSettingsBypass.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettingsFactory.QuotaGlobalsSettingsBypass.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>(package private) abstract <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>
 <div class="block">Merges the provided settings with <code>this</code> and returns a new settings
  object to the caller if the merged settings differ from the original.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SpaceLimitSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceLimitSettings.html#merge-org.apache.hadoop.hbase.quotas.QuotaSettings-">merge</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;newSettings)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html#validateQuotaTarget-org.apache.hadoop.hbase.quotas.QuotaSettings-">validateQuotaTarget</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html" title="class in org.apache.hadoop.hbase.quotas">QuotaSettings</a>&nbsp;mergee)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaState.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaState.html
index e81a364..1ab1ea1 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaState.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaState.html
@@ -216,14 +216,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">UserQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/UserQuotaState.html#update-org.apache.hadoop.hbase.quotas.QuotaState-">update</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaState.html" title="class in org.apache.hadoop.hbase.quotas">QuotaState</a>&nbsp;other)</code>
-<div class="block">Perform an update of the quota state based on the other quota state object.</div>
+<td class="colLast"><span class="typeNameLabel">QuotaState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaState.html#update-org.apache.hadoop.hbase.quotas.QuotaState-">update</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaState.html" title="class in org.apache.hadoop.hbase.quotas">QuotaState</a>&nbsp;other)</code>
+<div class="block">Perform an update of the quota info based on the other quota info object.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">QuotaState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaState.html#update-org.apache.hadoop.hbase.quotas.QuotaState-">update</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaState.html" title="class in org.apache.hadoop.hbase.quotas">QuotaState</a>&nbsp;other)</code>
-<div class="block">Perform an update of the quota info based on the other quota info object.</div>
+<td class="colLast"><span class="typeNameLabel">UserQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/UserQuotaState.html#update-org.apache.hadoop.hbase.quotas.QuotaState-">update</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaState.html" title="class in org.apache.hadoop.hbase.quotas">QuotaState</a>&nbsp;other)</code>
+<div class="block">Perform an update of the quota state based on the other quota state object.</div>
 </td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaType.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaType.html
index 94acd05..7c741ca 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaType.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/QuotaType.html
@@ -121,21 +121,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ThrottleSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ThrottleSettings.html#getQuotaType--">getQuotaType</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaSettingsFactory.QuotaGlobalsSettingsBypass.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettingsFactory.QuotaGlobalsSettingsBypass.html#getQuotaType--">getQuotaType</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">QuotaSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html#getQuotaType--">getQuotaType</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SpaceLimitSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceLimitSettings.html#getQuotaType--">getQuotaType</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ThrottleSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ThrottleSettings.html#getQuotaType--">getQuotaType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">QuotaSettings.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaSettings.html#getQuotaType--">getQuotaType</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas">QuotaType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">QuotaType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Returns the enum constant of this type with the specified name.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerRpcQuotaManager.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerRpcQuotaManager.html
index d9d8ad6..e070157 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerRpcQuotaManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerRpcQuotaManager.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">RegionServerRpcQuotaManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRegionServerRpcQuotaManager--">getRegionServerRpcQuotaManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRegionServerRpcQuotaManager--">getRegionServerRpcQuotaManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">RegionServerRpcQuotaManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRegionServerRpcQuotaManager--">getRegionServerRpcQuotaManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRegionServerRpcQuotaManager--">getRegionServerRpcQuotaManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">RegionServerRpcQuotaManager</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerSpaceQuotaManager.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerSpaceQuotaManager.html
index a02f27e..a6cc9cf 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerSpaceQuotaManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionServerSpaceQuotaManager.html
@@ -164,11 +164,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerSpaceQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">RegionServerSpaceQuotaManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRegionServerSpaceQuotaManager--">getRegionServerSpaceQuotaManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRegionServerSpaceQuotaManager--">getRegionServerSpaceQuotaManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerSpaceQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">RegionServerSpaceQuotaManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRegionServerSpaceQuotaManager--">getRegionServerSpaceQuotaManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRegionServerSpaceQuotaManager--">getRegionServerSpaceQuotaManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerSpaceQuotaManager.html" title="class in org.apache.hadoop.hbase.quotas">RegionServerSpaceQuotaManager</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSize.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSize.html
index f782dd0..1ee1fa4 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSize.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSize.html
@@ -133,18 +133,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
 <div class="block">Returns the size for the give region if one exists.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#getRegionSize-org.apache.hadoop.hbase.client.RegionInfo-">getRegionSize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSize.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html#incrementSize-long-">incrementSize</a></span>(long&nbsp;delta)</code>
@@ -153,18 +153,18 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>
 <div class="block">Removes the mapping for the given key, returning the value if one exists in the store.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#remove-org.apache.hadoop.hbase.client.RegionInfo-">remove</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSize.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html#setSize-long-">setSize</a></span>(long&nbsp;newSize)</code>
@@ -182,11 +182,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util">Map.Entry</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSize.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSize</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">NoOpRegionSizeStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSizeStore.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSizeStore.html
index 267756c..1226039 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSizeStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RegionSizeStore.html
@@ -197,14 +197,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#reportRegionSizesForQuotas-org.apache.hadoop.hbase.quotas.RegionSizeStore-">reportRegionSizesForQuotas</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;regionSizeStore)</code>
-<div class="block">Reports the given map of Regions and their size on the filesystem to the active Master.</div>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#reportRegionSizesForQuotas-org.apache.hadoop.hbase.quotas.RegionSizeStore-">reportRegionSizesForQuotas</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;sizeStore)</code>
+<div class="block">Reports the provided Region sizes hosted by this RegionServer to the active Master.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#reportRegionSizesForQuotas-org.apache.hadoop.hbase.quotas.RegionSizeStore-">reportRegionSizesForQuotas</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;sizeStore)</code>
-<div class="block">Reports the provided Region sizes hosted by this RegionServer to the active Master.</div>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#reportRegionSizesForQuotas-org.apache.hadoop.hbase.quotas.RegionSizeStore-">reportRegionSizesForQuotas</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;regionSizeStore)</code>
+<div class="block">Reports the given map of Regions and their size on the filesystem to the active Master.</div>
 </td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottleStorage.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottleStorage.html
index 95b6599..edd720f 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottleStorage.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottleStorage.html
@@ -140,11 +140,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottleStorage.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottleStorage</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html#rpcThrottleStorage">rpcThrottleStorage</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerRpcQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html#rpcThrottleStorage">rpcThrottleStorage</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottleStorage.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottleStorage</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerRpcQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html#rpcThrottleStorage">rpcThrottleStorage</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/MasterQuotaManager.html#rpcThrottleStorage">rpcThrottleStorage</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottlingException.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottlingException.html
index c63842c..9fdfc0c 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottlingException.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottlingException.html
@@ -104,30 +104,30 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ExceedOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ExceedOperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
+<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
           int&nbsp;numReads,
           int&nbsp;numScans)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
+<td class="colLast"><span class="typeNameLabel">ExceedOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ExceedOperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
           int&nbsp;numReads,
           int&nbsp;numScans)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">NoopOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/NoopOperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
+          int&nbsp;numReads,
+          int&nbsp;numScans)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">OperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
           int&nbsp;numReads,
           int&nbsp;numScans)</code>
 <div class="block">Checks if it is possible to execute the specified operation.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultOperationQuota.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/DefaultOperationQuota.html#checkQuota-int-int-int-">checkQuota</a></span>(int&nbsp;numWrites,
-          int&nbsp;numReads,
-          int&nbsp;numScans)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">TimeBasedLimiter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TimeBasedLimiter.html#checkQuota-long-long-long-long-long-long-">checkQuota</a></span>(long&nbsp;writeReqs,
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceLimitingException.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceLimitingException.html
index da38bf1..cb9aff3 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceLimitingException.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceLimitingException.html
@@ -136,7 +136,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisableTableViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/DisableTableViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MissingSnapshotViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -148,20 +148,20 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MissingSnapshotViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoInsertsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/NoInsertsViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoInsertsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/NoInsertsViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisableTableViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/DisableTableViolationPolicyEnforcement.html#check-org.apache.hadoop.hbase.client.Mutation-">check</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&nbsp;m)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/DefaultViolationPolicyEnforcement.html#computeBulkLoadSize-org.apache.hadoop.fs.FileSystem-java.util.List-">computeBulkLoadSize</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<td class="colLast"><span class="typeNameLabel">MissingSnapshotViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.html#computeBulkLoadSize-org.apache.hadoop.fs.FileSystem-java.util.List-">computeBulkLoadSize</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;paths)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">MissingSnapshotViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.html#computeBulkLoadSize-org.apache.hadoop.fs.FileSystem-java.util.List-">computeBulkLoadSize</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<td class="colLast"><span class="typeNameLabel">DefaultViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/policies/DefaultViolationPolicyEnforcement.html#computeBulkLoadSize-org.apache.hadoop.fs.FileSystem-java.util.List-">computeBulkLoadSize</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;paths)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaSnapshot.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaSnapshot.html
index ff3468f..7a39498 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaSnapshot.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaSnapshot.html
@@ -126,27 +126,27 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-java.lang.String-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-java.lang.String-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-java.lang.String-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getCurrentSpaceQuotaSnapshot-org.apache.hadoop.hbase.TableName-">getCurrentSpaceQuotaSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshot.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshot</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRegionServerSpaceQuotaSnapshots-org.apache.hadoop.hbase.ServerName-">getRegionServerSpaceQuotaSnapshots</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceViolationPolicyEnforcementFactory.html b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceViolationPolicyEnforcementFactory.html
index 2c13894..2d6d136 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceViolationPolicyEnforcementFactory.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceViolationPolicyEnforcementFactory.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcementFactory.html" title="class in org.apache.hadoop.hbase.quotas">SpaceViolationPolicyEnforcementFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ActivePolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ActivePolicyEnforcement.html#factory">factory</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerSpaceQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerSpaceQuotaManager.html#factory">factory</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcementFactory.html" title="class in org.apache.hadoop.hbase.quotas">SpaceViolationPolicyEnforcementFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerSpaceQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerSpaceQuotaManager.html#factory">factory</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ActivePolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/ActivePolicyEnforcement.html#factory">factory</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcementFactory.html" title="class in org.apache.hadoop.hbase.quotas">SpaceViolationPolicyEnforcementFactory</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html b/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
index 9f07f69..b862aab 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
@@ -240,12 +240,12 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">RpcThrottlingException.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/FlushType.html b/devapidocs/org/apache/hadoop/hbase/regionserver/FlushType.html
index 89cb39f..46c42cf 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/FlushType.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/FlushType.html
@@ -275,7 +275,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/FlushType.html#line.37">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/FlushType.html#line.34">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -295,7 +295,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/FlushType.html#line.37">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/FlushType.html#line.34">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/HMobStore.html b/devapidocs/org/apache/hadoop/hbase/regionserver/HMobStore.html
index ab2b6af..10c1f95 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/HMobStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/HMobStore.html
@@ -466,7 +466,7 @@
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></h3>
-<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#addChangedReaderObserver-org.apache.hadoop.hbase.regionserver.ChangedReadersObserver-">addChangedReaderObserver</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#areWritesEnabled--">areWritesEnabled</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#assertBulkLoadHFileOk-org.apache.hadoop.fs.Path-">assertBulkLoadHFileOk</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#bulkLoadHFile-byte:A-java.lang.String-org.apache.hadoop.fs.Path-">bulkLoadHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#bulkLoadHFile-org.apache.hadoop.hbase.regionserver.StoreFileInfo-">bulkLoadHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#cancelRequestedCompaction-org.apache.hadoop.hbase.regionserver.compactions.CompactionContext-">cancelRequestedCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#canSplit--">canSplit</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#close--">close</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#closeAndArchiveCompactedFiles--">closeAndArchiveCompactedFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#compact-org.apache.hadoop.hbase.regionserver.compactions.CompactionContext-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createCacheConf-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">createCacheConf</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createFlushContext-long-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">createFlushContext</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createStoreFileAndReader-org.apache.hadoop.fs.Path-">createStoreFileAndReader</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createWriterInTmp-long-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-boolean-boolean-boolean-boolean-">createWriterInTmp</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createWriterInTmp-long-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-boolean-boolean-boolean-boolean-long-java.lang.String-">createWriterInTmp</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#deleteChangedReaderObserver-org.apache.hadoop.hbase.regionserver.ChangedReadersObserver-">deleteChangedReaderObserver</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#deregisterChildren-org.apache.hadoop.hbase.conf.ConfigurationManager-">deregisterChildren</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#determineTTLFromFamily-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">determineTTLFromFamily</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#doCompaction-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.Collection-org.apache.hadoop.hbase.security.User-long-java.util.List-">doCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#finishCompactionRequest-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">finishCompactionRequest</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#flushCache-long-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushCache</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getAvgStoreFileAge--">getAvgStoreFileAge</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getBlockingFileCount--">getBlockingFileCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCacheConfig--">getCacheConfig</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getColumnFamilyDescriptor--">getColumnFamilyDescriptor</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getColumnFamilyName--">getColumnFamilyName</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedCellsCount--">getCompactedCellsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedCellsSize--">getCompactedCellsSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedFiles--">getCompactedFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedFilesCount--">getCompactedFilesCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactionCheckMultiplier--">getCompactionCheckMultiplier</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactionPressure--">getCompactionPressure</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactionProgress--">getCompactionProgress</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactPriority--">getCompactPriority</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getComparator--">getComparator</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCoprocessorHost--">getCoprocessorHost</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCurrentParallelPutCount--">getCurrentParallelPutCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getDataBlockEncoder--">getDataBlockEncoder</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFileSystem--">getFileSystem</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushableSize--">getFlushableSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushedCellsCount--">getFlushedCellsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushedCellsSize--">getFlushedCellsSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushedOutputFileSize--">getFlushedOutputFileSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getHFilesSize--">getHFilesSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getHRegion--">getHRegion</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getLastCompactSize--">getLastCompactSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMajorCompactedCellsCount--">getMajorCompactedCellsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMajorCompactedCellsSize--">getMajorCompactedCellsSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxCompactedStoreFileRefCount--">getMaxCompactedStoreFileRefCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxMemStoreTS--">getMaxMemStoreTS</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxSequenceId--">getMaxSequenceId</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxStoreFileAge--">getMaxStoreFileAge</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMemStoreFlushSize--">getMemStoreFlushSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMemstoreOnlyRowReadsCount--">getMemstoreOnlyRowReadsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMemStoreSize--">getMemStoreSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMinStoreFileAge--">getMinStoreFileAge</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMixedRowReadsCount--">getMixedRowReadsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getNumHFiles--">getNumHFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getNumReferenceFiles--">getNumReferenceFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getOffPeakHours--">getOffPeakHours</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getRegionFileSystem--">getRegionFileSystem</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getRegionInfo--">getRegionInfo</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanInfo--">getScanInfo</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanner-org.apache.hadoop.hbase.client.Scan-java.util.NavigableSet-long-">getScanner</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-boolean-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-byte:A-long-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-java.util.List-boolean-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-byte:A-long-boolean-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-java.util.List-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-boolean-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSize--">getSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSmallestReadPoint--">getSmallestReadPoint</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSnapshotSize--">getSnapshotSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSplitPoint--">getSplitPoint</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreContext--">getStoreContext</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreEngine--">getStoreEngine</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefiles--">getStorefiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefilesCount--">getStorefilesCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreFileSize-org.apache.hadoop.hbase.regionserver.HStoreFile-">getStoreFileSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefilesRootLevelIndexSize--">getStorefilesRootLevelIndexSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefilesSize--">getStorefilesSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreFileTtl--">getStoreFileTtl</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreRefCount--">getStoreRefCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreSizeUncompressed--">getStoreSizeUncompressed</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getTableName--">getTableName</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getTotalStaticBloomSize--">getTotalStaticBloomSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getTotalStaticIndexSize--">getTotalStaticIndexSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#hasReferences--">hasReferences</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#hasTooManyStoreFiles--">hasTooManyStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#heapSize--">heapSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#isPrimaryReplicaStore--">isPrimaryReplicaStore</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#isSloppyMemStore--">isSloppyMemStore</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveFileIntoPlace-org.apache.hadoop.fs.Path-">moveFileIntoPlace</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#needsCompaction--">needsCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#onConfigurationChange-org.apache.hadoop.conf.Configuration-">onConfigurationChange</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#postSnapshotOperation--">postSnapshotOperation</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preBulkLoadHFile-java.lang.String-long-">preBulkLoadHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preFlushSeqIDEstimation--">preFlushSeqIDEstimation</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preSnapshotOperation--">preSnapshotOperation</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#recreateScanners-java.util.List-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-boolean-">recreateScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFiles--">refreshStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFiles-java.util.Collection-">refreshStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreSizeAndTotalBytes--">refreshStoreSizeAndTotalBytes</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#registerChildren-org.apache.hadoop.hbase.conf.ConfigurationManager-">registerChildren</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#replaceStoreFiles-java.util.Collection-java.util.Collection-">replaceStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#replayCompactionMarker-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor-boolean-boolean-">replayCompactionMarker</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#reportArchivedFilesForQuota-java.util.List-java.util.List-">reportArchivedFilesForQuota</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction--">requestCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">requestCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setDataBlockEncoderInTest-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoderInTest</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setScanInfo-org.apache.hadoop.hbase.regionserver.ScanInfo-">setScanInfo</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#shouldPerformMajorCompaction--">shouldPerformMajorCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#snapshot--">snapshot</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#startReplayingFromWAL--">startReplayingFromWAL</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#stopReplayingFromWAL--">stopReplayingFromWAL</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#throttleCompaction-long-">throttleCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#timeOfOldestEdit--">timeOfOldestEdit</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#toString--">toString</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#triggerMajorCompaction--">triggerMajorCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#tryCommitRecoveredHFile-org.apache.hadoop.fs.Path-">tryCommitRecoveredHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateMetricsStore-boolean-">updateMetricsStore</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateSpaceQuotaAfterFileReplacement-org.apache.hadoop.hbase.quotas.RegionSizeStore-org.apache.hadoop.hbase.client.RegionInfo-java.util.Collection-java.util.Collection-">updateSpaceQuotaAfterFileReplacement</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#versionsToReturn-int-">versionsToReturn</a></code></li>
+<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#addChangedReaderObserver-org.apache.hadoop.hbase.regionserver.ChangedReadersObserver-">addChangedReaderObserver</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#areWritesEnabled--">areWritesEnabled</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#assertBulkLoadHFileOk-org.apache.hadoop.fs.Path-">assertBulkLoadHFileOk</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#bulkLoadHFile-byte:A-java.lang.String-org.apache.hadoop.fs.Path-">bulkLoadHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#bulkLoadHFile-org.apache.hadoop.hbase.regionserver.StoreFileInfo-">bulkLoadHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#cancelRequestedCompaction-org.apache.hadoop.hbase.regionserver.compactions.CompactionContext-">cancelRequestedCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#canSplit--">canSplit</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#close--">close</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#closeAndArchiveCompactedFiles--">closeAndArchiveCompactedFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#compact-org.apache.hadoop.hbase.regionserver.compactions.CompactionContext-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createCacheConf-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">createCacheConf</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createFlushContext-long-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">createFlushContext</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createStoreFileAndReader-org.apache.hadoop.fs.Path-">createStoreFileAndReader</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createWriterInTmp-long-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-boolean-boolean-boolean-boolean-">createWriterInTmp</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createWriterInTmp-long-org.apache.hadoop.hbase.io.compress.Compression.Algorithm-boolean-boolean-boolean-boolean-long-java.lang.String-">createWriterInTmp</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#deleteChangedReaderObserver-org.apache.hadoop.hbase.regionserver.ChangedReadersObserver-">deleteChangedReaderObserver</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#deregisterChildren-org.apache.hadoop.hbase.conf.ConfigurationManager-">deregisterChildren</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#determineTTLFromFamily-org.apache.hadoop.hbase.client.ColumnFamilyDescriptor-">determineTTLFromFamily</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#doCompaction-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.Collection-org.apache.hadoop.hbase.security.User-long-java.util.List-">doCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#finishCompactionRequest-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">finishCompactionRequest</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#flushCache-long-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushCache</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getAvgStoreFileAge--">getAvgStoreFileAge</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getBlockingFileCount--">getBlockingFileCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCacheConfig--">getCacheConfig</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getColumnFamilyDescriptor--">getColumnFamilyDescriptor</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getColumnFamilyName--">getColumnFamilyName</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedCellsCount--">getCompactedCellsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedCellsSize--">getCompactedCellsSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedFiles--">getCompactedFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedFilesCount--">getCompactedFilesCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactionCheckMultiplier--">getCompactionCheckMultiplier</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactionPressure--">getCompactionPressure</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactionProgress--">getCompactionProgress</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactPriority--">getCompactPriority</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getComparator--">getComparator</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCoprocessorHost--">getCoprocessorHost</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCurrentParallelPutCount--">getCurrentParallelPutCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getDataBlockEncoder--">getDataBlockEncoder</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFileSystem--">getFileSystem</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushableSize--">getFlushableSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushedCellsCount--">getFlushedCellsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushedCellsSize--">getFlushedCellsSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getFlushedOutputFileSize--">getFlushedOutputFileSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getHFilesSize--">getHFilesSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getHRegion--">getHRegion</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getLastCompactSize--">getLastCompactSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMajorCompactedCellsCount--">getMajorCompactedCellsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMajorCompactedCellsSize--">getMajorCompactedCellsSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxCompactedStoreFileRefCount--">getMaxCompactedStoreFileRefCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxMemStoreTS--">getMaxMemStoreTS</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxSequenceId--">getMaxSequenceId</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMaxStoreFileAge--">getMaxStoreFileAge</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMemStoreFlushSize--">getMemStoreFlushSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMemstoreOnlyRowReadsCount--">getMemstoreOnlyRowReadsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMemStoreSize--">getMemStoreSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMinStoreFileAge--">getMinStoreFileAge</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getMixedRowReadsCount--">getMixedRowReadsCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getNumHFiles--">getNumHFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getNumReferenceFiles--">getNumReferenceFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getOffPeakHours--">getOffPeakHours</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getRegionFileSystem--">getRegionFileSystem</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getRegionInfo--">getRegionInfo</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanInfo--">getScanInfo</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanner-org.apache.hadoop.hbase.client.Scan-java.util.NavigableSet-long-">getScanner</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-boolean-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-byte:A-long-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-java.util.List-boolean-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-byte:A-long-boolean-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getScanners-java.util.List-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-boolean-">getScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSize--">getSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSmallestReadPoint--">getSmallestReadPoint</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSnapshotSize--">getSnapshotSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSplitPoint--">getSplitPoint</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreContext--">getStoreContext</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreEngine--">getStoreEngine</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefiles--">getStorefiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefilesCount--">getStorefilesCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreFileSize-org.apache.hadoop.hbase.regionserver.HStoreFile-">getStoreFileSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefilesRootLevelIndexSize--">getStorefilesRootLevelIndexSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefilesSize--">getStorefilesSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreFileTtl--">getStoreFileTtl</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreRefCount--">getStoreRefCount</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStoreSizeUncompressed--">getStoreSizeUncompressed</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getTableName--">getTableName</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getTotalStaticBloomSize--">getTotalStaticBloomSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getTotalStaticIndexSize--">getTotalStaticIndexSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#hasReferences--">hasReferences</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#hasTooManyStoreFiles--">hasTooManyStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#heapSize--">heapSize</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#isPrimaryReplicaStore--">isPrimaryReplicaStore</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#isSloppyMemStore--">isSloppyMemStore</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#needsCompaction--">needsCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#onConfigurationChange-org.apache.hadoop.conf.Configuration-">onConfigurationChange</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#postSnapshotOperation--">postSnapshotOperation</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preBulkLoadHFile-java.lang.String-long-">preBulkLoadHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preFlushSeqIDEstimation--">preFlushSeqIDEstimation</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preSnapshotOperation--">preSnapshotOperation</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#recreateScanners-java.util.List-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-boolean-">recreateScanners</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFiles--">refreshStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFiles-java.util.Collection-">refreshStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreSizeAndTotalBytes--">refreshStoreSizeAndTotalBytes</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#registerChildren-org.apache.hadoop.hbase.conf.ConfigurationManager-">registerChildren</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#replaceStoreFiles-java.util.Collection-java.util.Collection-">replaceStoreFiles</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#replayCompactionMarker-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor-boolean-boolean-">replayCompactionMarker</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#reportArchivedFilesForQuota-java.util.List-java.util.List-">reportArchivedFilesForQuota</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction--">requestCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">requestCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setDataBlockEncoderInTest-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoderInTest</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setScanInfo-org.apache.hadoop.hbase.regionserver.ScanInfo-">setScanInfo</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#shouldPerformMajorCompaction--">shouldPerformMajorCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#snapshot--">snapshot</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#startReplayingFromWAL--">startReplayingFromWAL</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#stopReplayingFromWAL--">stopReplayingFromWAL</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#throttleCompaction-long-">throttleCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#timeOfOldestEdit--">timeOfOldestEdit</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#toString--">toString</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#triggerMajorCompaction--">triggerMajorCompaction</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#tryCommitRecoveredHFile-org.apache.hadoop.fs.Path-">tryCommitRecoveredHFile</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateMetricsStore-boolean-">updateMetricsStore</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateSpaceQuotaAfterFileReplacement-org.apache.hadoop.hbase.quotas.RegionSizeStore-org.apache.hadoop.hbase.client.RegionInfo-java.util.Collection-java.util.Collection-">updateSpaceQuotaAfterFileReplacement</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a>, <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#versionsToReturn-int-">versionsToReturn</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html
index 1893949..965388e 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html
@@ -260,7 +260,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver">HRegion.FlushResult.Result</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html#line.114">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver">HRegion.FlushResult.Result</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html#line.447">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -280,7 +280,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver">HRegion.FlushResult.Result</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html#line.114">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver">HRegion.FlushResult.Result</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html#line.447">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html b/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html
index cdd8bda..2fd5328 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html
@@ -117,7 +117,7 @@
 </dl>
 <hr>
 <br>
-<pre>private final class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2305">HStore.StoreFlusherImpl</a>
+<pre>private final class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2304">HStore.StoreFlusherImpl</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
 implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFlushContext</a></pre>
 </li>
@@ -279,7 +279,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tracker</h4>
-<pre>private final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2307">tracker</a></pre>
+<pre>private final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2306">tracker</a></pre>
 </li>
 </ul>
 <a name="cacheFlushSeqNum">
@@ -288,7 +288,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>cacheFlushSeqNum</h4>
-<pre>private final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2308">cacheFlushSeqNum</a></pre>
+<pre>private final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2307">cacheFlushSeqNum</a></pre>
 </li>
 </ul>
 <a name="snapshot">
@@ -297,7 +297,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>snapshot</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2309">snapshot</a></pre>
+<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2308">snapshot</a></pre>
 </li>
 </ul>
 <a name="tempFiles">
@@ -306,7 +306,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tempFiles</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2310">tempFiles</a></pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2309">tempFiles</a></pre>
 </li>
 </ul>
 <a name="committedFiles">
@@ -315,7 +315,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>committedFiles</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2311">committedFiles</a></pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2310">committedFiles</a></pre>
 </li>
 </ul>
 <a name="cacheFlushCount">
@@ -324,7 +324,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>cacheFlushCount</h4>
-<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2312">cacheFlushCount</a></pre>
+<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2311">cacheFlushCount</a></pre>
 </li>
 </ul>
 <a name="cacheFlushSize">
@@ -333,7 +333,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>cacheFlushSize</h4>
-<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2313">cacheFlushSize</a></pre>
+<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2312">cacheFlushSize</a></pre>
 </li>
 </ul>
 <a name="outputFileSize">
@@ -342,7 +342,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>outputFileSize</h4>
-<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2314">outputFileSize</a></pre>
+<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2313">outputFileSize</a></pre>
 </li>
 </ul>
 </li>
@@ -359,7 +359,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>StoreFlusherImpl</h4>
-<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2316">StoreFlusherImpl</a>(long&nbsp;cacheFlushSeqNum,
+<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2315">StoreFlusherImpl</a>(long&nbsp;cacheFlushSeqNum,
                          <a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</pre>
 </li>
 </ul>
@@ -377,7 +377,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>prepare</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2326">prepare</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2325">prepare</a>()</pre>
 <div class="block">This is not thread safe. The caller should have a lock on the region or the store.
  If necessary, the lock can be added with the patch provided in HBASE-10087</div>
 <dl>
@@ -394,7 +394,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>flushCache</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2336">flushCache</a>(<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2335">flushCache</a>(<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html#flushCache-org.apache.hadoop.hbase.monitoring.MonitoredTask-">StoreFlushContext</a></code></span></div>
 <div class="block">Flush the cache (create the new store file)
@@ -415,7 +415,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>commit</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2345">commit</a>(<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2344">commit</a>(<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html#commit-org.apache.hadoop.hbase.monitoring.MonitoredTask-">StoreFlushContext</a></code></span></div>
 <div class="block">Commit the flush - add the store file to the store and clear the
@@ -440,7 +440,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getOutputFileSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2388">getOutputFileSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2376">getOutputFileSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html#getOutputFileSize--">getOutputFileSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFlushContext</a></code></dd>
@@ -455,7 +455,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCommittedFiles</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2393">getCommittedFiles</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2381">getCommittedFiles</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html#getCommittedFiles--">StoreFlushContext</a></code></span></div>
 <div class="block">Returns the newly committed files from the flush. Called only if commit returns true</div>
 <dl>
@@ -472,7 +472,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>replayFlush</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2405">replayFlush</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;fileNames,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2393">replayFlush</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;fileNames,
                         boolean&nbsp;dropMemstoreSnapshot)
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Similar to commit, but called in secondary region replicas for replaying the
@@ -495,7 +495,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>abort</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2436">abort</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html#line.2424">abort</a>()
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Abort the snapshot preparation. Drops the snapshot if any.</div>
 <dl>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.html b/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.html
index 004f930..2f35ce5 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/HStore.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":9,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":9,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":10,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10,"i112":10,"i113":10,"i114":10,"i115":10,"i116":10,"i117":10,"i118":10,"i119":10,"i120":10,"i121":10,"i122":10,"i123":10,"i124":10,"i125":10,"i126":10,"i127":10,"i128":10,"i129":10,"i130":10,"i131":10,"i132":10,"i133":10,"i134":10,"i135":10,"i136":10,"i137":10,"i138":10,"i139":10,"i140":10,"i141":10,"i142":10,"i143":10,"i144":10,"i145":10,"i146":10,"i147":10,"i148":10,"i149":10,"i150":10,"i151":10,"i152":10,"i153":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":9,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":9,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":10,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10,"i112":10,"i113":10,"i114":10,"i115":10,"i116":10,"i117":10,"i118":10,"i119":10,"i120":10,"i121":10,"i122":10,"i123":10,"i124":10,"i125":10,"i126":10,"i127":10,"i128":10,"i129":10,"i130":10,"i131":10,"i132":10,"i133":10,"i134":10,"i135":10,"i136":10,"i137":10,"i138":10,"i139":10,"i140":10,"i141":10,"i142":10,"i143":10,"i144":10,"i145":10,"i146":10,"i147":10,"i148":10,"i149":10,"i150":10,"i151":10};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -486,10 +486,11 @@
 </td>
 </tr>
 <tr id="i15" class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#commitFile-org.apache.hadoop.fs.Path-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-">commitFile</a></span>(org.apache.hadoop.fs.Path&nbsp;path,
-          long&nbsp;logCacheFlushId,
-          <a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#commitStoreFiles-java.util.List-boolean-">commitStoreFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;files,
+                boolean&nbsp;validate)</code>
+<div class="block">Commit the given <code>files</code>.</div>
+</td>
 </tr>
 <tr id="i16" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
@@ -995,63 +996,53 @@
 </td>
 </tr>
 <tr id="i112" class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveCompactedFilesIntoPlace-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.List-org.apache.hadoop.hbase.security.User-">moveCompactedFilesIntoPlace</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
-                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles,
-                           <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
-<tr id="i113" class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveFileIntoPlace-org.apache.hadoop.fs.Path-">moveFileIntoPlace</a></span>(org.apache.hadoop.fs.Path&nbsp;newFile)</code>&nbsp;</td>
-</tr>
-<tr id="i114" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#needsCompaction--">needsCompaction</a></span>()</code>
 <div class="block">See if there's too much store files in this store</div>
 </td>
 </tr>
-<tr id="i115" class="rowColor">
+<tr id="i113" class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#notifyChangedReadersObservers-java.util.List-">notifyChangedReadersObservers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</code>
 <div class="block">Notify all observers that set of Readers has changed.</div>
 </td>
 </tr>
-<tr id="i116" class="altColor">
+<tr id="i114" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#onConfigurationChange-org.apache.hadoop.conf.Configuration-">onConfigurationChange</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
 <div class="block">This method would be called by the <a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf"><code>ConfigurationManager</code></a>
  object when the <code>Configuration</code> object is reloaded from disk.</div>
 </td>
 </tr>
-<tr id="i117" class="rowColor">
+<tr id="i115" class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#openStoreFiles-java.util.Collection-boolean-">openStoreFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;files,
               boolean&nbsp;warmup)</code>&nbsp;</td>
 </tr>
-<tr id="i118" class="altColor">
+<tr id="i116" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#postSnapshotOperation--">postSnapshotOperation</a></span>()</code>
 <div class="block">Perform tasks needed after the completion of snapshot operation.</div>
 </td>
 </tr>
-<tr id="i119" class="rowColor">
+<tr id="i117" class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preBulkLoadHFile-java.lang.String-long-">preBulkLoadHFile</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;srcPathStr,
                 long&nbsp;seqNum)</code>
 <div class="block">This method should only be called from Region.</div>
 </td>
 </tr>
-<tr id="i120" class="altColor">
+<tr id="i118" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preFlushSeqIDEstimation--">preFlushSeqIDEstimation</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i121" class="rowColor">
+<tr id="i119" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#preSnapshotOperation--">preSnapshotOperation</a></span>()</code>
 <div class="block">Sets the store up for a region level snapshot operation.</div>
 </td>
 </tr>
-<tr id="i122" class="altColor">
+<tr id="i120" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#recreateScanners-java.util.List-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-boolean-byte:A-boolean-long-boolean-">recreateScanners</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;currentFileScanners,
                 boolean&nbsp;cacheBlocks,
@@ -1067,20 +1058,20 @@
 <div class="block">Recreates the scanners on the current list of active store file scanners</div>
 </td>
 </tr>
-<tr id="i123" class="rowColor">
+<tr id="i121" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFiles--">refreshStoreFiles</a></span>()</code>
 <div class="block">Checks the underlying store files, and opens the files that have not been opened, and removes
  the store file readers for store files no longer available.</div>
 </td>
 </tr>
-<tr id="i124" class="altColor">
+<tr id="i122" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFiles-java.util.Collection-">refreshStoreFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;newFiles)</code>
 <div class="block">Replaces the store files that the store has with the given files.</div>
 </td>
 </tr>
-<tr id="i125" class="rowColor">
+<tr id="i123" class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreFilesInternal-java.util.Collection-">refreshStoreFilesInternal</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;newFiles)</code>
 <div class="block">Checks the underlying store files, and opens the files that  have not
@@ -1088,35 +1079,35 @@
  available.</div>
 </td>
 </tr>
-<tr id="i126" class="altColor">
+<tr id="i124" class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#refreshStoreSizeAndTotalBytes--">refreshStoreSizeAndTotalBytes</a></span>()</code>
 <div class="block">Update counts.</div>
 </td>
 </tr>
-<tr id="i127" class="rowColor">
+<tr id="i125" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#registerChildren-org.apache.hadoop.hbase.conf.ConfigurationManager-">registerChildren</a></span>(<a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf">ConfigurationManager</a>&nbsp;manager)</code>
 <div class="block">Needs to be called to register the children to the manager.</div>
 </td>
 </tr>
-<tr id="i128" class="altColor">
+<tr id="i126" class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#removeCompactedfiles-java.util.Collection-boolean-">removeCompactedfiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedfiles,
                     boolean&nbsp;evictOnClose)</code>
 <div class="block">Archives and removes the compacted files</div>
 </td>
 </tr>
-<tr id="i129" class="rowColor">
+<tr id="i127" class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#removeUnneededFiles--">removeUnneededFiles</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i130" class="altColor">
+<tr id="i128" class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#replaceStoreFiles-java.util.Collection-java.util.Collection-">replaceStoreFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;result)</code>&nbsp;</td>
 </tr>
-<tr id="i131" class="rowColor">
+<tr id="i129" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#replayCompactionMarker-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor-boolean-boolean-">replayCompactionMarker</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor&nbsp;compaction,
                       boolean&nbsp;pickCompactionFiles,
@@ -1124,90 +1115,90 @@
 <div class="block">Call to complete a compaction.</div>
 </td>
 </tr>
-<tr id="i132" class="altColor">
+<tr id="i130" class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#reportArchivedFilesForQuota-java.util.List-java.util.List-">reportArchivedFilesForQuota</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFile.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFile</a>&gt;&nbsp;archivedFiles,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;fileSizes)</code>&nbsp;</td>
 </tr>
-<tr id="i133" class="rowColor">
+<tr id="i131" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction--">requestCompaction</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i134" class="altColor">
+<tr id="i132" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">requestCompaction</a></span>(int&nbsp;priority,
                  <a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionLifeCycleTracker</a>&nbsp;tracker,
                  <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr id="i135" class="rowColor">
+<tr id="i133" class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setDataBlockEncoderInTest-org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder-">setDataBlockEncoderInTest</a></span>(<a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileDataBlockEncoder</a>&nbsp;blockEncoder)</code>
 <div class="block">Should be used only in tests.</div>
 </td>
 </tr>
-<tr id="i136" class="altColor">
+<tr id="i134" class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setScanInfo-org.apache.hadoop.hbase.regionserver.ScanInfo-">setScanInfo</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a>&nbsp;scanInfo)</code>
 <div class="block">Set scan info, used by test</div>
 </td>
 </tr>
-<tr id="i137" class="rowColor">
+<tr id="i135" class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#setStoragePolicyFromFileName-java.util.List-">setStoragePolicyFromFileName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles)</code>&nbsp;</td>
 </tr>
-<tr id="i138" class="altColor">
+<tr id="i136" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#shouldPerformMajorCompaction--">shouldPerformMajorCompaction</a></span>()</code>
 <div class="block">Tests whether we should run a major compaction.</div>
 </td>
 </tr>
-<tr id="i139" class="rowColor">
+<tr id="i137" class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#snapshot--">snapshot</a></span>()</code>
 <div class="block">Snapshot this stores memstore.</div>
 </td>
 </tr>
-<tr id="i140" class="altColor">
+<tr id="i138" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#startReplayingFromWAL--">startReplayingFromWAL</a></span>()</code>
 <div class="block">This message intends to inform the MemStore that next coming updates
  are going to be part of the replaying edits from WAL</div>
 </td>
 </tr>
-<tr id="i141" class="rowColor">
+<tr id="i139" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#stopReplayingFromWAL--">stopReplayingFromWAL</a></span>()</code>
 <div class="block">This message intends to inform the MemStore that the replaying edits from WAL
  are done</div>
 </td>
 </tr>
-<tr id="i142" class="altColor">
+<tr id="i140" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#throttleCompaction-long-">throttleCompaction</a></span>(long&nbsp;compactionSize)</code>&nbsp;</td>
 </tr>
-<tr id="i143" class="rowColor">
+<tr id="i141" class="rowColor">
 <td class="colFirst"><code>long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#timeOfOldestEdit--">timeOfOldestEdit</a></span>()</code>
 <div class="block">When was the last edit done in the memstore</div>
 </td>
 </tr>
-<tr id="i144" class="altColor">
+<tr id="i142" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#toString--">toString</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i145" class="rowColor">
+<tr id="i143" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#triggerMajorCompaction--">triggerMajorCompaction</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i146" class="altColor">
+<tr id="i144" class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#tryCommitRecoveredHFile-org.apache.hadoop.fs.Path-">tryCommitRecoveredHFile</a></span>(org.apache.hadoop.fs.Path&nbsp;path)</code>&nbsp;</td>
 </tr>
-<tr id="i147" class="rowColor">
+<tr id="i145" class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateMetricsStore-boolean-">updateMetricsStore</a></span>(boolean&nbsp;memstoreRead)</code>&nbsp;</td>
 </tr>
-<tr id="i148" class="altColor">
+<tr id="i146" class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateSpaceQuotaAfterFileReplacement-org.apache.hadoop.hbase.quotas.RegionSizeStore-org.apache.hadoop.hbase.client.RegionInfo-java.util.Collection-java.util.Collection-">updateSpaceQuotaAfterFileReplacement</a></span>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;sizeStore,
                                     <a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
@@ -1217,14 +1208,14 @@
  and adding in the size for new files.</div>
 </td>
 </tr>
-<tr id="i149" class="rowColor">
+<tr id="i147" class="rowColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#updateStorefiles-java.util.List-long-">updateStorefiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
                 long&nbsp;snapshotId)</code>
 <div class="block">Change storeFiles adding into place the Reader produced by this new flush.</div>
 </td>
 </tr>
-<tr id="i150" class="altColor">
+<tr id="i148" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
       long&nbsp;readpoint,
@@ -1232,17 +1223,17 @@
 <div class="block">Adds or replaces the specified KeyValues.</div>
 </td>
 </tr>
-<tr id="i151" class="rowColor">
+<tr id="i149" class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#validateStoreFile-org.apache.hadoop.fs.Path-">validateStoreFile</a></span>(org.apache.hadoop.fs.Path&nbsp;path)</code>
 <div class="block">Validates a store file by opening and closing it.</div>
 </td>
 </tr>
-<tr id="i152" class="altColor">
+<tr id="i150" class="altColor">
 <td class="colFirst"><code>(package private) int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#versionsToReturn-int-">versionsToReturn</a></span>(int&nbsp;wantedVersions)</code>&nbsp;</td>
 </tr>
-<tr id="i153" class="rowColor">
+<tr id="i151" class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#writeCompactionWalRecord-java.util.Collection-java.util.Collection-">writeCompactionWalRecord</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacted,
                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newFiles)</code>
@@ -1728,7 +1719,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>FIXED_OVERHEAD</h4>
-<pre>public static final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2464">FIXED_OVERHEAD</a></pre>
+<pre>public static final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2452">FIXED_OVERHEAD</a></pre>
 </li>
 </ul>
 <a name="DEEP_OVERHEAD">
@@ -1737,7 +1728,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEEP_OVERHEAD</h4>
-<pre>public static final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2466">DEEP_OVERHEAD</a></pre>
+<pre>public static final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2454">DEEP_OVERHEAD</a></pre>
 </li>
 </ul>
 </li>
@@ -2434,21 +2425,24 @@
 </dl>
 </li>
 </ul>
-<a name="commitFile-org.apache.hadoop.fs.Path-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-">
+<a name="commitStoreFiles-java.util.List-boolean-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>commitFile</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1090">commitFile</a>(org.apache.hadoop.fs.Path&nbsp;path,
-                              long&nbsp;logCacheFlushId,
-                              <a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)
-                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<h4>commitStoreFiles</h4>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1094">commitStoreFiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;files,
+                                          boolean&nbsp;validate)
+                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Commit the given <code>files</code>.
+ <p/>
+ We will move the file into data directory, and open it.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>path</code> - The pathname of the tmp file into which the store was flushed</dd>
+<dd><code>files</code> - the files want to commit</dd>
+<dd><code>validate</code> - whether to validate the store files</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>store file created.</dd>
+<dd>the committed store files</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
 </dl>
@@ -2460,7 +2454,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createWriterInTmp</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1110">createWriterInTmp</a>(long&nbsp;maxKeyCount,
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1127">createWriterInTmp</a>(long&nbsp;maxKeyCount,
                                          <a href="../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a>&nbsp;compression,
                                          boolean&nbsp;isCompaction,
                                          boolean&nbsp;includeMVCCReadpoint,
@@ -2479,7 +2473,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createWriterInTmp</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1126">createWriterInTmp</a>(long&nbsp;maxKeyCount,
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1143">createWriterInTmp</a>(long&nbsp;maxKeyCount,
                                          <a href="../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a>&nbsp;compression,
                                          boolean&nbsp;isCompaction,
                                          boolean&nbsp;includeMVCCReadpoint,
@@ -2507,7 +2501,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createFileContext</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1188">createFileContext</a>(<a href="../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a>&nbsp;compression,
+<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1205">createFileContext</a>(<a href="../../../../../org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress">Compression.Algorithm</a>&nbsp;compression,
                                        boolean&nbsp;includeMVCCReadpoint,
                                        boolean&nbsp;includesTag,
                                        <a href="../../../../../org/apache/hadoop/hbase/io/crypto/Encryption.Context.html" title="class in org.apache.hadoop.hbase.io.crypto">Encryption.Context</a>&nbsp;encryptionContext)</pre>
@@ -2519,7 +2513,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTotalSize</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1213">getTotalSize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</pre>
+<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1230">getTotalSize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</pre>
 </li>
 </ul>
 <a name="updateStorefiles-java.util.List-long-">
@@ -2528,7 +2522,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>updateStorefiles</h4>
-<pre>private&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1222">updateStorefiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1239">updateStorefiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
                                  long&nbsp;snapshotId)
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Change storeFiles adding into place the Reader produced by this new flush.</div>
@@ -2548,7 +2542,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>notifyChangedReadersObservers</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1252">notifyChangedReadersObservers</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1269">notifyChangedReadersObservers</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Notify all observers that set of Readers has changed.</div>
 <dl>
@@ -2563,7 +2557,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getScanners</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1276">getScanners</a>(boolean&nbsp;cacheBlocks,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1293">getScanners</a>(boolean&nbsp;cacheBlocks,
                                          boolean&nbsp;isGet,
                                          boolean&nbsp;usePread,
                                          boolean&nbsp;isCompaction,
@@ -2595,7 +2589,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getScanners</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1296">getScanners</a>(boolean&nbsp;cacheBlocks,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1313">getScanners</a>(boolean&nbsp;cacheBlocks,
                                          boolean&nbsp;usePread,
                                          boolean&nbsp;isCompaction,
                                          <a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher</a>&nbsp;matcher,
@@ -2630,7 +2624,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>clearAndClose</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1330">clearAndClose</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;scanners)</pre>
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1347">clearAndClose</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;scanners)</pre>
 </li>
 </ul>
 <a name="getScanners-java.util.List-boolean-boolean-boolean-boolean-org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher-byte:A-byte:A-long-boolean-">
@@ -2639,7 +2633,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getScanners</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1354">getScanners</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1371">getScanners</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files,
                                          boolean&nbsp;cacheBlocks,
                                          boolean&nbsp;isGet,
                                          boolean&nbsp;usePread,
@@ -2676,7 +2670,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getScanners</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1378">getScanners</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1395">getScanners</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files,
                                          boolean&nbsp;cacheBlocks,
                                          boolean&nbsp;usePread,
                                          boolean&nbsp;isCompaction,
@@ -2716,7 +2710,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>addChangedReaderObserver</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1411">addChangedReaderObserver</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">ChangedReadersObserver</a>&nbsp;o)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1428">addChangedReaderObserver</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">ChangedReadersObserver</a>&nbsp;o)</pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>o</code> - Observer who wants to know about changes in set of Readers</dd>
@@ -2729,7 +2723,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteChangedReaderObserver</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1418">deleteChangedReaderObserver</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">ChangedReadersObserver</a>&nbsp;o)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1435">deleteChangedReaderObserver</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">ChangedReadersObserver</a>&nbsp;o)</pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>o</code> - Observer no longer interested in changes in set of Readers.</dd>
@@ -2742,7 +2736,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1469">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&nbsp;compaction,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1486">compact</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&nbsp;compaction,
                                 <a href="../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
                                 <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -2799,7 +2793,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>doCompaction</h4>
-<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1499">doCompaction</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
+<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1516">doCompaction</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
                                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact,
                                         <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
                                         long&nbsp;compactionStartTime,
@@ -2817,7 +2811,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setStoragePolicyFromFileName</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1535">setStoragePolicyFromFileName</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles)
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1557">setStoragePolicyFromFileName</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles)
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -2825,43 +2819,13 @@
 </dl>
 </li>
 </ul>
-<a name="moveCompactedFilesIntoPlace-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.List-org.apache.hadoop.hbase.security.User-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>moveCompactedFilesIntoPlace</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1545">moveCompactedFilesIntoPlace</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
-                                                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles,
-                                                     <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)
-                                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
-<dl>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
-</dl>
-</li>
-</ul>
-<a name="moveFileIntoPlace-org.apache.hadoop.fs.Path-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>moveFileIntoPlace</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1561">moveFileIntoPlace</a>(org.apache.hadoop.fs.Path&nbsp;newFile)
-                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
-<dl>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
-</dl>
-</li>
-</ul>
 <a name="writeCompactionWalRecord-java.util.Collection-java.util.Collection-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>writeCompactionWalRecord</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1573">writeCompactionWalRecord</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacted,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1572">writeCompactionWalRecord</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacted,
                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newFiles)
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Writes the compaction WAL record.</div>
@@ -2880,7 +2844,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>replaceStoreFiles</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1593">replaceStoreFiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1592">replaceStoreFiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
                        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;result)
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
@@ -2895,7 +2859,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>updateSpaceQuotaAfterFileReplacement</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1624">updateSpaceQuotaAfterFileReplacement</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;sizeStore,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1623">updateSpaceQuotaAfterFileReplacement</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RegionSizeStore.html" title="interface in org.apache.hadoop.hbase.quotas">RegionSizeStore</a>&nbsp;sizeStore,
                                           <a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
                                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;oldFiles,
                                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newFiles)</pre>
@@ -2916,7 +2880,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>logCompactionEndMessage</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1651">logCompactionEndMessage</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1650">logCompactionEndMessage</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
                                      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
                                      long&nbsp;now,
                                      long&nbsp;compactionStartTime)</pre>
@@ -2935,7 +2899,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>replayCompactionMarker</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1689">replayCompactionMarker</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor&nbsp;compaction,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1688">replayCompactionMarker</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor&nbsp;compaction,
                                    boolean&nbsp;pickCompactionFiles,
                                    boolean&nbsp;removeFiles)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -2954,7 +2918,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>hasReferences</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1748">hasReferences</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1747">hasReferences</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#hasReferences--">hasReferences</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -2969,7 +2933,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionProgress</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionProgress</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1766">getCompactionProgress</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionProgress</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1765">getCompactionProgress</a>()</pre>
 <div class="block">getter for CompactionProgress object</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -2983,7 +2947,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>shouldPerformMajorCompaction</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1771">shouldPerformMajorCompaction</a>()
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1770">shouldPerformMajorCompaction</a>()
                                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#shouldPerformMajorCompaction--">Store</a></code></span></div>
 <div class="block">Tests whether we should run a major compaction. For example, if the configured major compaction
@@ -3004,7 +2968,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>requestCompaction</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1783">requestCompaction</a>()
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1782">requestCompaction</a>()
                                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -3018,7 +2982,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>requestCompaction</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1787">requestCompaction</a>(int&nbsp;priority,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1786">requestCompaction</a>(int&nbsp;priority,
                                                      <a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionLifeCycleTracker</a>&nbsp;tracker,
                                                      <a href="../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)
                                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -3034,7 +2998,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>addToCompactingFiles</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1883">addToCompactingFiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToAdd)</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1882">addToCompactingFiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToAdd)</pre>
 <div class="block">Adds the files to compacting files. filesCompacting must be locked.</div>
 </li>
 </ul>
@@ -3044,7 +3008,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeUnneededFiles</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1895">removeUnneededFiles</a>()
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1894">removeUnneededFiles</a>()
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -3058,7 +3022,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>cancelRequestedCompaction</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1932">cancelRequestedCompaction</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&nbsp;compaction)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1931">cancelRequestedCompaction</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&nbsp;compaction)</pre>
 </li>
 </ul>
 <a name="finishCompactionRequest-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">
@@ -3067,7 +3031,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>finishCompactionRequest</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1936">finishCompactionRequest</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr)</pre>
+<pre>protected&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1935">finishCompactionRequest</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr)</pre>
 </li>
 </ul>
 <a name="validateStoreFile-org.apache.hadoop.fs.Path-">
@@ -3076,7 +3040,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>validateStoreFile</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1952">validateStoreFile</a>(org.apache.hadoop.fs.Path&nbsp;path)
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1951">validateStoreFile</a>(org.apache.hadoop.fs.Path&nbsp;path)
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Validates a store file by opening and closing it. In HFileV2 this should not be an expensive
  operation.</div>
@@ -3094,7 +3058,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>refreshStoreSizeAndTotalBytes</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1969">refreshStoreSizeAndTotalBytes</a>()
+<pre>protected&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1968">refreshStoreSizeAndTotalBytes</a>()
                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Update counts.</div>
 <dl>
@@ -3109,7 +3073,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>versionsToReturn</h4>
-<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1988">versionsToReturn</a>(int&nbsp;wantedVersions)</pre>
+<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1987">versionsToReturn</a>(int&nbsp;wantedVersions)</pre>
 </li>
 </ul>
 <a name="canSplit--">
@@ -3118,7 +3082,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>canSplit</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1998">canSplit</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.1997">canSplit</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#canSplit--">Store</a></code></span></div>
 <div class="block">Returns whether this store is splittable, i.e., no reference file in this store.</div>
 <dl>
@@ -3133,7 +3097,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSplitPoint</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;byte[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2010">getSplitPoint</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;byte[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2009">getSplitPoint</a>()</pre>
 <div class="block">Determines if Store should be split.</div>
 </li>
 </ul>
@@ -3143,7 +3107,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastCompactSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2030">getLastCompactSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2029">getLastCompactSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getLastCompactSize--">getLastCompactSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3158,7 +3122,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2035">getSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2034">getSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getSize--">getSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3173,7 +3137,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>triggerMajorCompaction</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2039">triggerMajorCompaction</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2038">triggerMajorCompaction</a>()</pre>
 </li>
 </ul>
 <a name="getScanner-org.apache.hadoop.hbase.client.Scan-java.util.NavigableSet-long-">
@@ -3182,7 +3146,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getScanner</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2055">getScanner</a>(<a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2054">getScanner</a>(<a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;byte[]&gt;&nbsp;targetCols,
                                   long&nbsp;readPt)
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -3205,7 +3169,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createScanner</h4>
-<pre>protected&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2072">createScanner</a>(<a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
+<pre>protected&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2071">createScanner</a>(<a href="../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
                                         <a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a>&nbsp;scanInfo,
                                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/NavigableSet.html?is-external=true" title="class or interface in java.util">NavigableSet</a>&lt;byte[]&gt;&nbsp;targetCols,
                                         long&nbsp;readPt)
@@ -3222,7 +3186,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>recreateScanners</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2093">recreateScanners</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;currentFileScanners,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2092">recreateScanners</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;currentFileScanners,
                                               boolean&nbsp;cacheBlocks,
                                               boolean&nbsp;usePread,
                                               boolean&nbsp;isCompaction,
@@ -3261,7 +3225,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>toString</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2127">toString</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2126">toString</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
@@ -3274,7 +3238,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStorefilesCount</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2132">getStorefilesCount</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2131">getStorefilesCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getStorefilesCount--">getStorefilesCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3289,7 +3253,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactedFilesCount</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2137">getCompactedFilesCount</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2136">getCompactedFilesCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getCompactedFilesCount--">getCompactedFilesCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3304,7 +3268,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStoreFileAgeStream</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/stream/LongStream.html?is-external=true" title="class or interface in java.util.stream">LongStream</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2141">getStoreFileAgeStream</a>()</pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/stream/LongStream.html?is-external=true" title="class or interface in java.util.stream">LongStream</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2140">getStoreFileAgeStream</a>()</pre>
 </li>
 </ul>
 <a name="getMaxStoreFileAge--">
@@ -3313,7 +3277,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaxStoreFileAge</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/OptionalLong.html?is-external=true" title="class or interface in java.util">OptionalLong</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2154">getMaxStoreFileAge</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/OptionalLong.html?is-external=true" title="class or interface in java.util">OptionalLong</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2153">getMaxStoreFileAge</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMaxStoreFileAge--">getMaxStoreFileAge</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3328,7 +3292,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMinStoreFileAge</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/OptionalLong.html?is-external=true" title="class or interface in java.util">OptionalLong</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2159">getMinStoreFileAge</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/OptionalLong.html?is-external=true" title="class or interface in java.util">OptionalLong</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2158">getMinStoreFileAge</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMinStoreFileAge--">getMinStoreFileAge</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3343,7 +3307,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getAvgStoreFileAge</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/OptionalDouble.html?is-external=true" title="class or interface in java.util">OptionalDouble</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2164">getAvgStoreFileAge</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/OptionalDouble.html?is-external=true" title="class or interface in java.util">OptionalDouble</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2163">getAvgStoreFileAge</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getAvgStoreFileAge--">getAvgStoreFileAge</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3358,7 +3322,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getNumReferenceFiles</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2169">getNumReferenceFiles</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2168">getNumReferenceFiles</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getNumReferenceFiles--">getNumReferenceFiles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3373,7 +3337,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getNumHFiles</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2175">getNumHFiles</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2174">getNumHFiles</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getNumHFiles--">getNumHFiles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3388,7 +3352,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStoreSizeUncompressed</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2181">getStoreSizeUncompressed</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2180">getStoreSizeUncompressed</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getStoreSizeUncompressed--">getStoreSizeUncompressed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3403,7 +3367,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStorefilesSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2186">getStorefilesSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2185">getStorefilesSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getStorefilesSize--">getStorefilesSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3418,7 +3382,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getHFilesSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2192">getHFilesSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2191">getHFilesSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getHFilesSize--">getHFilesSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3433,7 +3397,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTotalUncompressedBytes</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2198">getTotalUncompressedBytes</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files)</pre>
+<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2197">getTotalUncompressedBytes</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files)</pre>
 </li>
 </ul>
 <a name="getStorefilesSize-java.util.Collection-java.util.function.Predicate-">
@@ -3442,7 +3406,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStorefilesSize</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2204">getStorefilesSize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files,
+<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2203">getStorefilesSize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;files,
                                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;predicate)</pre>
 </li>
 </ul>
@@ -3452,7 +3416,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStorefileFieldSize</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2209">getStorefileFieldSize</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;file,
+<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2208">getStorefileFieldSize</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;file,
                                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/ToLongFunction.html?is-external=true" title="class or interface in java.util.function">ToLongFunction</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a>&gt;&nbsp;f)</pre>
 </li>
 </ul>
@@ -3462,7 +3426,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStorefilesFieldSize</h4>
-<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2220">getStorefilesFieldSize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/ToLongFunction.html?is-external=true" title="class or interface in java.util.function">ToLongFunction</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a>&gt;&nbsp;f)</pre>
+<pre>private&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2219">getStorefilesFieldSize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/ToLongFunction.html?is-external=true" title="class or interface in java.util.function">ToLongFunction</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a>&gt;&nbsp;f)</pre>
 </li>
 </ul>
 <a name="getStorefilesRootLevelIndexSize--">
@@ -3471,7 +3435,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStorefilesRootLevelIndexSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2226">getStorefilesRootLevelIndexSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2225">getStorefilesRootLevelIndexSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getStorefilesRootLevelIndexSize--">getStorefilesRootLevelIndexSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3486,7 +3450,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTotalStaticIndexSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2231">getTotalStaticIndexSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2230">getTotalStaticIndexSize</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getTotalStaticIndexSize--">Store</a></code></span></div>
 <div class="block">Returns the total size of all index blocks in the data block indexes, including the root level,
  intermediate levels, and the leaf level for multi-level indexes, or just the root level for
@@ -3505,7 +3469,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTotalStaticBloomSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2236">getTotalStaticBloomSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2235">getTotalStaticBloomSize</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getTotalStaticBloomSize--">Store</a></code></span></div>
 <div class="block">Returns the total byte size of all Bloom filter bit arrays. For compound Bloom filters even the
  Bloom blocks currently not loaded into the block cache are counted.</div>
@@ -3523,7 +3487,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMemStoreSize</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2241">getMemStoreSize</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2240">getMemStoreSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMemStoreSize--">getMemStoreSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3538,7 +3502,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactPriority</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2246">getCompactPriority</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2245">getCompactPriority</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getCompactPriority--">getCompactPriority</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3551,7 +3515,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>throttleCompaction</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2254">throttleCompaction</a>(long&nbsp;compactionSize)</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2253">throttleCompaction</a>(long&nbsp;compactionSize)</pre>
 </li>
 </ul>
 <a name="getHRegion--">
@@ -3560,7 +3524,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getHRegion</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2258">getHRegion</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2257">getHRegion</a>()</pre>
 </li>
 </ul>
 <a name="getCoprocessorHost--">
@@ -3569,7 +3533,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCoprocessorHost</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2262">getCoprocessorHost</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2261">getCoprocessorHost</a>()</pre>
 </li>
 </ul>
 <a name="getRegionInfo--">
@@ -3578,7 +3542,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionInfo</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2267">getRegionInfo</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2266">getRegionInfo</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getRegionInfo--">getRegionInfo</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3595,7 +3559,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>areWritesEnabled</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2272">areWritesEnabled</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2271">areWritesEnabled</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#areWritesEnabled--">areWritesEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3608,7 +3572,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSmallestReadPoint</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2277">getSmallestReadPoint</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2276">getSmallestReadPoint</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getSmallestReadPoint--">getSmallestReadPoint</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3625,7 +3589,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>upsert</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2291">upsert</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2290">upsert</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
                    long&nbsp;readpoint,
                    <a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -3650,7 +3614,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createFlushContext</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFlushContext</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2301">createFlushContext</a>(long&nbsp;cacheFlushId,
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFlushContext.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFlushContext</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2300">createFlushContext</a>(long&nbsp;cacheFlushId,
                                             <a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</pre>
 </li>
 </ul>
@@ -3660,7 +3624,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>needsCompaction</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2448">needsCompaction</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2436">needsCompaction</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#needsCompaction--">Store</a></code></span></div>
 <div class="block">See if there's too much store files in this store</div>
 <dl>
@@ -3678,7 +3642,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCacheConfig</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2460">getCacheConfig</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">CacheConfig</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2448">getCacheConfig</a>()</pre>
 <div class="block">Used for tests.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3692,7 +3656,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>heapSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2473">heapSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2461">heapSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/io/HeapSize.html#heapSize--">heapSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io">HeapSize</a></code></dd>
@@ -3708,7 +3672,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getComparator</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2479">getComparator</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2467">getComparator</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getComparator--">getComparator</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3721,7 +3685,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getScanInfo</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2483">getScanInfo</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2471">getScanInfo</a>()</pre>
 </li>
 </ul>
 <a name="setScanInfo-org.apache.hadoop.hbase.regionserver.ScanInfo-">
@@ -3730,7 +3694,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setScanInfo</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2491">setScanInfo</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a>&nbsp;scanInfo)</pre>
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2479">setScanInfo</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a>&nbsp;scanInfo)</pre>
 <div class="block">Set scan info, used by test</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -3744,7 +3708,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>hasTooManyStoreFiles</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2496">hasTooManyStoreFiles</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2484">hasTooManyStoreFiles</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#hasTooManyStoreFiles--">hasTooManyStoreFiles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3759,7 +3723,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getFlushedCellsCount</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2501">getFlushedCellsCount</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2489">getFlushedCellsCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getFlushedCellsCount--">getFlushedCellsCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3774,7 +3738,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getFlushedCellsSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2506">getFlushedCellsSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2494">getFlushedCellsSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getFlushedCellsSize--">getFlushedCellsSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3789,7 +3753,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getFlushedOutputFileSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2511">getFlushedOutputFileSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2499">getFlushedOutputFileSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getFlushedOutputFileSize--">getFlushedOutputFileSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3804,7 +3768,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactedCellsCount</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2516">getCompactedCellsCount</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2504">getCompactedCellsCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getCompactedCellsCount--">getCompactedCellsCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3819,7 +3783,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactedCellsSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2521">getCompactedCellsSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2509">getCompactedCellsSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getCompactedCellsSize--">getCompactedCellsSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3834,7 +3798,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMajorCompactedCellsCount</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2526">getMajorCompactedCellsCount</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2514">getMajorCompactedCellsCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMajorCompactedCellsCount--">getMajorCompactedCellsCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3849,7 +3813,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMajorCompactedCellsSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2531">getMajorCompactedCellsSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2519">getMajorCompactedCellsSize</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMajorCompactedCellsSize--">getMajorCompactedCellsSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3864,7 +3828,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStoreEngine</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html" title="class in org.apache.hadoop.hbase.regionserver">StoreEngine</a>&lt;?,?,?,?&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2539">getStoreEngine</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html" title="class in org.apache.hadoop.hbase.regionserver">StoreEngine</a>&lt;?,?,?,?&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2527">getStoreEngine</a>()</pre>
 <div class="block">Returns the StoreEngine that is backing this concrete implementation of Store.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -3878,7 +3842,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getOffPeakHours</h4>
-<pre>protected&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/OffPeakHours.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">OffPeakHours</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2543">getOffPeakHours</a>()</pre>
+<pre>protected&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/OffPeakHours.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">OffPeakHours</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2531">getOffPeakHours</a>()</pre>
 </li>
 </ul>
 <a name="onConfigurationChange-org.apache.hadoop.conf.Configuration-">
@@ -3887,7 +3851,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>onConfigurationChange</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2551">onConfigurationChange</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2539">onConfigurationChange</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
 <div class="block">This method would be called by the <a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf"><code>ConfigurationManager</code></a>
  object when the <code>Configuration</code> object is reloaded from disk.</div>
 <dl>
@@ -3902,7 +3866,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>registerChildren</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2563">registerChildren</a>(<a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf">ConfigurationManager</a>&nbsp;manager)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2551">registerChildren</a>(<a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf">ConfigurationManager</a>&nbsp;manager)</pre>
 <div class="block">Needs to be called to register the children to the manager.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -3918,7 +3882,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>deregisterChildren</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2571">deregisterChildren</a>(<a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf">ConfigurationManager</a>&nbsp;manager)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2559">deregisterChildren</a>(<a href="../../../../../org/apache/hadoop/hbase/conf/ConfigurationManager.html" title="class in org.apache.hadoop.hbase.conf">ConfigurationManager</a>&nbsp;manager)</pre>
 <div class="block">Needs to be called to deregister the children from the manager.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -3934,7 +3898,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCompactionPressure</h4>
-<pre>public&nbsp;double&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2576">getCompactionPressure</a>()</pre>
+<pre>public&nbsp;double&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2564">getCompactionPressure</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getCompactionPressure--">Store</a></code></span></div>
 <div class="block">This value can represent the degree of emergency of compaction for this store. It should be
  greater than or equal to 0.0, any value greater than 1.0 means we have too many store files.
@@ -3961,7 +3925,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isPrimaryReplicaStore</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2581">isPrimaryReplicaStore</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2569">isPrimaryReplicaStore</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#isPrimaryReplicaStore--">isPrimaryReplicaStore</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -3974,7 +3938,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>preSnapshotOperation</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2589">preSnapshotOperation</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2577">preSnapshotOperation</a>()</pre>
 <div class="block">Sets the store up for a region level snapshot operation.</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -3988,7 +3952,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>postSnapshotOperation</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2597">postSnapshotOperation</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2585">postSnapshotOperation</a>()</pre>
 <div class="block">Perform tasks needed after the completion of snapshot operation.</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -4002,7 +3966,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>closeAndArchiveCompactedFiles</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2604">closeAndArchiveCompactedFiles</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2592">closeAndArchiveCompactedFiles</a>()
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Closes and archives the compacted files under this store</div>
 <dl>
@@ -4017,7 +3981,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeCompactedfiles</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2636">removeCompactedfiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedfiles,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2624">removeCompactedfiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedfiles,
                                   boolean&nbsp;evictOnClose)
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Archives and removes the compacted files</div>
@@ -4037,7 +4001,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStoreFileSize</h4>
-<pre>long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2724">getStoreFileSize</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;file)</pre>
+<pre>long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2712">getStoreFileSize</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;file)</pre>
 <div class="block">Computes the length of a store file without succumbing to any errors along the way. If an
  error is encountered, the implementation returns <code>0</code> instead of the actual size.</div>
 <dl>
@@ -4054,7 +4018,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>preFlushSeqIDEstimation</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2744">preFlushSeqIDEstimation</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2732">preFlushSeqIDEstimation</a>()</pre>
 </li>
 </ul>
 <a name="isSloppyMemStore--">
@@ -4063,7 +4027,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isSloppyMemStore</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2749">isSloppyMemStore</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2737">isSloppyMemStore</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#isSloppyMemStore--">isSloppyMemStore</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -4078,7 +4042,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>clearCompactedfiles</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2753">clearCompactedfiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToRemove)
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2741">clearCompactedfiles</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToRemove)
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -4092,7 +4056,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>reportArchivedFilesForQuota</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2763">reportArchivedFilesForQuota</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFile.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFile</a>&gt;&nbsp;archivedFiles,
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2751">reportArchivedFilesForQuota</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreFile.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFile</a>&gt;&nbsp;archivedFiles,
                                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;fileSizes)</pre>
 </li>
 </ul>
@@ -4102,7 +4066,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCurrentParallelPutCount</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2791">getCurrentParallelPutCount</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2779">getCurrentParallelPutCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getCurrentParallelPutCount--">getCurrentParallelPutCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -4115,7 +4079,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStoreRefCount</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2795">getStoreRefCount</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2783">getStoreRefCount</a>()</pre>
 </li>
 </ul>
 <a name="getMaxCompactedStoreFileRefCount--">
@@ -4124,7 +4088,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaxCompactedStoreFileRefCount</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2804">getMaxCompactedStoreFileRefCount</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2792">getMaxCompactedStoreFileRefCount</a>()</pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>get maximum ref count of storeFile among all compacted HStore Files for the HStore</dd>
@@ -4137,7 +4101,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMemstoreOnlyRowReadsCount</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2817">getMemstoreOnlyRowReadsCount</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2805">getMemstoreOnlyRowReadsCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMemstoreOnlyRowReadsCount--">getMemstoreOnlyRowReadsCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -4152,7 +4116,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getMixedRowReadsCount</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2822">getMixedRowReadsCount</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2810">getMixedRowReadsCount</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMixedRowReadsCount--">getMixedRowReadsCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></code></dd>
@@ -4167,7 +4131,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>updateMetricsStore</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2826">updateMetricsStore</a>(boolean&nbsp;memstoreRead)</pre>
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/HStore.html#line.2814">updateMetricsStore</a>(boolean&nbsp;memstoreRead)</pre>
 </li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/Region.Operation.html b/devapidocs/org/apache/hadoop/hbase/regionserver/Region.Operation.html
index cc98d83..fd419e6 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/Region.Operation.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/Region.Operation.html
@@ -406,7 +406,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver">Region.Operation</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/Region.Operation.html#line.600">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver">Region.Operation</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/Region.Operation.html#line.131">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -426,7 +426,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver">Region.Operation</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/Region.Operation.html#line.600">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver">Region.Operation</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/Region.Operation.html#line.131">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/BloomType.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/BloomType.html
index 7feac3e..7beb130 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/BloomType.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/BloomType.html
@@ -390,13 +390,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext.Builder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#withBloomType-org.apache.hadoop.hbase.regionserver.BloomType-">withBloomType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>&nbsp;bloomFilterType)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter.Builder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileWriter.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html#withBloomType-org.apache.hadoop.hbase.regionserver.BloomType-">withBloomType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>&nbsp;bloomType)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext.Builder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#withBloomType-org.apache.hadoop.hbase.regionserver.BloomType-">withBloomType</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver">BloomType</a>&nbsp;bloomFilterType)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellFlatMap.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellFlatMap.html
index fb6832b..e961580 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellFlatMap.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellFlatMap.html
@@ -131,14 +131,14 @@
                     boolean&nbsp;descending)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html" title="class in org.apache.hadoop.hbase.regionserver">CellFlatMap</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellFlatMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html#createSubCellFlatMap-int-int-boolean-">createSubCellFlatMap</a></span>(int&nbsp;min,
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html" title="class in org.apache.hadoop.hbase.regionserver">CellFlatMap</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellChunkMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkMap.html#createSubCellFlatMap-int-int-boolean-">createSubCellFlatMap</a></span>(int&nbsp;min,
                     int&nbsp;max,
                     boolean&nbsp;descending)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html" title="class in org.apache.hadoop.hbase.regionserver">CellFlatMap</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellChunkMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkMap.html#createSubCellFlatMap-int-int-boolean-">createSubCellFlatMap</a></span>(int&nbsp;min,
+<td class="colFirst"><code>protected abstract <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html" title="class in org.apache.hadoop.hbase.regionserver">CellFlatMap</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CellFlatMap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellFlatMap.html#createSubCellFlatMap-int-int-boolean-">createSubCellFlatMap</a></span>(int&nbsp;min,
                     int&nbsp;max,
                     boolean&nbsp;descending)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellSet.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellSet.html
index 237b12e..c584a81 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellSet.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/CellSet.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getCellSet--">getCellSet</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getCellSet--">getCellSet</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getCellSet--">getCellSet</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getCellSet--">getCellSet</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -148,16 +148,16 @@
                    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a>&nbsp;action)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#setCellSet-org.apache.hadoop.hbase.regionserver.CellSet-org.apache.hadoop.hbase.regionserver.CellSet-">setCellSet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a>&nbsp;cellSetOld,
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">CompositeImmutableSegment</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#setCellSet-org.apache.hadoop.hbase.regionserver.CellSet-org.apache.hadoop.hbase.regionserver.CellSet-">setCellSet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a>&nbsp;cellSetOld,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a>&nbsp;cellSetNew)</code>
 <div class="block">Setting the CellSet of the segment - used only for flat immutable segment for setting
  immutable CellSet after its creation in immutable segment constructor</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">CompositeImmutableSegment</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#setCellSet-org.apache.hadoop.hbase.regionserver.CellSet-org.apache.hadoop.hbase.regionserver.CellSet-">setCellSet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a>&nbsp;cellSetOld,
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#setCellSet-org.apache.hadoop.hbase.regionserver.CellSet-org.apache.hadoop.hbase.regionserver.CellSet-">setCellSet</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a>&nbsp;cellSetOld,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellSet.html" title="class in org.apache.hadoop.hbase.regionserver">CellSet</a>&nbsp;cellSetNew)</code>
 <div class="block">Setting the CellSet of the segment - used only for flat immutable segment for setting
  immutable CellSet after its creation in immutable segment constructor</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Chunk.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Chunk.html
index f3f4987..4c63f36 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Chunk.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Chunk.html
@@ -233,7 +233,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
@@ -241,11 +241,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#getNewExternalChunk-int-">getNewExternalChunk</a></span>(int&nbsp;size)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#getNewExternalChunk-int-">getNewExternalChunk</a></span>(int&nbsp;size)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
@@ -253,7 +253,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#getNewExternalChunk-int-">getNewExternalChunk</a></span>(int&nbsp;size)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#getNewExternalChunk-int-">getNewExternalChunk</a></span>(int&nbsp;size)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ChunkCreator.ChunkType.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ChunkCreator.ChunkType.html
index b92dccb..6556946 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ChunkCreator.ChunkType.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ChunkCreator.ChunkType.html
@@ -151,7 +151,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
@@ -159,7 +159,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLAB.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreLABImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreLABImpl.html#getNewExternalChunk-org.apache.hadoop.hbase.regionserver.ChunkCreator.ChunkType-">getNewExternalChunk</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver">ChunkCreator.ChunkType</a>&nbsp;chunkType)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) int</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushLifeCycleTracker.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushLifeCycleTracker.html
index 1f3e4ef..4032b7a 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushLifeCycleTracker.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushLifeCycleTracker.html
@@ -326,14 +326,12 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
              <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
              <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
-<div class="block">Turns a snapshot of memstore into a set of store files.</div>
-</td>
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
@@ -344,12 +342,14 @@
              <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
              <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
              <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
+<div class="block">Turns a snapshot of memstore into a set of store files.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResultImpl.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion.FlushResultImpl</a></code></td>
@@ -427,23 +427,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
-            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
 <div class="block">Tell the listener the cache needs to be flushed.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-java.util.List-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
-            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;families,
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-java.util.List-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;families,
@@ -451,6 +445,12 @@
 <div class="block">Tell the listener the cache needs to be flushed.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-java.util.List-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
+            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;families,
+            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#requestFlush0-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush0</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequestListener.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequestListener.html
index a417f1e..7f1ce6f 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequestListener.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequestListener.html
@@ -130,26 +130,26 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#registerFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">registerFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
-<div class="block">Register a MemstoreFlushListener</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#registerFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">registerFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
 <div class="block">Register a FlushRequestListener</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#registerFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">registerFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
+<div class="block">Register a MemstoreFlushListener</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#unregisterFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">unregisterFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
-<div class="block">Unregister the listener from MemstoreFlushListeners</div>
+<td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#unregisterFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">unregisterFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
+<div class="block">Unregister the given FlushRequestListener</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#unregisterFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">unregisterFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
-<div class="block">Unregister the given FlushRequestListener</div>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#unregisterFlushRequestListener-org.apache.hadoop.hbase.regionserver.FlushRequestListener-">unregisterFlushRequestListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequestListener.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequestListener</a>&nbsp;listener)</code>
+<div class="block">Unregister the listener from MemstoreFlushListeners</div>
 </td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequester.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequester.html
index a19d749..ecf4d77 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequester.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushRequester.html
@@ -136,11 +136,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequester</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getFlushRequester--">getFlushRequester</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getFlushRequester--">getFlushRequester</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushRequester</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getFlushRequester--">getFlushRequester</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getFlushRequester--">getFlushRequester</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushType.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushType.html
index 54b344f..90c214c 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushType.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/FlushType.html
@@ -103,26 +103,26 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#isAboveHighWaterMark--">isAboveHighWaterMark</a></span>()</code>
-<div class="block">Return true if global memory usage is above the high watermark</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerAccounting.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerAccounting.html#isAboveHighWaterMark--">isAboveHighWaterMark</a></span>()</code>
 <div class="block">Return true if we are above the memstore high water mark</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#isAboveLowWaterMark--">isAboveLowWaterMark</a></span>()</code>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#isAboveHighWaterMark--">isAboveHighWaterMark</a></span>()</code>
+<div class="block">Return true if global memory usage is above the high watermark</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionServerAccounting.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerAccounting.html#isAboveLowWaterMark--">isAboveLowWaterMark</a></span>()</code>
 <div class="block">Return true if we're above the low watermark</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerAccounting.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerAccounting.html#isAboveLowWaterMark--">isAboveLowWaterMark</a></span>()</code>
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver">FlushType</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#isAboveLowWaterMark--">isAboveLowWaterMark</a></span>()</code>
 <div class="block">Return true if we're above the low watermark</div>
 </td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HMobStore.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HMobStore.html
index 07beba7..c3b2ee9 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HMobStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HMobStore.html
@@ -107,13 +107,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HMobStore.html" title="class in org.apache.hadoop.hbase.regionserver">HMobStore</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultMobStoreCompactor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/DefaultMobStoreCompactor.html#mobStore">mobStore</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HMobStore.html" title="class in org.apache.hadoop.hbase.regionserver">HMobStore</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultMobStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/DefaultMobStoreFlusher.html#mobStore">mobStore</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HMobStore.html" title="class in org.apache.hadoop.hbase.regionserver">HMobStore</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultMobStoreCompactor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mob/DefaultMobStoreCompactor.html#mobStore">mobStore</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegion.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegion.html
index 5fa3d9b..6c416c3 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegion.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegion.html
@@ -377,13 +377,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterRegionFlusherAndCompactor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionFlusherAndCompactor.html#region">region</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MasterRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/region/MasterRegion.html#region">region</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterRegionFlusherAndCompactor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/region/MasterRegionFlusherAndCompactor.html#region">region</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -553,8 +553,24 @@
 <td class="colLast"><span class="typeNameLabel">RSRpcServices.RegionScannerHolder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerHolder.html#r">r</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#region">region</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.FlushRegionEntry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.FlushRegionEntry.html#region">region</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BusyRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/BusyRegionSplitPolicy.html#region">region</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompactSplit.CompactionRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionRunner.html#region">region</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegion.BatchOperation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.BatchOperation.html#region">region</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionWrapperImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionWrapperImpl.html#region">region</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
@@ -569,24 +585,10 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#region">region</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionWrapperImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionWrapperImpl.html#region">region</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#region">region</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactSplit.CompactionRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionRunner.html#region">region</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegion.BatchOperation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.BatchOperation.html#region">region</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#region">region</a></span></code>
+<div class="block">The region</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
@@ -594,17 +596,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BusyRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/BusyRegionSplitPolicy.html#region">region</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.FlushRegionEntry.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.FlushRegionEntry.html#region">region</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#region">region</a></span></code>
-<div class="block">The region</div>
-</td>
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#region">region</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#region">region</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#region">region</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -965,6 +965,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">BusyRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/BusyRegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">DelimitedKeyPrefixRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DelimitedKeyPrefixRegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>
 <div class="block">Upon construction, this method will be called with the region
  to be governed.</div>
@@ -972,13 +982,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">FlushPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>
+<div class="block">Upon construction, this method will be called with the region to be governed.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">FlushNonSloppyStoresFirstPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushNonSloppyStoresFirstPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">IncreasingToUpperBoundRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/IncreasingToUpperBoundRegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>
-<div class="block">Upon construction, this method will be called with the region to be governed.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">FlushAllLargeStoresPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushAllLargeStoresPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -988,40 +1006,22 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushNonSloppyStoresFirstPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushNonSloppyStoresFirstPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushAllLargeStoresPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushAllLargeStoresPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">ConstantSizeRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ConstantSizeRegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">BusyRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/BusyRegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DelimitedKeyPrefixRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DelimitedKeyPrefixRegionSplitPolicy.html#configureForRegion-org.apache.hadoop.hbase.regionserver.HRegion-">configureForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushPolicy.html" title="class in org.apache.hadoop.hbase.regionserver">FlushPolicy</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FlushPolicyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushPolicyFactory.html#create-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
-      org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
-<div class="block">Create the FlushPolicy configured for the given table.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.html" title="class in org.apache.hadoop.hbase.regionserver">RegionSplitPolicy</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.html#create-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
       org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
 <div class="block">Create the RegionSplitPolicy configured for the given table.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushPolicy.html" title="class in org.apache.hadoop.hbase.regionserver">FlushPolicy</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FlushPolicyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushPolicyFactory.html#create-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
+      org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
+<div class="block">Create the FlushPolicy configured for the given table.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) org.apache.hadoop.hbase.shaded.protobuf.generated.ClusterStatusProtos.RegionLoad</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#createRegionLoad-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.shaded.protobuf.generated.ClusterStatusProtos.RegionLoad.Builder-org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionSpecifier.Builder-">createRegionLoad</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
@@ -1234,35 +1234,29 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestDelayedFlush-org.apache.hadoop.hbase.regionserver.HRegion-long-">requestDelayedFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
-                   long&nbsp;delay)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#requestDelayedFlush-org.apache.hadoop.hbase.regionserver.HRegion-long-">requestDelayedFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
                    long&nbsp;delay)</code>
 <div class="block">Tell the listener the cache needs to be flushed after a delay</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
-            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestDelayedFlush-org.apache.hadoop.hbase.regionserver.HRegion-long-">requestDelayedFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
+                   long&nbsp;delay)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
 <div class="block">Tell the listener the cache needs to be flushed.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-java.util.List-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
-            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;families,
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">FlushRequester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushRequester.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-java.util.List-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;families,
@@ -1270,6 +1264,12 @@
 <div class="block">Tell the listener the cache needs to be flushed.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#requestFlush-org.apache.hadoop.hbase.regionserver.HRegion-java.util.List-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">requestFlush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;r,
+            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;families,
+            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#requestSystemCompaction-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.HStore-java.lang.String-">requestSystemCompaction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionFileSystem.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionFileSystem.html
index ffcb585..9a272f8 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionFileSystem.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionFileSystem.html
@@ -232,11 +232,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#getRegionFileSystem--">getRegionFileSystem</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getRegionFileSystem--">getRegionFileSystem</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getRegionFileSystem--">getRegionFileSystem</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#getRegionFileSystem--">getRegionFileSystem</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a></code></td>
@@ -378,14 +378,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MajorCompactionTTLRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionTTLRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
+<td class="colLast"><span class="typeNameLabel">MajorCompactionRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;storeFiles,
                   long&nbsp;ts)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MajorCompactionRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
+<td class="colLast"><span class="typeNameLabel">MajorCompactionTTLRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionTTLRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;storeFiles,
                   long&nbsp;ts)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionServer.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionServer.html
index ad14f24..8705313 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionServer.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HRegionServer.html
@@ -395,14 +395,6 @@
 <td class="colLast"><span class="typeNameLabel">HRegionServer.CompactionChecker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html#instance">instance</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html#regionServer">regionServer</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableWrapperAggregateImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableWrapperAggregateImpl.html#regionServer">regionServer</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StorefileRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StorefileRefresherChore.html#regionServer">regionServer</a></span></code>&nbsp;</td>
 </tr>
@@ -411,12 +403,12 @@
 <td class="colLast"><span class="typeNameLabel">MetricsRegionServerWrapperImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerWrapperImpl.html#regionServer">regionServer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#server">server</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RSRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html#regionServer">regionServer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SplitRequest.html#server">server</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableWrapperAggregateImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableWrapperAggregateImpl.html#regionServer">regionServer</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
@@ -428,8 +420,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SplitRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SplitRequest.html#server">server</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegionServer.PeriodicMemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html#server">server</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.html#server">server</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing fields, and an explanation">
@@ -706,13 +706,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                int&nbsp;stage,
                                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a>&nbsp;rs)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                int&nbsp;stage,
                                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a>&nbsp;rs)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStore.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStore.html
index 219e9d0..07c2f50 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStore.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStore.html
@@ -207,25 +207,25 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#store">store</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompactedHFilesDischargeHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactedHFilesDischargeHandler.html#store">store</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.CompactionRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionRunner.html#store">store</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#store">store</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#store">store</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#store">store</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing fields, and an explanation">
@@ -317,11 +317,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushAllLargeStoresPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushAllLargeStoresPolicy.html#selectStoresToFlush--">selectStoresToFlush</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FlushAllStoresPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushAllStoresPolicy.html#selectStoresToFlush--">selectStoresToFlush</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushAllStoresPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushAllStoresPolicy.html#selectStoresToFlush--">selectStoresToFlush</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FlushAllLargeStoresPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushAllLargeStoresPolicy.html#selectStoresToFlush--">selectStoresToFlush</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -377,24 +377,10 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                <a href="../../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
                 <a href="../../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;kvComparator)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected abstract void</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                <a href="../../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;cellComparator)</code>
-<div class="block">Create the StoreEngine's components.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
@@ -402,6 +388,20 @@
                 <a href="../../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;kvComparator)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
+                <a href="../../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected abstract void</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createComponents-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponents</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
+                <a href="../../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;cellComparator)</code>
+<div class="block">Create the StoreEngine's components.</div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createComponentsOnce-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.CellComparator-">createComponentsOnce</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                     <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
@@ -632,9 +632,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
+<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                long&nbsp;oldestUnexpiredTS)</code>&nbsp;</td>
+                long&nbsp;oldestUnexpiredTS)</code>
+<div class="block">This functionality should be resolved in the higher level which is
+ MemStoreScanner, currently returns true as default.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -653,12 +656,9 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">SegmentScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SegmentScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
+<td class="colLast"><span class="typeNameLabel">NonLazyKeyValueScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NonLazyKeyValueScanner.html#shouldUseScanner-org.apache.hadoop.hbase.client.Scan-org.apache.hadoop.hbase.regionserver.HStore-long-">shouldUseScanner</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a>&nbsp;scan,
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
-                long&nbsp;oldestUnexpiredTS)</code>
-<div class="block">This functionality should be resolved in the higher level which is
- MemStoreScanner, currently returns true as default.</div>
-</td>
+                long&nbsp;oldestUnexpiredTS)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStoreFile.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStoreFile.html
index 973a867..410d63c 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStoreFile.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HStoreFile.html
@@ -328,14 +328,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#compactedFilesSupplier">compactedFilesSupplier</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#compactedFilesSupplier">compactedFilesSupplier</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html#compactedFilesSupplier">compactedFilesSupplier</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -343,6 +335,14 @@
 <td class="colLast"><span class="typeNameLabel">StoreFileWriter.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html#compactedFilesSupplier">compactedFilesSupplier</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#compactedFilesSupplier">compactedFilesSupplier</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#compactedFilesSupplier">compactedFilesSupplier</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>,byte[]&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#fileEnds">fileEnds</a></span></code>&nbsp;</td>
 </tr>
@@ -416,23 +416,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#commitFile-org.apache.hadoop.fs.Path-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-">commitFile</a></span>(org.apache.hadoop.fs.Path&nbsp;path,
-          long&nbsp;logCacheFlushId,
-          <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createStoreFileAndReader-org.apache.hadoop.fs.Path-">createStoreFileAndReader</a></span>(org.apache.hadoop.fs.Path&nbsp;p)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#createStoreFileAndReader-org.apache.hadoop.hbase.regionserver.StoreFileInfo-">createStoreFileAndReader</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&nbsp;info)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveFileIntoPlace-org.apache.hadoop.fs.Path-">moveFileIntoPlace</a></span>(org.apache.hadoop.fs.Path&nbsp;newFile)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#tryCommitRecoveredHFile-org.apache.hadoop.fs.Path-">tryCommitRecoveredHFile</a></span>(org.apache.hadoop.fs.Path&nbsp;path)</code>&nbsp;</td>
@@ -453,13 +443,13 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.common.collect.ImmutableCollection&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#clearCompactedFiles--">clearCompactedFiles</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#clearCompactedFiles--">clearCompactedFiles</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.common.collect.ImmutableCollection&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#clearCompactedFiles--">clearCompactedFiles</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.common.collect.ImmutableCollection&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#clearFiles--">clearFiles</a></span>()</code>
@@ -468,11 +458,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.common.collect.ImmutableCollection&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#clearFiles--">clearFiles</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#clearFiles--">clearFiles</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.common.collect.ImmutableCollection&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#clearFiles--">clearFiles</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#clearFiles--">clearFiles</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
@@ -499,6 +489,13 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#commitStoreFiles-java.util.List-boolean-">commitStoreFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;files,
+                boolean&nbsp;validate)</code>
+<div class="block">Commit the given <code>files</code>.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#compact-org.apache.hadoop.hbase.regionserver.compactions.CompactionContext-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&nbsp;compaction,
        <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
@@ -506,12 +503,12 @@
 <div class="block">Compact the StoreFiles.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#doClose-boolean-org.apache.hadoop.hbase.monitoring.MonitoredTask-">doClose</a></span>(boolean&nbsp;abort,
        <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#doCompaction-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.Collection-org.apache.hadoop.hbase.security.User-long-java.util.List-">doCompaction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact,
@@ -519,19 +516,23 @@
             long&nbsp;compactionStartTime,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#findExpiredFiles-org.apache.hbase.thirdparty.com.google.common.collect.ImmutableList-long-java.util.List-java.util.Collection-">findExpiredFiles</a></span>(org.apache.hbase.thirdparty.com.google.common.collect.ImmutableList&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;stripe,
                 long&nbsp;maxTs,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;expiredStoreFiles)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>
 <div class="block">Gets initial, full list of candidate store files to check for row-key-before.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>
@@ -540,37 +541,33 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getCandidateFilesForRowKeyBefore-org.apache.hadoop.hbase.KeyValue-">getCandidateFilesForRowKeyBefore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getCompactedfiles--">getCompactedfiles</a></span>()</code>
 <div class="block">List of compacted files inside this store that needs to be excluded in reads
  because further new reads will be using only the newly created files out of compaction.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getCompactedfiles--">getCompactedfiles</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getCompactedfiles--">getCompactedfiles</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedFiles--">getCompactedFiles</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getCompactedfiles--">getCompactedfiles</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getCompactedFiles--">getCompactedFiles</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#getCompactedFilesSupplier--">getCompactedFilesSupplier</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.KeyBeforeConcatenatedLists.Iterator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.KeyBeforeConcatenatedLists.Iterator.html#getComponents--">getComponents</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getFilesForScan-byte:A-boolean-byte:A-boolean-">getFilesForScan</a></span>(byte[]&nbsp;startRow,
                boolean&nbsp;includeStartRow,
@@ -579,13 +576,6 @@
 <div class="block">Gets the store files to scan for a Scan or Get request.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getFilesForScan-byte:A-boolean-byte:A-boolean-">getFilesForScan</a></span>(byte[]&nbsp;startRow,
-               boolean&nbsp;includeStartRow,
-               byte[]&nbsp;stopRow,
-               boolean&nbsp;includeStopRow)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getFilesForScan-byte:A-boolean-byte:A-boolean-">getFilesForScan</a></span>(byte[]&nbsp;startRow,
@@ -594,65 +584,67 @@
                boolean&nbsp;includeStopRow)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getFilesForScan-byte:A-boolean-byte:A-boolean-">getFilesForScan</a></span>(byte[]&nbsp;startRow,
+               boolean&nbsp;includeStartRow,
+               byte[]&nbsp;stopRow,
+               boolean&nbsp;includeStopRow)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreUtils.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreUtils.html#getLargestFile-java.util.Collection-">getLargestFile</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates)</code>
 <div class="block">Gets the largest file (with reader) out of the list of files.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.CompactionOrFlushMergeCopy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.CompactionOrFlushMergeCopy.html#getLevel0Copy--">getLevel0Copy</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getLevel0Files--">getLevel0Files</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getStoreFileComparator--">getStoreFileComparator</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getStoreFileComparator--">getStoreFileComparator</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getStoreFileComparator--">getStoreFileComparator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getStoreFileComparator--">getStoreFileComparator</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getStoreFileComparator--">getStoreFileComparator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getStorefiles--">getStorefiles</a></span>()</code>
 <div class="block">Gets the snapshot of the store files currently in use.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getStorefiles--">getStorefiles</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getStorefiles--">getStorefiles</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefiles--">getStorefiles</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getStorefiles--">getStorefiles</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getStorefiles--">getStorefiles</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.CompactionOrFlushMergeCopy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.CompactionOrFlushMergeCopy.html#getStripeCopy-int-">getStripeCopy</a></span>(int&nbsp;index)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;org.apache.hbase.thirdparty.com.google.common.collect.ImmutableList&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getStripes--">getStripes</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
+<td class="colLast"><span class="typeNameLabel">StoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -661,22 +653,21 @@
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.KeyBeforeConcatenatedLists.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.KeyBeforeConcatenatedLists.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#loadStoreFiles-boolean-">loadStoreFiles</a></span>(boolean&nbsp;warmup)</code>
 <div class="block">Creates an unsorted list of StoreFile loaded in parallel
  from the given directory.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveCompactedFilesIntoPlace-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.List-org.apache.hadoop.hbase.security.User-">moveCompactedFilesIntoPlace</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
-                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles,
-                           <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#openStoreFiles-java.util.Collection-boolean-">openStoreFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;files,
@@ -684,15 +675,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeMap.html?is-external=true" title="class or interface in java.util">TreeMap</a>&lt;byte[],<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
@@ -711,6 +702,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+                                   <a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
+                                   <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                                    <a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
                                    <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>
@@ -719,12 +716,6 @@
  for details on this methods.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
-                                   <a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
-                                   <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -854,22 +845,22 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newCompactedfiles,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;results)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newCompactedfiles,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;results)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newCompactedfiles,
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;results)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;newCompactedfiles,
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#addCompactionResults-java.util.Collection-java.util.Collection-">addCompactionResults</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;results)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -1068,12 +1059,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#getUnneededFiles-long-java.util.List-">getUnneededFiles</a></span>(long&nbsp;maxTs,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1097,11 +1088,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#insertNewFiles-java.util.Collection-">insertNewFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#insertNewFiles-java.util.Collection-">insertNewFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#insertNewFiles-java.util.Collection-">insertNewFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#insertNewFiles-java.util.Collection-">insertNewFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -1111,11 +1102,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#loadFiles-java.util.List-">loadFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#loadFiles-java.util.List-">loadFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#loadFiles-java.util.List-">loadFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#loadFiles-java.util.List-">loadFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
@@ -1149,21 +1140,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#needsCompaction-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.html#needsCompaction-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#needsCompaction-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.html#needsCompaction-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#needsCompaction-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#needsCompaction-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#notifyChangedReadersObservers-java.util.List-">notifyChangedReadersObservers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs)</code>
 <div class="block">Notify all observers that set of Readers has changed.</div>
@@ -1192,15 +1183,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#preSelect-java.util.List-">preSelect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
@@ -1217,11 +1208,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#removeCompactedFiles-java.util.Collection-">removeCompactedFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#removeCompactedFiles-java.util.Collection-">removeCompactedFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;removedCompactedfiles)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#removeCompactedFiles-java.util.Collection-">removeCompactedFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;removedCompactedfiles)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#removeCompactedFiles-java.util.Collection-">removeCompactedFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;compactedFiles)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
@@ -1249,21 +1240,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#select-java.util.List-boolean-boolean-boolean-">select</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
+<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#select-java.util.List-boolean-boolean-boolean-">select</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
       boolean&nbsp;isUserCompaction,
       boolean&nbsp;mayUseOffPeak,
       boolean&nbsp;forceMajor)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#select-java.util.List-boolean-boolean-boolean-">select</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
+<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#select-java.util.List-boolean-boolean-boolean-">select</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
       boolean&nbsp;isUserCompaction,
       boolean&nbsp;mayUseOffPeak,
       boolean&nbsp;forceMajor)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#select-java.util.List-boolean-boolean-boolean-">select</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#select-java.util.List-boolean-boolean-boolean-">select</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
       boolean&nbsp;isUserCompaction,
       boolean&nbsp;mayUseOffPeak,
       boolean&nbsp;forceMajor)</code>&nbsp;</td>
@@ -1284,6 +1275,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+                                   <a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
+                                   <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                                    <a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
                                    <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>
@@ -1292,12 +1289,6 @@
  for details on this methods.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreFileManager.html#updateCandidateFilesForRowKeyBefore-java.util.Iterator-org.apache.hadoop.hbase.KeyValue-org.apache.hadoop.hbase.Cell-">updateCandidateFilesForRowKeyBefore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
-                                   <a href="../../../../../../org/apache/hadoop/hbase/KeyValue.html" title="class in org.apache.hadoop.hbase">KeyValue</a>&nbsp;targetKey,
-                                   <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;candidate)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#updateReaders-java.util.List-java.util.List-">updateReaders</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
@@ -1338,13 +1329,13 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext.Builder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#withCompactedFilesSupplier-java.util.function.Supplier-">withCompactedFilesSupplier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;&nbsp;compactedFilesSupplier)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter.Builder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileWriter.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html#withCompactedFilesSupplier-java.util.function.Supplier-">withCompactedFilesSupplier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;&nbsp;compactedFilesSupplier)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext.Builder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#withCompactedFilesSupplier-java.util.function.Supplier-">withCompactedFilesSupplier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&gt;&nbsp;compactedFilesSupplier)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#writeCompactionWalRecord-java.util.Collection-java.util.Collection-">writeCompactionWalRecord</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacted,
@@ -1416,6 +1407,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ExploringCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/ExploringCompactionPolicy.html#applyCompactionPolicy-java.util.ArrayList-boolean-boolean-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
+                     boolean&nbsp;mayUseOffPeak,
+                     boolean&nbsp;mightBeStuck)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RatioBasedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/RatioBasedCompactionPolicy.html#applyCompactionPolicy-java.util.ArrayList-boolean-boolean-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
                      boolean&nbsp;mayUseOffPeak,
                      boolean&nbsp;mayBeStuck)</code>
@@ -1424,12 +1421,6 @@
  First exclude bulk-load files if indicated in configuration.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ExploringCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/ExploringCompactionPolicy.html#applyCompactionPolicy-java.util.ArrayList-boolean-boolean-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
-                     boolean&nbsp;mayUseOffPeak,
-                     boolean&nbsp;mightBeStuck)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ExploringCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/ExploringCompactionPolicy.html#applyCompactionPolicy-java.util.List-boolean-boolean-int-int-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
@@ -1525,6 +1516,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ExploringCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/ExploringCompactionPolicy.html#applyCompactionPolicy-java.util.ArrayList-boolean-boolean-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
+                     boolean&nbsp;mayUseOffPeak,
+                     boolean&nbsp;mightBeStuck)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RatioBasedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/RatioBasedCompactionPolicy.html#applyCompactionPolicy-java.util.ArrayList-boolean-boolean-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
                      boolean&nbsp;mayUseOffPeak,
                      boolean&nbsp;mayBeStuck)</code>
@@ -1533,12 +1530,6 @@
  First exclude bulk-load files if indicated in configuration.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ExploringCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/ExploringCompactionPolicy.html#applyCompactionPolicy-java.util.ArrayList-boolean-boolean-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
-                     boolean&nbsp;mayUseOffPeak,
-                     boolean&nbsp;mightBeStuck)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ExploringCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/ExploringCompactionPolicy.html#applyCompactionPolicy-java.util.List-boolean-boolean-int-int-">applyCompactionPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
@@ -1686,6 +1677,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#needsCompaction-java.util.Collection-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#needsCompaction-java.util.Collection-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DateTieredCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/DateTieredCompactionPolicy.html#needsCompaction-java.util.Collection-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>
 <div class="block">Heuristics for guessing whether we need minor compaction.</div>
@@ -1724,16 +1725,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#needsCompaction-java.util.Collection-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles,
-               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#needsCompaction-java.util.Collection-java.util.List-">needsCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;storeFiles,
-               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.html#needsCompactions-org.apache.hadoop.hbase.regionserver.compactions.StripeCompactionPolicy.StripeInformationProvider-java.util.List-">needsCompactions</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.StripeInformationProvider.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.StripeInformationProvider</a>&nbsp;si,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting)</code>&nbsp;</td>
 </tr>
@@ -1776,7 +1767,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 boolean&nbsp;isUserCompaction,
                 boolean&nbsp;mayUseOffPeak,
@@ -1784,7 +1775,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 boolean&nbsp;isUserCompaction,
                 boolean&nbsp;mayUseOffPeak,
@@ -1792,7 +1783,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+<td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 boolean&nbsp;isUserCompaction,
                 boolean&nbsp;mayUseOffPeak,
@@ -1800,7 +1791,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+<td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 boolean&nbsp;isUserCompaction,
                 boolean&nbsp;mayUseOffPeak,
@@ -1833,29 +1824,29 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/DateTieredCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
+<td class="colFirst"><code>abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">CompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">DateTieredCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/DateTieredCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RatioBasedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/RatioBasedCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#shouldPerformMajorCompaction-java.util.Collection-">shouldPerformMajorCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesToCompact)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#skipLargeFiles-java.util.ArrayList-boolean-">skipLargeFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HeapMemoryManager.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HeapMemoryManager.html
index b85cf36..a2c1dcb 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HeapMemoryManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/HeapMemoryManager.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.html" title="class in org.apache.hadoop.hbase.regionserver">HeapMemoryManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getHeapMemoryManager--">getHeapMemoryManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getHeapMemoryManager--">getHeapMemoryManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.html" title="class in org.apache.hadoop.hbase.regionserver">HeapMemoryManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getHeapMemoryManager--">getHeapMemoryManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getHeapMemoryManager--">getHeapMemoryManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/InternalScanner.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/InternalScanner.html
index c8850ec..9e974ac 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/InternalScanner.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/InternalScanner.html
@@ -307,7 +307,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -316,7 +316,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -352,7 +352,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -361,7 +361,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueHeap.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueHeap.html
index 2982d1f..91185a1 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueHeap.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueHeap.html
@@ -118,13 +118,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html" title="class in org.apache.hadoop.hbase.regionserver">KeyValueHeap</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#heap">heap</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html" title="class in org.apache.hadoop.hbase.regionserver">KeyValueHeap</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MemStoreMergerSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreMergerSegmentsIterator.html#heap">heap</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html" title="class in org.apache.hadoop.hbase.regionserver">KeyValueHeap</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#heap">heap</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html" title="class in org.apache.hadoop.hbase.regionserver">KeyValueHeap</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#joinedHeap">joinedHeap</a></span></code>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueScanner.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueScanner.html
index cdeefe6..9abdc39 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueScanner.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/KeyValueScanner.html
@@ -230,13 +230,13 @@
 <td class="colLast"><span class="typeNameLabel">MemStoreSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html#scanners">scanners</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#scannersForDelayedClose">scannersForDelayedClose</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#scannersForDelayedClose">scannersForDelayedClose</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#scannersForDelayedClose">scannersForDelayedClose</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -267,14 +267,14 @@
 <td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#getCurrentForTesting--">getCurrentForTesting</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getScanner-long-">getScanner</a></span>(long&nbsp;readPoint)</code>
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getScanner-long-">getScanner</a></span>(long&nbsp;readPoint)</code>
 <div class="block">Creates the scanner for the given read point</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getScanner-long-">getScanner</a></span>(long&nbsp;readPoint)</code>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getScanner-long-">getScanner</a></span>(long&nbsp;readPoint)</code>
 <div class="block">Creates the scanner for the given read point</div>
 </td>
 </tr>
@@ -386,11 +386,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#getScanners-long-">getScanners</a></span>(long&nbsp;readPt)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getScanners-long-">getScanners</a></span>(long&nbsp;readPoint)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getScanners-long-">getScanners</a></span>(long&nbsp;readPoint)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#getScanners-long-">getScanners</a></span>(long&nbsp;readPt)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
@@ -398,7 +398,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getScanners-long-">getScanners</a></span>(long&nbsp;readPoint)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getScanners-long-">getScanners</a></span>(long&nbsp;readPoint)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;</code></td>
@@ -442,12 +442,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.ReversedKVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.ReversedKVScannerComparator.html#compare-org.apache.hadoop.hbase.regionserver.KeyValueScanner-org.apache.hadoop.hbase.regionserver.KeyValueScanner-">compare</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;left,
+<td class="colLast"><span class="typeNameLabel">KeyValueHeap.KVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.KVScannerComparator.html#compare-org.apache.hadoop.hbase.regionserver.KeyValueScanner-org.apache.hadoop.hbase.regionserver.KeyValueScanner-">compare</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;left,
        <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;right)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueHeap.KVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.KVScannerComparator.html#compare-org.apache.hadoop.hbase.regionserver.KeyValueScanner-org.apache.hadoop.hbase.regionserver.KeyValueScanner-">compare</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;left,
+<td class="colLast"><span class="typeNameLabel">ReversedKeyValueHeap.ReversedKVScannerComparator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ReversedKeyValueHeap.ReversedKVScannerComparator.html#compare-org.apache.hadoop.hbase.regionserver.KeyValueScanner-org.apache.hadoop.hbase.regionserver.KeyValueScanner-">compare</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;left,
        <a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&nbsp;right)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/LeaseManager.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/LeaseManager.html
index 8c32681..362653d 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/LeaseManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/LeaseManager.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/LeaseManager.html" title="class in org.apache.hadoop.hbase.regionserver">LeaseManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getLeaseManager--">getLeaseManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getLeaseManager--">getLeaseManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/LeaseManager.html" title="class in org.apache.hadoop.hbase.regionserver">LeaseManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getLeaseManager--">getLeaseManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getLeaseManager--">getLeaseManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreCompactionStrategy.Action.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreCompactionStrategy.Action.html
index cb3e453..9c51ad4 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreCompactionStrategy.Action.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreCompactionStrategy.Action.html
@@ -112,32 +112,32 @@
 <td class="colLast"><span class="typeNameLabel">BasicMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/BasicMemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
 <td class="colLast"><span class="typeNameLabel">EagerMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/EagerMemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getFlattenAction--">getFlattenAction</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#getFlattenAction--">getFlattenAction</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#getFlattenAction--">getFlattenAction</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getFlattenAction--">getFlattenAction</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getMergingAction--">getMergingAction</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#getMergingAction--">getMergingAction</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#getMergingAction--">getMergingAction</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getMergingAction--">getMergingAction</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
@@ -226,13 +226,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">CellChunkImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
+<td class="colLast"><span class="typeNameLabel">CellArrayImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellArrayImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSegmentsIterator.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSegmentsIterator</a>&nbsp;iterator,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a>&nbsp;action)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">CellArrayImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellArrayImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
+<td class="colLast"><span class="typeNameLabel">CellChunkImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSegmentsIterator.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSegmentsIterator</a>&nbsp;iterator,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a>&nbsp;action)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSegmentsIterator.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSegmentsIterator.html
index 55c102c..21900a6 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSegmentsIterator.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSegmentsIterator.html
@@ -156,13 +156,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">CellChunkImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
+<td class="colLast"><span class="typeNameLabel">CellArrayImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellArrayImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSegmentsIterator.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSegmentsIterator</a>&nbsp;iterator,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a>&nbsp;action)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">CellArrayImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellArrayImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
+<td class="colLast"><span class="typeNameLabel">CellChunkImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkImmutableSegment.html#initializeCellSet-int-org.apache.hadoop.hbase.regionserver.MemStoreSegmentsIterator-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">initializeCellSet</a></span>(int&nbsp;numOfCells,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSegmentsIterator.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSegmentsIterator</a>&nbsp;iterator,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a>&nbsp;action)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSize.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSize.html
index c2afef4..4099543 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSize.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSize.html
@@ -160,11 +160,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getFlushableSize--">getFlushableSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#getFlushableSize--">getFlushableSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#getFlushableSize--">getFlushableSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getFlushableSize--">getFlushableSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
@@ -172,7 +172,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NonThreadSafeMemStoreSizing.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NonThreadSafeMemStoreSizing.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
@@ -180,15 +180,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreSizing.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreSizing.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NonThreadSafeMemStoreSizing.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NonThreadSafeMemStoreSizing.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getMemStoreSize--">getMemStoreSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
@@ -210,15 +210,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#getSnapshotSize--">getSnapshotSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getSnapshotSize--">getSnapshotSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Store.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html#getSnapshotSize--">getSnapshotSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSnapshotSize--">getSnapshotSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#getSnapshotSize--">getSnapshotSize</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#getSnapshotSize--">getSnapshotSize</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSize.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSize</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSizing.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSizing.html
index 74bb6b8..f68acda 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSizing.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSizing.html
@@ -176,13 +176,13 @@
 <td class="colLast"><span class="typeNameLabel">MemStoreSizing.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html#DUD">DUD</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#memStoreSizing">memStoreSizing</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#memStoreSizing">memStoreSizing</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#memStoreSizing">memStoreSizing</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.PrepareFlushResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.PrepareFlushResult.html#totalFlushableSize">totalFlushableSize</a></span></code>&nbsp;</td>
@@ -214,16 +214,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-   <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
 <div class="block">Adds a value to the memstore</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+   <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
@@ -233,16 +233,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
-   <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
 <div class="block">Adds the specified value to the memstore</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#add-java.lang.Iterable-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
+   <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.BatchOperation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.BatchOperation.html#applyFamilyMapToMemStore-java.util.Map-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">applyFamilyMapToMemStore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&gt;&nbsp;familyMap,
@@ -317,14 +317,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            boolean&nbsp;mslabUsed,
            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
            boolean&nbsp;sizeAddedPreOperation)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#internalAdd-org.apache.hadoop.hbase.Cell-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">internalAdd</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            boolean&nbsp;mslabUsed,
            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
            boolean&nbsp;sizeAddedPreOperation)</code>&nbsp;</td>
@@ -337,14 +337,6 @@
            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
-         <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-         <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
-<div class="block">Issue any synchronization and test needed before applying the update</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -354,12 +346,20 @@
  overflow</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
          <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
+         <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+         <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
+<div class="block">Issue any synchronization and test needed before applying the update</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">CellChunkImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CellChunkImmutableSegment.html#reinitializeCellSet-int-org.apache.hadoop.hbase.regionserver.KeyValueScanner-org.apache.hadoop.hbase.regionserver.CellSet-org.apache.hadoop.hbase.regionserver.MemStoreSizing-org.apache.hadoop.hbase.regionserver.MemStoreCompactionStrategy.Action-">reinitializeCellSet</a></span>(int&nbsp;numOfCells,
@@ -384,7 +384,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
               boolean&nbsp;succ,
               boolean&nbsp;mslabUsed,
               <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
@@ -392,7 +392,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#updateMetaInfo-org.apache.hadoop.hbase.Cell-boolean-boolean-org.apache.hadoop.hbase.regionserver.MemStoreSizing-boolean-">updateMetaInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cellToAdd,
               boolean&nbsp;succ,
               boolean&nbsp;mslabUsed,
               <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing,
@@ -427,18 +427,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
-      long&nbsp;readpoint,
-      <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
       long&nbsp;readpoint,
       <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
 <div class="block">Adds or replaces the specified KeyValues.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#upsert-java.lang.Iterable-long-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">upsert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells,
+      long&nbsp;readpoint,
+      <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSnapshot.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSnapshot.html
index dc57bc8..7433992 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSnapshot.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MemStoreSnapshot.html
@@ -194,14 +194,12 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
              <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
              <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
-<div class="block">Turns a snapshot of memstore into a set of store files.</div>
-</td>
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
@@ -212,12 +210,14 @@
              <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
              <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
              <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+             <a href="../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
+<div class="block">Turns a snapshot of memstore into a set of store files.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionServer.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionServer.html
index f89484d..267a5e4 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionServer.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionServer.html
@@ -139,11 +139,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">MetricsRegionServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getMetrics--">getMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getMetrics--">getMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">MetricsRegionServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getMetrics--">getMetrics</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getMetrics--">getMetrics</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionSource.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionSource.html
index 3d35792..67663a4 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsRegionSource.html
@@ -170,24 +170,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionAggregateSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionAggregateSourceImpl.html#deregister-org.apache.hadoop.hbase.regionserver.MetricsRegionSource-">deregister</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsRegionSource</a>&nbsp;toRemove)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsRegionAggregateSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionAggregateSource.html#deregister-org.apache.hadoop.hbase.regionserver.MetricsRegionSource-">deregister</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsRegionSource</a>&nbsp;source)</code>
 <div class="block">Remove a region's source.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionAggregateSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionAggregateSourceImpl.html#deregister-org.apache.hadoop.hbase.regionserver.MetricsRegionSource-">deregister</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsRegionSource</a>&nbsp;toRemove)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionAggregateSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionAggregateSourceImpl.html#register-org.apache.hadoop.hbase.regionserver.MetricsRegionSource-">register</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsRegionSource</a>&nbsp;source)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsRegionAggregateSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionAggregateSource.html#register-org.apache.hadoop.hbase.regionserver.MetricsRegionSource-">register</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsRegionSource</a>&nbsp;source)</code>
 <div class="block">Register a MetricsRegionSource as being open.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionAggregateSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionAggregateSourceImpl.html#register-org.apache.hadoop.hbase.regionserver.MetricsRegionSource-">register</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsRegionSource</a>&nbsp;source)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsTableAggregateSource.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsTableAggregateSource.html
index aef6abe..4c188eb 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsTableAggregateSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MetricsTableAggregateSource.html
@@ -130,13 +130,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableAggregateSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsTableAggregateSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableSource.html#getAggregateSource--">getAggregateSource</a></span>()</code>
-<div class="block">Get the aggregate source to which this reports.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableSourceImpl.html#getAggregateSource--">getAggregateSource</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableAggregateSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsTableAggregateSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableSourceImpl.html#getAggregateSource--">getAggregateSource</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableSource.html#getAggregateSource--">getAggregateSource</a></span>()</code>
+<div class="block">Get the aggregate source to which this reports.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableAggregateSource.html" title="interface in org.apache.hadoop.hbase.regionserver">MetricsTableAggregateSource</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MutableSegment.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MutableSegment.html
index 227e560..725d33e 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MutableSegment.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/MutableSegment.html
@@ -190,28 +190,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#postUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-">postUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#postUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-">postUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#postUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-">postUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive)</code>
 <div class="block">Issue any post update synchronization and tests</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#postUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-">postUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#postUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-">postUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected abstract boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
-         <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-         <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
-<div class="block">Issue any synchronization and test needed before applying the update</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
@@ -221,12 +213,20 @@
  overflow</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
          <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#preUpdate-org.apache.hadoop.hbase.regionserver.MutableSegment-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.regionserver.MemStoreSizing-">preUpdate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currentActive,
+         <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+         <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSizing.html" title="interface in org.apache.hadoop.hbase.regionserver">MemStoreSizing</a>&nbsp;memstoreSizing)</code>
+<div class="block">Issue any synchronization and test needed before applying the update</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#pushActiveToPipeline-org.apache.hadoop.hbase.regionserver.MutableSegment-">pushActiveToPipeline</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/MutableSegment.html" title="class in org.apache.hadoop.hbase.regionserver">MutableSegment</a>&nbsp;currActive)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OnlineRegions.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OnlineRegions.html
index a8e8838..4b58cf8 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OnlineRegions.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OnlineRegions.html
@@ -139,11 +139,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/OnlineRegions.html" title="interface in org.apache.hadoop.hbase.regionserver">OnlineRegions</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getOnlineRegions--">getOnlineRegions</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#getOnlineRegions--">getOnlineRegions</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/OnlineRegions.html" title="interface in org.apache.hadoop.hbase.regionserver">OnlineRegions</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionServerCoprocessorEnvironment.html#getOnlineRegions--">getOnlineRegions</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionCoprocessorEnvironment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html#getOnlineRegions--">getOnlineRegions</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OperationStatus.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OperationStatus.html
index b695363..0dd7463 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OperationStatus.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/OperationStatus.html
@@ -119,13 +119,13 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/OperationStatus.html" title="class in org.apache.hadoop.hbase.regionserver">OperationStatus</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniBatchOperationInProgress.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MiniBatchOperationInProgress.html#retCodeDetails">retCodeDetails</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/OperationStatus.html" title="class in org.apache.hadoop.hbase.regionserver">OperationStatus</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.BatchOperation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.BatchOperation.html#retCodeDetails">retCodeDetails</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/OperationStatus.html" title="class in org.apache.hadoop.hbase.regionserver">OperationStatus</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniBatchOperationInProgress.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MiniBatchOperationInProgress.html#retCodeDetails">retCodeDetails</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/OperationStatus.html" title="class in org.apache.hadoop.hbase.regionserver">OperationStatus</a></code></td>
 <td class="colLast"><span class="typeNameLabel">OperationStatus.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/OperationStatus.html#SUCCESS">SUCCESS</a></span></code>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RSRpcServices.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RSRpcServices.html
index a722821..80a4fba 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RSRpcServices.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RSRpcServices.html
@@ -130,11 +130,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setRsRpcServices-org.apache.hadoop.hbase.regionserver.RSRpcServices-">setRsRpcServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html" title="class in org.apache.hadoop.hbase.regionserver">RSRpcServices</a>&nbsp;rsRpcServices)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#setRsRpcServices-org.apache.hadoop.hbase.regionserver.RSRpcServices-">setRsRpcServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html" title="class in org.apache.hadoop.hbase.regionserver">RSRpcServices</a>&nbsp;rsRpcServices)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#setRsRpcServices-org.apache.hadoop.hbase.regionserver.RSRpcServices-">setRsRpcServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html" title="class in org.apache.hadoop.hbase.regionserver">RSRpcServices</a>&nbsp;rsRpcServices)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#setRsRpcServices-org.apache.hadoop.hbase.regionserver.RSRpcServices-">setRsRpcServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html" title="class in org.apache.hadoop.hbase.regionserver">RSRpcServices</a>&nbsp;rsRpcServices)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionCoprocessorHost.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionCoprocessorHost.html
index 0836e97..7eee4ca 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionCoprocessorHost.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionCoprocessorHost.html
@@ -108,20 +108,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html#coprocessorHost">coprocessorHost</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#coprocessorHost">coprocessorHost</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#coprocessorHost">coprocessorHost</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreContext.Builder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html#coprocessorHost">coprocessorHost</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#coprocessorHost">coprocessorHost</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html#coprocessorHost">coprocessorHost</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -133,11 +133,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#getCoprocessorHost--">getCoprocessorHost</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getCoprocessorHost--">getCoprocessorHost</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getCoprocessorHost--">getCoprocessorHost</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StoreContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreContext.html#getCoprocessorHost--">getCoprocessorHost</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver">RegionCoprocessorHost</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerAccounting.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerAccounting.html
index 4966159..f479430 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerAccounting.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerAccounting.html
@@ -125,11 +125,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerAccounting.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerAccounting</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRegionServerAccounting--">getRegionServerAccounting</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRegionServerAccounting--">getRegionServerAccounting</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerAccounting.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerAccounting</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getRegionServerAccounting--">getRegionServerAccounting</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getRegionServerAccounting--">getRegionServerAccounting</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.PostOpenDeployContext.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.PostOpenDeployContext.html
index 83cb330..2deffca 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.PostOpenDeployContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.PostOpenDeployContext.html
@@ -104,14 +104,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#postOpenDeployTasks-org.apache.hadoop.hbase.regionserver.RegionServerServices.PostOpenDeployContext-">postOpenDeployTasks</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.PostOpenDeployContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.PostOpenDeployContext</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#postOpenDeployTasks-org.apache.hadoop.hbase.regionserver.RegionServerServices.PostOpenDeployContext-">postOpenDeployTasks</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.PostOpenDeployContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.PostOpenDeployContext</a>&nbsp;context)</code>
 <div class="block">Tasks to perform after region open to complete deploy of region on regionserver</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#postOpenDeployTasks-org.apache.hadoop.hbase.regionserver.RegionServerServices.PostOpenDeployContext-">postOpenDeployTasks</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.PostOpenDeployContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.PostOpenDeployContext</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.RegionStateTransitionContext.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.RegionStateTransitionContext.html
index 5001da1..c95e16e 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.RegionStateTransitionContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.RegionStateTransitionContext.html
@@ -108,14 +108,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#reportRegionStateTransition-org.apache.hadoop.hbase.regionserver.RegionServerServices.RegionStateTransitionContext-">reportRegionStateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.RegionStateTransitionContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.RegionStateTransitionContext</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#reportRegionStateTransition-org.apache.hadoop.hbase.regionserver.RegionServerServices.RegionStateTransitionContext-">reportRegionStateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.RegionStateTransitionContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.RegionStateTransitionContext</a>&nbsp;context)</code>
 <div class="block">Notify master that a handler requests to change a region state</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#reportRegionStateTransition-org.apache.hadoop.hbase.regionserver.RegionServerServices.RegionStateTransitionContext-">reportRegionStateTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.RegionStateTransitionContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.RegionStateTransitionContext</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#skipReportingTransition-org.apache.hadoop.hbase.regionserver.RegionServerServices.RegionStateTransitionContext-">skipReportingTransition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.RegionStateTransitionContext.html" title="class in org.apache.hadoop.hbase.regionserver">RegionServerServices.RegionStateTransitionContext</a>&nbsp;context)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.html
index 14ea94a..bcee7f5 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/RegionServerServices.html
@@ -350,15 +350,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerProcedureManagerHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/RegionServerProcedureManagerHost.html#initialize-org.apache.hadoop.hbase.regionserver.RegionServerServices-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;rss)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerProcedureManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/RegionServerProcedureManager.html#initialize-org.apache.hadoop.hbase.regionserver.RegionServerServices-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;rss)</code>
 <div class="block">Initialize a globally barriered procedure for region servers.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionServerProcedureManagerHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure/RegionServerProcedureManagerHost.html#initialize-org.apache.hadoop.hbase.regionserver.RegionServerServices-">initialize</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;rss)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -417,11 +417,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionSizeReportingChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeReportingChore.html#rsServices">rsServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerRpcQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html#rsServices">rsServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerRpcQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionServerRpcQuotaManager.html#rsServices">rsServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionSizeReportingChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RegionSizeReportingChore.html#rsServices">rsServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
@@ -590,20 +590,12 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactedHFilesDischarger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactedHFilesDischarger.html#regionServerServices">regionServerServices</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorHost.RegionServerEnvironmentForCoreCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.RegionServerEnvironmentForCoreCoprocessors.html#regionServerServices">regionServerServices</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.html#rsServices">rsServices</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#rsServices">rsServices</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompactedHFilesDischarger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactedHFilesDischarger.html#regionServerServices">regionServerServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
@@ -614,15 +606,23 @@
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#rsServices">rsServices</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.html#rsServices">rsServices</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#rsServices">rsServices</a></span></code>
 <div class="block">The region server services</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironmentForCoreCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironmentForCoreCoprocessors.html#rsServices">rsServices</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#rsServices">rsServices</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SplitLogWorker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SplitLogWorker.html#server">server</a></span></code>
@@ -647,13 +647,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorHost.RegionServerEnvironmentForCoreCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.RegionServerEnvironmentForCoreCoprocessors.html#getRegionServerServices--">getRegionServerServices</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getRegionServerServices--">getRegionServerServices</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorHost.RegionServerEnvironmentForCoreCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.RegionServerEnvironmentForCoreCoprocessors.html#getRegionServerServices--">getRegionServerServices</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.RegionEnvironmentForCoreCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.RegionEnvironmentForCoreCoprocessors.html#getRegionServerServices--">getRegionServerServices</a></span>()</code>&nbsp;</td>
@@ -1044,36 +1044,36 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FlushThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/FlushThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
+<td class="colLast"><span class="typeNameLabel">CompactionThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/CompactionThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
       org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/CompactionThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
+<td class="colLast"><span class="typeNameLabel">FlushThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/FlushThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
       org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PressureAwareCompactionThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/PressureAwareCompactionThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PressureAwareFlushThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/PressureAwareFlushThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/NoLimitThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">PressureAwareThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/PressureAwareThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">NoLimitThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/NoLimitThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">PressureAwareFlushThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/PressureAwareFlushThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>
 <div class="block">Setup controller for the given region server.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">PressureAwareCompactionThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/PressureAwareCompactionThroughputController.html#setup-org.apache.hadoop.hbase.regionserver.RegionServerServices-">setup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ReplicationSourceService.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ReplicationSourceService.html
index f4412fa..7d279d2 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ReplicationSourceService.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ReplicationSourceService.html
@@ -121,11 +121,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ReplicationSourceService.html" title="interface in org.apache.hadoop.hbase.regionserver">ReplicationSourceService</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getReplicationSourceService--">getReplicationSourceService</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getReplicationSourceService--">getReplicationSourceService</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ReplicationSourceService.html" title="interface in org.apache.hadoop.hbase.regionserver">ReplicationSourceService</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getReplicationSourceService--">getReplicationSourceService</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getReplicationSourceService--">getReplicationSourceService</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScanType.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScanType.html
index 1df8dc0..1e763a4 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScanType.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScanType.html
@@ -163,7 +163,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -172,7 +172,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.LimitScope.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.LimitScope.html
index 6732e6e..4cec455 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.LimitScope.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.LimitScope.html
@@ -173,35 +173,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkAnyLimitReached-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkAnyLimitReached</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#checkAnyLimitReached-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkAnyLimitReached</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkBatchLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkBatchLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkAnyLimitReached-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkAnyLimitReached</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#checkBatchLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkBatchLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkSizeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkSizeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkBatchLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkBatchLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#checkSizeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkSizeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkSizeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkSizeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkTimeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkTimeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#checkTimeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkTimeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#checkTimeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkTimeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#checkTimeLimit-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">checkTimeLimit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;checkerScope)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) boolean</code></td>
@@ -238,11 +238,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setSizeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setSizeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#setSizeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setSizeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#setSizeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setSizeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setSizeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setSizeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
@@ -257,11 +257,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setTimeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setTimeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#setTimeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setTimeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
-<td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#setTimeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setTimeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setTimeLimitScope-org.apache.hadoop.hbase.regionserver.ScannerContext.LimitScope-">setTimeLimitScope</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.LimitScope</a>&nbsp;scope)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.NextState.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.NextState.html
index 8a6818d..486d804 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.NextState.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.NextState.html
@@ -131,14 +131,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setScannerState-org.apache.hadoop.hbase.regionserver.ScannerContext.NextState-">setScannerState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a>&nbsp;state)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#setScannerState-org.apache.hadoop.hbase.regionserver.ScannerContext.NextState-">setScannerState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a>&nbsp;state)</code>
 <div class="block">Note that this is not a typical setter.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setScannerState-org.apache.hadoop.hbase.regionserver.ScannerContext.NextState-">setScannerState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a>&nbsp;state)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScannerContext.NextState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
@@ -171,14 +171,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setScannerState-org.apache.hadoop.hbase.regionserver.ScannerContext.NextState-">setScannerState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a>&nbsp;state)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html#setScannerState-org.apache.hadoop.hbase.regionserver.ScannerContext.NextState-">setScannerState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a>&nbsp;state)</code>
 <div class="block">Note that this is not a typical setter.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NoLimitScannerContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/NoLimitScannerContext.html#setScannerState-org.apache.hadoop.hbase.regionserver.ScannerContext.NextState-">setScannerState</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver">ScannerContext.NextState</a>&nbsp;state)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.html
index 076063b..cc6c863 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ScannerContext.html
@@ -200,15 +200,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReversedMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ReversedMobStoreScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResult,
-    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;ctx)</code>
-<div class="block">Firstly reads the cells from the HBase.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
+    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
-    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
+    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
+<div class="block">Gets the next row of keys from the top-most scanner.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
@@ -219,9 +219,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">InternalScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
-    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
-<div class="block">Grab the next row's worth of values.</div>
+<td class="colLast"><span class="typeNameLabel">ReversedMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ReversedMobStoreScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResult,
+    <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;ctx)</code>
+<div class="block">Firstly reads the cells from the HBase.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -233,9 +233,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">KeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/KeyValueHeap.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
+<td class="colLast"><span class="typeNameLabel">InternalScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html#next-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">next</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
     <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
-<div class="block">Gets the next row of keys from the top-most scanner.</div>
+<div class="block">Grab the next row's worth of values.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -245,16 +245,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRaw-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
-       <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScanner.html#nextRaw-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;result,
        <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>
 <div class="block">Grab the next row's worth of values.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRaw-java.util.List-org.apache.hadoop.hbase.regionserver.ScannerContext-">nextRaw</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;outResults,
+       <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionScannerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionScannerImpl.html#nextRow-org.apache.hadoop.hbase.regionserver.ScannerContext-org.apache.hadoop.hbase.Cell-">nextRow</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.html" title="class in org.apache.hadoop.hbase.regionserver">ScannerContext</a>&nbsp;scannerContext,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/SecureBulkLoadManager.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/SecureBulkLoadManager.html
index 4de189f..376dec6 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/SecureBulkLoadManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/SecureBulkLoadManager.html
@@ -117,11 +117,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SecureBulkLoadManager.html" title="class in org.apache.hadoop.hbase.regionserver">SecureBulkLoadManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getSecureBulkLoadManager--">getSecureBulkLoadManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getSecureBulkLoadManager--">getSecureBulkLoadManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SecureBulkLoadManager.html" title="class in org.apache.hadoop.hbase.regionserver">SecureBulkLoadManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getSecureBulkLoadManager--">getSecureBulkLoadManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getSecureBulkLoadManager--">getSecureBulkLoadManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Segment.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Segment.html
index 4216746..99db222 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Segment.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Segment.html
@@ -205,21 +205,21 @@
 <td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getAllSegments--">getAllSegments</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#getSegments--">getSegments</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.html#getSegments--">getSegments</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionPipeline.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactionPipeline.html#getSegments--">getSegments</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultMemStore.html#getSegments--">getSegments</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMemStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMemStore.html#getSegments--">getSegments</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CompactionPipeline.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactionPipeline.html#getSegments--">getSegments</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -241,11 +241,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#updateStats-org.apache.hadoop.hbase.regionserver.Segment-">updateStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&nbsp;replacement)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#updateStats-org.apache.hadoop.hbase.regionserver.Segment-">updateStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&nbsp;replacement)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#updateStats-org.apache.hadoop.hbase.regionserver.Segment-">updateStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&nbsp;replacement)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#updateStats-org.apache.hadoop.hbase.regionserver.Segment-">updateStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html" title="class in org.apache.hadoop.hbase.regionserver">Segment</a>&nbsp;replacement)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ServerNonceManager.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ServerNonceManager.html
index 4a29d85..088801a 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ServerNonceManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/ServerNonceManager.html
@@ -119,14 +119,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ServerNonceManager.html" title="class in org.apache.hadoop.hbase.regionserver">ServerNonceManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getNonceManager--">getNonceManager</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ServerNonceManager.html" title="class in org.apache.hadoop.hbase.regionserver">ServerNonceManager</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getNonceManager--">getNonceManager</a></span>()</code>
 <div class="block">Only required for "old" log replay; if it's removed, remove this.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ServerNonceManager.html" title="class in org.apache.hadoop.hbase.regionserver">ServerNonceManager</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getNonceManager--">getNonceManager</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Store.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Store.html
index 1420112..f5a36b6 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Store.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/Store.html
@@ -270,7 +270,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -279,7 +279,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreConfigInformation.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreConfigInformation.html
index d932d7b..bf55f88 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreConfigInformation.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreConfigInformation.html
@@ -145,13 +145,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreConfigInformation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionPolicy.html#storeConfigInfo">storeConfigInfo</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreConfigInformation</a></code></td>
 <td class="colLast"><span class="typeNameLabel">CompactionConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionConfiguration.html#storeConfigInfo">storeConfigInfo</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreConfigInformation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionPolicy.html#storeConfigInfo">storeConfigInfo</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileInfo.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileInfo.html
index d7a4230..78ee6bc 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileInfo.html
@@ -321,14 +321,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MajorCompactionTTLRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionTTLRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
+<td class="colLast"><span class="typeNameLabel">MajorCompactionRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;storeFiles,
                   long&nbsp;ts)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">MajorCompactionRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
+<td class="colLast"><span class="typeNameLabel">MajorCompactionTTLRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/compaction/MajorCompactionTTLRequest.html#shouldIncludeStore-org.apache.hadoop.hbase.regionserver.HRegionFileSystem-java.lang.String-java.util.Collection-long-">shouldIncludeStore</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionFileSystem</a>&nbsp;fileSystem,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a>&gt;&nbsp;storeFiles,
                   long&nbsp;ts)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileReader.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileReader.html
index ac0a94f..024b45e 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileReader.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileReader.html
@@ -245,13 +245,13 @@
 <td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#createStreamReader-boolean-">createStreamReader</a></span>(boolean&nbsp;canUseDropBehind)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#getReader--">getReader</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileScanner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileScanner.html#getReader--">getReader</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html#getReader--">getReader</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#postStoreFileReaderOpen-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.io.FSDataInputStreamWrapper-long-org.apache.hadoop.hbase.io.hfile.CacheConfig-org.apache.hadoop.hbase.io.Reference-org.apache.hadoop.hbase.regionserver.StoreFileReader-">postStoreFileReaderOpen</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileWriter.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileWriter.html
index 5fc3b32..121d4f4 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileWriter.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/StoreFileWriter.html
@@ -373,13 +373,13 @@
 <td class="colLast"><span class="typeNameLabel">DateTieredMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredMultiFileWriter.html#writers--">writers</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.html#writers--">writers</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html#writers--">writers</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.html#writers--">writers</a></span>()</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -397,13 +397,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.html#preCloseWriter-org.apache.hadoop.hbase.regionserver.StoreFileWriter-">preCloseWriter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;writer)</code>
-<div class="block">Subclasses override this method to be called before we close the give writer.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html#preCloseWriter-org.apache.hadoop.hbase.regionserver.StoreFileWriter-">preCloseWriter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;writer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html#preCloseWriter-org.apache.hadoop.hbase.regionserver.StoreFileWriter-">preCloseWriter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;writer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractMultiFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AbstractMultiFileWriter.html#preCloseWriter-org.apache.hadoop.hbase.regionserver.StoreFileWriter-">preCloseWriter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a>&nbsp;writer)</code>
+<div class="block">Subclasses override this method to be called before we close the give writer.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/TimeRangeTracker.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/TimeRangeTracker.html
index db11ad9..ebfccfe 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/TimeRangeTracker.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/TimeRangeTracker.html
@@ -120,13 +120,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#timeRangeTracker">timeRangeTracker</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
 <td class="colLast"><span class="typeNameLabel">StoreFileWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StoreFileWriter.html#timeRangeTracker">timeRangeTracker</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#timeRangeTracker">timeRangeTracker</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MemStoreSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html#timeRangeTracker">timeRangeTracker</a></span></code>&nbsp;</td>
@@ -157,11 +157,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getTimeRangeTracker--">getTimeRangeTracker</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getTimeRangeTracker--">getTimeRangeTracker</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeImmutableSegment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompositeImmutableSegment.html#getTimeRangeTracker--">getTimeRangeTracker</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Segment.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/Segment.html#getTimeRangeTracker--">getTimeRangeTracker</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/VersionedSegmentsList.html b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/VersionedSegmentsList.html
index c9bce93..862d088 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/VersionedSegmentsList.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/class-use/VersionedSegmentsList.html
@@ -146,13 +146,13 @@
 <td class="colLast"><span class="typeNameLabel">BasicMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/BasicMemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AdaptiveMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/AdaptiveMemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver">MemStoreCompactionStrategy.Action</a></code></td>
 <td class="colLast"><span class="typeNameLabel">EagerMemStoreCompactionStrategy.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/EagerMemStoreCompactionStrategy.html#getAction-org.apache.hadoop.hbase.regionserver.VersionedSegmentsList-">getAction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a>&nbsp;versionedList)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionContext.html b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionContext.html
index 48b29e7..8628aa0 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionContext.html
@@ -140,22 +140,22 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#createCompaction--">createCompaction</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.html#createCompaction--">createCompaction</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createCompaction--">createCompaction</a></span>()</code>
-<div class="block">Creates an instance of a compaction context specific to this engine.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.html#createCompaction--">createCompaction</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html#createCompaction--">createCompaction</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreEngine.html#createCompaction--">createCompaction</a></span>()</code>
+<div class="block">Creates an instance of a compaction context specific to this engine.</div>
+</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionLifeCycleTracker.html b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionLifeCycleTracker.html
index 76c3abb..2228ed4 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionLifeCycleTracker.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionLifeCycleTracker.html
@@ -198,7 +198,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -207,7 +207,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequest.html b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequest.html
index c9f55cd..8b35476 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequest.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequest.html
@@ -188,7 +188,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -197,7 +197,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ValueRewritingObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
+<td class="colLast"><span class="typeNameLabel">WriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html#preCompact-org.apache.hadoop.hbase.coprocessor.ObserverContext-org.apache.hadoop.hbase.regionserver.Store-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-">preCompact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/ObserverContext.html" title="interface in org.apache.hadoop.hbase.coprocessor">ObserverContext</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">RegionCoprocessorEnvironment</a>&gt;&nbsp;c,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a>&nbsp;store,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
           <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequestImpl.html b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequestImpl.html
index be68078..3358553 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequestImpl.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequestImpl.html
@@ -150,11 +150,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#forceSelect-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">forceSelect</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#forceSelect-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">forceSelect</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#forceSelect-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">forceSelect</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;request)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#forceSelect-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-">forceSelect</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;request)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
@@ -165,12 +165,6 @@
 <div class="block">Log a very elaborate compaction completion message.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveCompactedFilesIntoPlace-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.List-org.apache.hadoop.hbase.security.User-">moveCompactedFilesIntoPlace</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
-                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles,
-                           <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -246,7 +240,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 boolean&nbsp;isUserCompaction,
                 boolean&nbsp;mayUseOffPeak,
@@ -254,7 +248,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
+<td class="colLast"><span class="typeNameLabel">SortedCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/SortedCompactionPolicy.html#selectCompaction-java.util.Collection-java.util.List-boolean-boolean-boolean-">selectCompaction</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidateFiles,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;filesCompacting,
                 boolean&nbsp;isUserCompaction,
                 boolean&nbsp;mayUseOffPeak,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequester.html b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequester.html
index 71186e5..60d1b34 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequester.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/compactions/class-use/CompactionRequester.html
@@ -119,11 +119,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequester.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequester</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getCompactionRequestor--">getCompactionRequestor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getCompactionRequestor--">getCompactionRequestor</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequester.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequester</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getCompactionRequestor--">getCompactionRequestor</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getCompactionRequestor--">getCompactionRequestor</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html b/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
index e611047..dd21768 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
@@ -729,20 +729,20 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">FlushType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TimeRangeTracker.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">SplitLogWorker.TaskExecutor.Status</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MemStoreCompactionStrategy.Action</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ChunkCreator.ChunkType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TimeRangeTracker.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultHeapMemoryTuner.StepDirection.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DefaultHeapMemoryTuner.StepDirection</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.IndexType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.NextState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MetricsRegionServerSourceFactoryImpl.FactoryStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">FlushType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ChunkCreator.ChunkType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">BloomType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">SplitLogWorker.TaskExecutor.Status</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.IndexType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultHeapMemoryTuner.StepDirection.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DefaultHeapMemoryTuner.StepDirection</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html
index 3cf2807..efe2729 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html
@@ -286,7 +286,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html#line.62">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html#line.94">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -306,7 +306,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html#line.62">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html#line.94">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html
index c93c568..d70edc6 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html
@@ -367,7 +367,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html#line.54">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html#line.125">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -387,7 +387,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html#line.54">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html#line.125">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ColumnCount.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ColumnCount.html
index c8f43fe..d500700 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ColumnCount.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ColumnCount.html
@@ -123,10 +123,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnCount.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">ColumnCount</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#getColumnHint--">getColumnHint</a></span>()</code>
-<div class="block">Used by matcher and scan/get to get a hint of the next column
- to seek to after checkColumn() returns SKIP.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#getColumnHint--">getColumnHint</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnCount.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">ColumnCount</a></code></td>
@@ -137,11 +134,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnCount.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">ColumnCount</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#getColumnHint--">getColumnHint</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#getColumnHint--">getColumnHint</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnCount.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">ColumnCount</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#getColumnHint--">getColumnHint</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#getColumnHint--">getColumnHint</a></span>()</code>
+<div class="block">Used by matcher and scan/get to get a hint of the next column
+ to seek to after checkColumn() returns SKIP.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.DeleteResult.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.DeleteResult.html
index 7ad4ca0..ee4df1e 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.DeleteResult.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.DeleteResult.html
@@ -108,20 +108,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Check if the specified cell buffer has been deleted by a previously seen delete.</div>
+<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Check if the specified Cell buffer has been deleted by a previously seen delete.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">This method is not idempotent, we will save some info to judge VERSION_MASKED.</div>
+<td class="colLast"><span class="typeNameLabel">DeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Check if the specified cell buffer has been deleted by a previously seen delete.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Check if the specified Cell buffer has been deleted by a previously seen delete.</div>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">This method is not idempotent, we will save some info to judge VERSION_MASKED.</div>
 </td>
 </tr>
 <tr class="rowColor">
@@ -153,11 +153,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityNewVersionBehaivorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker.DeleteResult</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityNewVersionBehaivorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html#isDeleted-org.apache.hadoop.hbase.Cell-">isDeleted</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.html
index 3ced48f..ead64ee 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/DeleteTracker.html
@@ -219,14 +219,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NormalUserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#deletes">deletes</a></span></code>
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#deletes">deletes</a></span></code>
 <div class="block">Keeps track of deletes</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/CompactionScanQueryMatcher.html#deletes">deletes</a></span></code>
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.querymatcher">DeleteTracker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NormalUserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#deletes">deletes</a></span></code>
 <div class="block">Keeps track of deletes</div>
 </td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ScanQueryMatcher.MatchCode.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ScanQueryMatcher.MatchCode.html
index 2ee35a6..376b4e2 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ScanQueryMatcher.MatchCode.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/class-use/ScanQueryMatcher.MatchCode.html
@@ -104,11 +104,8 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-           byte&nbsp;type)</code>
-<div class="block">Checks if the column is present in the list of requested columns by returning the match code
- instance.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+           byte&nbsp;type)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -120,12 +117,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-           byte&nbsp;type)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+           byte&nbsp;type)</code>
+<div class="block">Checks if the column is present in the list of requested columns by returning the match code
+ instance.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkColumn-org.apache.hadoop.hbase.Cell-byte-">checkColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            byte&nbsp;type)</code>
 <div class="block">Checks if the column is present in the list of requested columns by returning the match code
  instance.</div>
@@ -155,12 +155,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
              long&nbsp;timestamp,
              byte&nbsp;type,
-             boolean&nbsp;ignoreCount)</code>
-<div class="block">Keeps track of the number of versions for the columns asked for.</div>
-</td>
+             boolean&nbsp;ignoreCount)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -173,27 +171,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NewVersionBehaviorTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
-             long&nbsp;timestamp,
-             byte&nbsp;type,
-             boolean&nbsp;ignoreCount)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
              long&nbsp;timestamp,
              byte&nbsp;type,
              boolean&nbsp;ignoreCount)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
-<div class="block">Retrieve the MatchCode for the next row or column</div>
-</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScanWildcardColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanWildcardColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#checkVersions-org.apache.hadoop.hbase.Cell-long-byte-boolean-">checkVersions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
+             long&nbsp;timestamp,
+             byte&nbsp;type,
+             boolean&nbsp;ignoreCount)</code>
+<div class="block">Keeps track of the number of versions for the columns asked for.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -201,15 +191,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScanWildcardColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanWildcardColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NormalUserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ExplicitColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ColumnTracker.html#getNextRowOrNextColumn-org.apache.hadoop.hbase.Cell-">getNextRowOrNextColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
+<div class="block">Retrieve the MatchCode for the next row or column</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -226,7 +218,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StripeCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NormalUserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
@@ -241,6 +233,14 @@
 <td class="colLast"><span class="typeNameLabel">MajorCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">StripeCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.html#match-org.apache.hadoop.hbase.Cell-">match</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher">ScanQueryMatcher.MatchCode</a></code></td>
 <td class="colLast"><span class="typeNameLabel">UserScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html#matchColumn-org.apache.hadoop.hbase.Cell-long-byte-">matchColumn</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
            long&nbsp;timestamp,
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
index c9a6517..25d73f8 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
@@ -130,9 +130,9 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">StripeCompactionScanQueryMatcher.DropDeletesInOutput</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">DeleteTracker.DeleteResult</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">ScanQueryMatcher.MatchCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">StripeCompactionScanQueryMatcher.DropDeletesInOutput</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/throttle/class-use/ThroughputController.html b/devapidocs/org/apache/hadoop/hbase/regionserver/throttle/class-use/ThroughputController.html
index 0a3cd0e..9e411c3 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/throttle/class-use/ThroughputController.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/throttle/class-use/ThroughputController.html
@@ -191,11 +191,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getFlushThroughputController--">getFlushThroughputController</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getFlushThroughputController--">getFlushThroughputController</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getFlushThroughputController--">getFlushThroughputController</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getFlushThroughputController--">getFlushThroughputController</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -234,17 +234,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
        <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
        <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
        <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -265,14 +265,12 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
              <a href="../../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
              <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
-<div class="block">Turns a snapshot of memstore into a set of store files.</div>
-</td>
+             <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
@@ -283,12 +281,14 @@
              <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">StoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/StoreFlusher.html#flushSnapshot-org.apache.hadoop.hbase.regionserver.MemStoreSnapshot-long-org.apache.hadoop.hbase.monitoring.MonitoredTask-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker-">flushSnapshot</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/MemStoreSnapshot.html" title="class in org.apache.hadoop.hbase.regionserver">MemStoreSnapshot</a>&nbsp;snapshot,
              long&nbsp;cacheFlushSeqNum,
              <a href="../../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status,
              <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
-             <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>&nbsp;</td>
+             <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/FlushLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">FlushLifeCycleTracker</a>&nbsp;tracker)</code>
+<div class="block">Turns a snapshot of memstore into a set of store files.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
@@ -479,12 +479,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FlushThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/FlushThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
+<td class="colLast"><span class="typeNameLabel">CompactionThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/CompactionThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
       org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/CompactionThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
+<td class="colLast"><span class="typeNameLabel">FlushThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/FlushThroughputControllerFactory.html#create-org.apache.hadoop.hbase.regionserver.RegionServerServices-org.apache.hadoop.conf.Configuration-">create</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html" title="interface in org.apache.hadoop.hbase.regionserver">RegionServerServices</a>&nbsp;server,
       org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -498,11 +498,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;? extends <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FlushThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/FlushThroughputControllerFactory.html#getThroughputControllerClass-org.apache.hadoop.conf.Configuration-">getThroughputControllerClass</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompactionThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/CompactionThroughputControllerFactory.html#getThroughputControllerClass-org.apache.hadoop.conf.Configuration-">getThroughputControllerClass</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;? extends <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompactionThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/CompactionThroughputControllerFactory.html#getThroughputControllerClass-org.apache.hadoop.conf.Configuration-">getThroughputControllerClass</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FlushThroughputControllerFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/throttle/FlushThroughputControllerFactory.html#getThroughputControllerClass-org.apache.hadoop.conf.Configuration-">getThroughputControllerClass</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html
index e13c837..a66286b 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html
@@ -272,7 +272,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">CompressionContext.DictionaryIndex</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html#line.107">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">CompressionContext.DictionaryIndex</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html#line.57">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -292,7 +292,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">CompressionContext.DictionaryIndex</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html#line.107">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">CompressionContext.DictionaryIndex</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html#line.57">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html
index 3cc9e63..e86fe08 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html
@@ -123,7 +123,7 @@
 <hr>
 <br>
 <pre>@InterfaceAudience.Private
-public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.45">ProtobufLogWriter</a>
+public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.47">ProtobufLogWriter</a>
 extends <a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html" title="class in org.apache.hadoop.hbase.regionserver.wal">AbstractProtobufLogWriter</a>
 implements <a href="../../../../../../org/apache/hadoop/hbase/wal/FSHLogProvider.Writer.html" title="interface in org.apache.hadoop.hbase.wal">FSHLogProvider.Writer</a></pre>
 <div class="block">Writer for protobuf-based WAL.</div>
@@ -295,7 +295,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>LOG</h4>
-<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.48">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.50">LOG</a></pre>
 </li>
 </ul>
 <a name="output">
@@ -304,7 +304,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>output</h4>
-<pre>protected&nbsp;org.apache.hadoop.fs.FSDataOutputStream <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.50">output</a></pre>
+<pre>protected&nbsp;org.apache.hadoop.fs.FSDataOutputStream <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.52">output</a></pre>
 </li>
 </ul>
 <a name="syncedLength">
@@ -313,7 +313,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>syncedLength</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.52">syncedLength</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.54">syncedLength</a></pre>
 </li>
 </ul>
 </li>
@@ -330,7 +330,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>ProtobufLogWriter</h4>
-<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.45">ProtobufLogWriter</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.47">ProtobufLogWriter</a>()</pre>
 </li>
 </ul>
 </li>
@@ -347,7 +347,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>append</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.55">append</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.57">append</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -363,7 +363,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>close</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.66">close</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.68">close</a>()
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -381,7 +381,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>sync</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.82">sync</a>(boolean&nbsp;forceSync)
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.84">sync</a>(boolean&nbsp;forceSync)
           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -397,7 +397,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getSyncedLength</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.97">getSyncedLength</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.99">getSyncedLength</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.WriterBase.html#getSyncedLength--">WALProvider.WriterBase</a></code></span></div>
 <div class="block">NOTE: We add this method for <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><code>WALFileLengthProvider</code></a> used for replication,
  considering the case if we use <a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html" title="class in org.apache.hadoop.hbase.regionserver.wal"><code>AsyncFSWAL</code></a>,we write to 3 DNs concurrently,
@@ -425,7 +425,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStream</h4>
-<pre>public&nbsp;org.apache.hadoop.fs.FSDataOutputStream&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.101">getStream</a>()</pre>
+<pre>public&nbsp;org.apache.hadoop.fs.FSDataOutputStream&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.103">getStream</a>()</pre>
 </li>
 </ul>
 <a name="initOutput-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-">
@@ -434,7 +434,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>initOutput</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.106">initOutput</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.108">initOutput</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                           org.apache.hadoop.fs.Path&nbsp;path,
                           boolean&nbsp;overwritable,
                           int&nbsp;bufferSize,
@@ -457,7 +457,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>writeMagicAndWALHeader</h4>
-<pre>protected&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.121">writeMagicAndWALHeader</a>(byte[]&nbsp;magic,
+<pre>protected&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.134">writeMagicAndWALHeader</a>(byte[]&nbsp;magic,
                                       org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader&nbsp;header)
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html#writeMagicAndWALHeader-byte:A-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader-">AbstractProtobufLogWriter</a></code></span></div>
@@ -476,7 +476,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getOutputStreamForCellEncoder</h4>
-<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.128">getOutputStreamForCellEncoder</a>()</pre>
+<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.141">getOutputStreamForCellEncoder</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html#getOutputStreamForCellEncoder--">getOutputStreamForCellEncoder</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html" title="class in org.apache.hadoop.hbase.regionserver.wal">AbstractProtobufLogWriter</a></code></dd>
@@ -489,7 +489,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>writeWALTrailerAndMagic</h4>
-<pre>protected&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.133">writeWALTrailerAndMagic</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALTrailer&nbsp;trailer,
+<pre>protected&nbsp;long&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#line.146">writeWALTrailerAndMagic</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALTrailer&nbsp;trailer,
                                        byte[]&nbsp;magic)
                                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html
index aadb447..482fc80 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html
@@ -273,7 +273,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener.RollRequestReason</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html#line.65">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener.RollRequestReason</a>[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html#line.72">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -293,7 +293,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener.RollRequestReason</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html#line.65">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener.RollRequestReason</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html#line.72">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/CompressionContext.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/CompressionContext.html
index cdaad6b..8bbee30 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/CompressionContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/CompressionContext.html
@@ -116,9 +116,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.html" title="class in org.apache.hadoop.hbase.regionserver.wal">CompressionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReaderBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ReaderBase.html#compressionContext">compressionContext</a></span></code>
-<div class="block">Compression context to use reading.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">AbstractProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html#compressionContext">compressionContext</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.html" title="class in org.apache.hadoop.hbase.regionserver.wal">CompressionContext</a></code></td>
@@ -130,7 +128,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.html" title="class in org.apache.hadoop.hbase.regionserver.wal">CompressionContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html#compressionContext">compressionContext</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReaderBase.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ReaderBase.html#compressionContext">compressionContext</a></span></code>
+<div class="block">Compression context to use reading.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/ProtobufLogReader.WALHdrContext.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/ProtobufLogReader.WALHdrContext.html
index 632c1c7..e4950ff 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/ProtobufLogReader.WALHdrContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/ProtobufLogReader.WALHdrContext.html
@@ -104,12 +104,12 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.WALHdrContext.html" title="class in org.apache.hadoop.hbase.regionserver.wal">ProtobufLogReader.WALHdrContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.html#readHeader-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder-org.apache.hadoop.fs.FSDataInputStream-">readHeader</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder&nbsp;builder,
+<td class="colLast"><span class="typeNameLabel">ProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.html#readHeader-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder-org.apache.hadoop.fs.FSDataInputStream-">readHeader</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder&nbsp;builder,
           org.apache.hadoop.fs.FSDataInputStream&nbsp;stream)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.WALHdrContext.html" title="class in org.apache.hadoop.hbase.regionserver.wal">ProtobufLogReader.WALHdrContext</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.html#readHeader-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder-org.apache.hadoop.fs.FSDataInputStream-">readHeader</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder&nbsp;builder,
+<td class="colLast"><span class="typeNameLabel">SecureProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.html#readHeader-org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder-org.apache.hadoop.fs.FSDataInputStream-">readHeader</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader.Builder&nbsp;builder,
           org.apache.hadoop.fs.FSDataInputStream&nbsp;stream)</code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/WALActionsListener.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/WALActionsListener.html
index b2b580f..96be88a 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/WALActionsListener.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/class-use/WALActionsListener.html
@@ -281,14 +281,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#listeners">listeners</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#listeners">listeners</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#listeners">listeners</a></span></code>&nbsp;</td>
 </tr>
@@ -296,6 +288,14 @@
 <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DisabledWALProvider.DisabledWAL.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.DisabledWAL.html#listeners">listeners</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#listeners">listeners</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#listeners">listeners</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -307,7 +307,17 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>
+<div class="block">Add a <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal"><code>WALActionsListener</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -315,17 +325,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>
-<div class="block">Add a <a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal"><code>WALActionsListener</code></a>.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">addWALActionsListener</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/package-tree.html b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/package-tree.html
index af94ffe..1e32a9c 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/wal/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/wal/package-tree.html
@@ -249,10 +249,10 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">WALActionsListener.RollRequestReason</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">CompressionContext.DictionaryIndex</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/RingBufferTruck.Type.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">RingBufferTruck.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.WALHdrResult.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">ProtobufLogReader.WALHdrResult</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">WALActionsListener.RollRequestReason</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/RingBufferTruck.Type.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">RingBufferTruck.Type</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html b/devapidocs/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html
index e164119..bdacd18 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html
@@ -238,7 +238,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html#line.51">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html#line.119">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -258,7 +258,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html#line.51">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html#line.119">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html b/devapidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html
index 40b486e..547b163 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/SyncReplicationState.html
@@ -314,7 +314,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.37">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.74">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -334,7 +334,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.37">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/replication/SyncReplicationState.html#line.74">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.Context.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.Context.html
index 46cfef0..aab0247 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.Context.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.Context.html
@@ -127,7 +127,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/BaseReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -137,7 +137,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/BaseReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -155,11 +155,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RegionReplicaReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseInterClusterReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/HBaseInterClusterReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseInterClusterReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/HBaseInterClusterReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RegionReplicaReplicationEndpoint.html#init-org.apache.hadoop.hbase.replication.ReplicationEndpoint.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.Context</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.ReplicateContext.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.ReplicateContext.html
index 71244bb..6f50f7d 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.ReplicateContext.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationEndpoint.ReplicateContext.html
@@ -135,13 +135,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>
-<div class="block">Replicate the given set of entries (in the context) to the other cluster.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">VerifyWALEntriesReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/VerifyWALEntriesReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">VerifyWALEntriesReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/VerifyWALEntriesReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>
+<div class="block">Replicate the given set of entries (in the context) to the other cluster.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -165,14 +165,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RegionReplicaReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseInterClusterReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/HBaseInterClusterReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>
 <div class="block">Do the shipping logic</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">RegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RegionReplicaReplicationEndpoint.html#replicate-org.apache.hadoop.hbase.replication.ReplicationEndpoint.ReplicateContext-">replicate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.ReplicateContext.html" title="class in org.apache.hadoop.hbase.replication">ReplicationEndpoint.ReplicateContext</a>&nbsp;replicateContext)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationException.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationException.html
index 6f63779..d22619f 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationException.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationException.html
@@ -195,38 +195,38 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                  <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
+                  boolean&nbsp;enabled)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                   <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
                   boolean&nbsp;enabled)</code>
 <div class="block">Add a new replication peer for replicating data to slave cluster</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                  <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
-                  boolean&nbsp;enabled)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#disableReplicationPeer-java.lang.String-">disableReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#disableReplicationPeer-java.lang.String-">disableReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Stop the replication stream to the specified peer</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#disableReplicationPeer-java.lang.String-">disableReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#enableReplicationPeer-java.lang.String-">enableReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#enableReplicationPeer-java.lang.String-">enableReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Restart the replication stream to the specified peer</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#enableReplicationPeer-java.lang.String-">enableReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#finishActiveMasterInitialization-org.apache.hadoop.hbase.monitoring.MonitoredTask-">finishActiveMasterInitialization</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredTask</a>&nbsp;status)</code>
@@ -235,13 +235,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
-<div class="block">Returns the configured ReplicationPeerConfig for the specified peer</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
+<div class="block">Returns the configured ReplicationPeerConfig for the specified peer</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
@@ -251,48 +251,48 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>
 <div class="block">Return a list of replication peers.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#removeReplicationPeer-java.lang.String-">removeReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#removeReplicationPeer-java.lang.String-">removeReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Removes a peer and stops the replication</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#removeReplicationPeer-java.lang.String-">removeReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                                          <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                           <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;clusterState)</code>
 <div class="block">Set current cluster state for a synchronous replication peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                                          <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                           <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                            <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>
 <div class="block">Update the peerConfig for the specified peer</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                           <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -360,11 +360,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#postPeerModification-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">postPeerModification</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
@@ -441,11 +441,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updateLastPushedSequenceIdForSerialPeer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updateLastPushedSequenceIdForSerialPeer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -454,11 +454,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RemovePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/RemovePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/DisablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
@@ -466,15 +466,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">EnablePeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/EnablePeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#updatePeerStorage-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">updatePeerStorage</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>&nbsp;env)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -503,16 +503,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addHFileRefs-java.lang.String-java.util.List-">addHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;&gt;&nbsp;pairs)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#addHFileRefs-java.lang.String-java.util.List-">addHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;&gt;&nbsp;pairs)</code>
 <div class="block">Add new hfile references to the queue.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addHFileRefs-java.lang.String-java.util.List-">addHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;&gt;&nbsp;pairs)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addLastSeqIdsToOps-java.lang.String-java.util.Map-java.util.List-">addLastSeqIdsToOps</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
@@ -543,42 +543,42 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addPeerToHFileRefs-java.lang.String-">addPeerToHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#addPeerToHFileRefs-java.lang.String-">addPeerToHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Add a peer to hfile reference queue if peer does not exist.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addPeerToHFileRefs-java.lang.String-">addPeerToHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">addWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#addWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">addWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
 <div class="block">Add a new WAL file to the given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">addWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+          <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
           <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>
 <div class="block">Change ownership for the queue identified by queueId and belongs to a dead region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-          <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerImpl</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeers.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeers.html#createPeer-java.lang.String-">createPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
@@ -587,70 +587,70 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllHFileRefs--">getAllHFileRefs</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getAllHFileRefs--">getAllHFileRefs</a></span>()</code>
 <div class="block">Load all hfile references in all replication queues.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllHFileRefs--">getAllHFileRefs</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllPeersFromHFileRefsQueue--">getAllPeersFromHFileRefsQueue</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getAllPeersFromHFileRefsQueue--">getAllPeersFromHFileRefsQueue</a></span>()</code>
 <div class="block">Get list of all peers from hfile reference queue.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllPeersFromHFileRefsQueue--">getAllPeersFromHFileRefsQueue</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllQueues-org.apache.hadoop.hbase.ServerName-">getAllQueues</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getAllQueues-org.apache.hadoop.hbase.ServerName-">getAllQueues</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Get a list of all queues for the specified region server.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllQueues-org.apache.hadoop.hbase.ServerName-">getAllQueues</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllWALs--">getAllWALs</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getAllWALs--">getAllWALs</a></span>()</code>
 <div class="block">Load all wals in all replication queues.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getAllWALs--">getAllWALs</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected int</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getHFileRefsZNodeCversion--">getHFileRefsZNodeCversion</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getLastSequenceId-java.lang.String-java.lang.String-">getLastSequenceId</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;encodedRegionName,
+                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getLastSequenceId-java.lang.String-java.lang.String-">getLastSequenceId</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;encodedRegionName,
                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Read the max sequence id of the specific region for a given peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getLastSequenceId-java.lang.String-java.lang.String-">getLastSequenceId</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;encodedRegionName,
-                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>
 <div class="block">Get a list of all region servers that have outstanding replication queues.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getListOfReplicators--">getListOfReplicators</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.conf.Configuration</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationUtils.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationUtils.html#getPeerClusterConfiguration-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-org.apache.hadoop.conf.Configuration-">getPeerClusterConfiguration</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
@@ -688,13 +688,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getReplicableHFiles-java.lang.String-">getReplicableHFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
-<div class="block">Get a list of all hfile references in the given peer.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getReplicableHFiles-java.lang.String-">getReplicableHFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getReplicableHFiles-java.lang.String-">getReplicableHFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getReplicableHFiles-java.lang.String-">getReplicableHFiles</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
+<div class="block">Get a list of all hfile references in the given peer.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a></code></td>
@@ -703,30 +703,30 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">getWALPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">getWALPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
 <div class="block">Get the current position for a specific WAL in a given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">getWALPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALsInQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#getWALsInQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>
 <div class="block">Get a list of all WALs in the given queue on the given region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getWALsInQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">getWALsInQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeers.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeers.html#init--">init</a></span>()</code>&nbsp;</td>
@@ -770,38 +770,38 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeHFileRefs-java.lang.String-java.util.List-">removeHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;files)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeHFileRefs-java.lang.String-java.util.List-">removeHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;files)</code>
 <div class="block">Remove hfile references from the queue.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeHFileRefs-java.lang.String-java.util.List-">removeHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;files)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeLastSequenceIds-java.lang.String-">removeLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeLastSequenceIds-java.lang.String-">removeLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Remove all the max sequence id record for the given peer.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeLastSequenceIds-java.lang.String-">removeLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeLastSequenceIds-java.lang.String-java.util.List-">removeLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;encodedRegionNames)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeLastSequenceIds-java.lang.String-java.util.List-">removeLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;encodedRegionNames)</code>
 <div class="block">Remove the max sequence id record for the given peer and regions.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeLastSequenceIds-java.lang.String-java.util.List-">removeLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;encodedRegionNames)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerStorage.html#removePeer-java.lang.String-">removePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
@@ -814,62 +814,62 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removePeerFromHFileRefs-java.lang.String-">removePeerFromHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removePeerFromHFileRefs-java.lang.String-">removePeerFromHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
 <div class="block">Remove a peer from hfile reference queue.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removePeerFromHFileRefs-java.lang.String-">removePeerFromHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">removeQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">removeQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>
 <div class="block">Remove a replication queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">removeQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeReplicatorIfQueueIsEmpty-org.apache.hadoop.hbase.ServerName-">removeReplicatorIfQueueIsEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeReplicatorIfQueueIsEmpty-org.apache.hadoop.hbase.ServerName-">removeReplicatorIfQueueIsEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
 <div class="block">Remove the record of region server if the queue is empty.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeReplicatorIfQueueIsEmpty-org.apache.hadoop.hbase.ServerName-">removeReplicatorIfQueueIsEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">removeWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#removeWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">removeWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>
 <div class="block">Remove an WAL file from the given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#removeWAL-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-">removeWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#setLastSequenceIds-java.lang.String-java.util.Map-">setLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#setLastSequenceIds-java.lang.String-java.util.Map-">setLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>
 <div class="block">Set the max sequence id of a bunch of regions for a given peer.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#setLastSequenceIds-java.lang.String-java.util.Map-">setLastSequenceIds</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerStorage.html#setPeerNewSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">setPeerNewSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
@@ -896,6 +896,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#setWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-long-java.util.Map-">setWALPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName,
+              long&nbsp;position,
+              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#setWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-long-java.util.Map-">setWALPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName,
@@ -904,14 +912,6 @@
 <div class="block">Set the current position for a specific WAL in a given queue for a given regionserver.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#setWALPosition-org.apache.hadoop.hbase.ServerName-java.lang.String-java.lang.String-long-java.util.Map-">setWALPosition</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileName,
-              long&nbsp;position,
-              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;lastSeqIds)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerStorage.html#transitPeerSyncReplicationState-java.lang.String-">transitPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
@@ -991,12 +991,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queue)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#claimReplicationQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-">claimReplicationQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;crashedServer,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queue)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1006,11 +1006,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#disablePeer-java.lang.String-">disablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#disablePeer-java.lang.String-">disablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#disablePeer-java.lang.String-">disablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#disablePeer-java.lang.String-">disablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -1021,11 +1021,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#enablePeer-java.lang.String-">enablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#enablePeer-java.lang.String-">enablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#enablePeer-java.lang.String-">enablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#enablePeer-java.lang.String-">enablePeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -1127,23 +1127,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                int&nbsp;stage,
                                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a>&nbsp;rs)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#transitSyncReplicationPeerState-java.lang.String-int-org.apache.hadoop.hbase.regionserver.HRegionServer-">transitSyncReplicationPeerState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                int&nbsp;stage,
                                <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer</a>&nbsp;rs)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#updatePeerConfig-java.lang.String-">updatePeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#updatePeerConfig-java.lang.String-">updatePeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeerProcedureHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandlerImpl.html#updatePeerConfig-java.lang.String-">updatePeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeerProcedureHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/PeerProcedureHandler.html#updatePeerConfig-java.lang.String-">updatePeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSink.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSink.html
index e9552d0..5ba1d3f 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSink.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSink.html
@@ -121,13 +121,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSink.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSink</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getReplicationLoadSink--">getReplicationLoadSink</a></span>()</code>
-<div class="block">Call directly from client such as hbase shell</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getReplicationLoadSink--">getReplicationLoadSink</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSink.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSink</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getReplicationLoadSink--">getReplicationLoadSink</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getReplicationLoadSink--">getReplicationLoadSink</a></span>()</code>
+<div class="block">Call directly from client such as hbase shell</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSource.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSource.html
index ec5cef1..c961911 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationLoadSource.html
@@ -131,24 +131,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getReplicationLoadSourceList--">getReplicationLoadSourceList</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getReplicationLoadSourceList--">getReplicationLoadSourceList</a></span>()</code>
 <div class="block">Call directly from client such as hbase shell</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getReplicationLoadSourceList--">getReplicationLoadSourceList</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getReplicationLoadSourceMap--">getReplicationLoadSourceMap</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetrics.html#getReplicationLoadSourceMap--">getReplicationLoadSourceMap</a></span>()</code>
 <div class="block">Call directly from client such as hbase shell</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationLoadSource.html" title="class in org.apache.hadoop.hbase.replication">ReplicationLoadSource</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerMetricsBuilder.ServerMetricsImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ServerMetricsBuilder.ServerMetricsImpl.html#getReplicationLoadSourceMap--">getReplicationLoadSourceMap</a></span>()</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.PeerState.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.PeerState.html
index 7f2efcc..44c4b03 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.PeerState.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.PeerState.html
@@ -119,13 +119,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getPeerState--">getPeerState</a></span>()</code>
-<div class="block">Returns the state of the peer by reading local cache.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getPeerState--">getPeerState</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getPeerState--">getPeerState</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getPeerState--">getPeerState</a></span>()</code>
+<div class="block">Returns the state of the peer by reading local cache.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication">ReplicationPeer.PeerState</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.html
index b74699b..5bec452 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeer.html
@@ -248,19 +248,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-    org.apache.hadoop.fs.FileSystem&nbsp;fs,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
-    <a href="../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
     org.apache.hadoop.fs.FileSystem&nbsp;fs,
     <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
@@ -274,6 +261,19 @@
 <div class="block">Instantiation method used by region servers</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+    org.apache.hadoop.fs.FileSystem&nbsp;fs,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
+    <a href="../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfig.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfig.html
index d8fe2b1..b1706b0 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfig.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfig.html
@@ -175,11 +175,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -213,6 +213,12 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                  <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
+                  boolean&nbsp;enabled)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                   <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
@@ -220,15 +226,9 @@
 <div class="block">Add a new replication peer for replicating data to slave cluster.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                  <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
-                  boolean&nbsp;enabled)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                   <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
                   boolean&nbsp;enabled)</code>&nbsp;</td>
 </tr>
@@ -261,20 +261,20 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                           <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                            <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>
 <div class="block">Update the peerConfig for the specified peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                           <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                            <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -475,13 +475,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
-<div class="block">Returns the configured ReplicationPeerConfig for the specified peer</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerConfig-java.lang.String-">getReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId)</code>
+<div class="block">Returns the configured ReplicationPeerConfig for the specified peer</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -494,18 +494,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                  <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
+                  boolean&nbsp;enabled)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                   <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
                   boolean&nbsp;enabled)</code>
 <div class="block">Add a new replication peer for replicating data to slave cluster</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#addReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-boolean-">addReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                  <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig,
-                  boolean&nbsp;enabled)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterCoprocessorHost.html#postAddReplicationPeer-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">postAddReplicationPeer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
@@ -528,16 +528,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                           <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                            <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>
 <div class="block">Update the peerConfig for the specified peer</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#updateReplicationPeerConfig-java.lang.String-org.apache.hadoop.hbase.replication.ReplicationPeerConfig-">updateReplicationPeerConfig</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                           <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -562,11 +562,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#peerConfig">peerConfig</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#peerConfig">peerConfig</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#peerConfig">peerConfig</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#peerConfig">peerConfig</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -583,11 +583,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#getNewPeerConfig--">getNewPeerConfig</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#getNewPeerConfig--">getNewPeerConfig</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AddPeerProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AddPeerProcedure.html#getNewPeerConfig--">getNewPeerConfig</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UpdatePeerConfigProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html#getNewPeerConfig--">getNewPeerConfig</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
@@ -717,24 +717,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#build--">build</a></span>()</code>
 <div class="block">Builds the configuration object from the current state of <code>this</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#build--">build</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getPeerConfig--">getPeerConfig</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getPeerConfig--">getPeerConfig</a></span>()</code>
 <div class="block">Get the peer config object</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getPeerConfig--">getPeerConfig</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationEndpoint.Context.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationEndpoint.Context.html#getPeerConfig--">getPeerConfig</a></span>()</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigBuilder.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigBuilder.html
index 2958d71..0b74c75 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigBuilder.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigBuilder.html
@@ -139,142 +139,142 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#putConfiguration-java.lang.String-java.lang.String-">putConfiguration</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#putConfiguration-java.lang.String-java.lang.String-">putConfiguration</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
 <div class="block">Sets a "raw" configuration property for this replication peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#putConfiguration-java.lang.String-java.lang.String-">putConfiguration</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key,
-                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#putPeerData-byte:A-byte:A-">putPeerData</a></span>(byte[]&nbsp;key,
+           byte[]&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#putPeerData-byte:A-byte:A-">putPeerData</a></span>(byte[]&nbsp;key,
            byte[]&nbsp;value)</code>
 <div class="block">Sets the serialized peer configuration data</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#putPeerData-byte:A-byte:A-">putPeerData</a></span>(byte[]&nbsp;key,
-           byte[]&nbsp;value)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#removeConfiguration-java.lang.String-">removeConfiguration</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#removeConfiguration-java.lang.String-">removeConfiguration</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>
 <div class="block">Removes a "raw" configuration property for this replication peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#removeConfiguration-java.lang.String-">removeConfiguration</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setBandwidth-long-">setBandwidth</a></span>(long&nbsp;bandwidth)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setBandwidth-long-">setBandwidth</a></span>(long&nbsp;bandwidth)</code>
 <div class="block">Sets the speed, in bytes per second, for any one RegionServer to replicate data to the peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setBandwidth-long-">setBandwidth</a></span>(long&nbsp;bandwidth)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setClusterKey-java.lang.String-">setClusterKey</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterKey)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setClusterKey-java.lang.String-">setClusterKey</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterKey)</code>
 <div class="block">Set the clusterKey which is the concatenation of the slave cluster's:
  hbase.zookeeper.quorum:hbase.zookeeper.property.clientPort:zookeeper.znode.parent</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setClusterKey-java.lang.String-">setClusterKey</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterKey)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setExcludeNamespaces-java.util.Set-">setExcludeNamespaces</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;excludeNamespaces)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setExcludeNamespaces-java.util.Set-">setExcludeNamespaces</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;namespaces)</code>
 <div class="block">Sets the collection of namespaces which should not be replicated when all user tables are
  configured to be replicated.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setExcludeNamespaces-java.util.Set-">setExcludeNamespaces</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;excludeNamespaces)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setExcludeTableCFsMap-java.util.Map-">setExcludeTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;excludeTableCFsMap)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setExcludeTableCFsMap-java.util.Map-">setExcludeTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>
 <div class="block">Sets the mapping of table name to column families which should not be replicated.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setExcludeTableCFsMap-java.util.Map-">setExcludeTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;excludeTableCFsMap)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setNamespaces-java.util.Set-">setNamespaces</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;namespaces)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setNamespaces-java.util.Set-">setNamespaces</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;namespaces)</code>
 <div class="block">Sets a unique collection of HBase namespaces that should be replicated to this peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setNamespaces-java.util.Set-">setNamespaces</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;namespaces)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setRemoteWALDir-java.lang.String-">setRemoteWALDir</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;dir)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setRemoteWALDir-java.lang.String-">setRemoteWALDir</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;dir)</code>
 <div class="block">Set the remote peer cluster's wal directory.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setRemoteWALDir-java.lang.String-">setRemoteWALDir</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;dir)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setReplicateAllUserTables-boolean-">setReplicateAllUserTables</a></span>(boolean&nbsp;replicateAllUserTables)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setReplicateAllUserTables-boolean-">setReplicateAllUserTables</a></span>(boolean&nbsp;replicateAllUserTables)</code>
 <div class="block">Configures HBase to replicate all user tables (not system tables) to the peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setReplicateAllUserTables-boolean-">setReplicateAllUserTables</a></span>(boolean&nbsp;replicateAllUserTables)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setReplicationEndpointImpl-java.lang.String-">setReplicationEndpointImpl</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;replicationEndpointImpl)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setReplicationEndpointImpl-java.lang.String-">setReplicationEndpointImpl</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;replicationEndpointImpl)</code>
 <div class="block">Sets the ReplicationEndpoint plugin class for this peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setReplicationEndpointImpl-java.lang.String-">setReplicationEndpointImpl</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;replicationEndpointImpl)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setSerial-boolean-">setSerial</a></span>(boolean&nbsp;serial)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setSerial-boolean-">setSerial</a></span>(boolean&nbsp;serial)</code>
 <div class="block">
  Sets whether we should preserve order when replicating, i.e, serial replication.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setSerial-boolean-">setSerial</a></span>(boolean&nbsp;serial)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setTableCFsMap-java.util.Map-">setTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationPeerConfigBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html#setTableCFsMap-java.util.Map-">setTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>
 <div class="block">Sets an explicit map of tables and column families in those tables that should be replicated
  to the given peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigBuilder.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.ReplicationPeerConfigBuilderImpl.html#setTableCFsMap-java.util.Map-">setTableCFsMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;tableCFsMap)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigListener.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigListener.html
index c4179e7..07ac313 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigListener.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerConfigListener.html
@@ -171,13 +171,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#registerPeerConfigListener-org.apache.hadoop.hbase.replication.ReplicationPeerConfigListener-">registerPeerConfigListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigListener.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigListener</a>&nbsp;listener)</code>
-<div class="block">Register a peer config listener to catch the peer config change event.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#registerPeerConfigListener-org.apache.hadoop.hbase.replication.ReplicationPeerConfigListener-">registerPeerConfigListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigListener.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigListener</a>&nbsp;listener)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#registerPeerConfigListener-org.apache.hadoop.hbase.replication.ReplicationPeerConfigListener-">registerPeerConfigListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigListener.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigListener</a>&nbsp;listener)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#registerPeerConfigListener-org.apache.hadoop.hbase.replication.ReplicationPeerConfigListener-">registerPeerConfigListener</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfigListener.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeerConfigListener</a>&nbsp;listener)</code>
+<div class="block">Register a peer config listener to catch the peer config change event.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerDescription.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerDescription.html
index cf282b4..6d77df5 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerDescription.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeerDescription.html
@@ -131,22 +131,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>
 <div class="block">Return a list of replication peers.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listReplicationPeers--">listReplicationPeers</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
@@ -155,22 +155,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>
 <div class="block">Return a list of replication peers.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listReplicationPeers-java.util.regex.Pattern-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex">Pattern</a>&nbsp;pattern)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&gt;</code></td>
@@ -252,13 +252,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>
-<div class="block">Return a list of replication peers.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listReplicationPeers-java.lang.String-">listReplicationPeers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regex)</code>
+<div class="block">Return a list of replication peers.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeers.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeers.html
index 01f8522..090a72f 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeers.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationPeers.html
@@ -157,11 +157,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeers.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeers</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#replicationPeers">replicationPeers</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationPeerInfoProviderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerInfoProviderImpl.html#replicationPeers">replicationPeers</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeers.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeers</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationPeerInfoProviderImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerInfoProviderImpl.html#replicationPeers">replicationPeers</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#replicationPeers">replicationPeers</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationQueueStorage.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationQueueStorage.html
index 834ae40..d7fc75b 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationQueueStorage.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/ReplicationQueueStorage.html
@@ -297,13 +297,13 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#queueStorage">queueStorage</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#queueStorage">queueStorage</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Replication.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.html#queueStorage">queueStorage</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RecoveredReplicationSourceShipper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSourceShipper.html#replicationQueues">replicationQueues</a></span></code>&nbsp;</td>
@@ -369,19 +369,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-    org.apache.hadoop.fs.FileSystem&nbsp;fs,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
-    <a href="../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
-    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
     org.apache.hadoop.fs.FileSystem&nbsp;fs,
     <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
@@ -395,6 +382,19 @@
 <div class="block">Instantiation method used by region servers</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+    org.apache.hadoop.fs.FileSystem&nbsp;fs,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
+    <a href="../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
+    <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/SyncReplicationState.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/SyncReplicationState.html
index 2a61850..b8b3079 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/SyncReplicationState.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/SyncReplicationState.html
@@ -186,20 +186,20 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                                          <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;clusterState)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                           <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>
 <div class="block">Transit current cluster to a new state in a synchronous replication peer.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                                          <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;clusterState)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                           <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;clusterState)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -303,16 +303,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+                                          <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
 <td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
                                           <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;clusterState)</code>
 <div class="block">Set current cluster state for a synchronous replication peer.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#transitReplicationPeerSyncReplicationState-java.lang.String-org.apache.hadoop.hbase.replication.SyncReplicationState-">transitReplicationPeerSyncReplicationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-                                          <a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a>&nbsp;state)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -464,13 +464,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getSyncReplicationState--">getSyncReplicationState</a></span>()</code>
-<div class="block">Returns the sync replication state of the peer by reading local cache.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getSyncReplicationState--">getSyncReplicationState</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationPeerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerImpl.html#getSyncReplicationState--">getSyncReplicationState</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html#getSyncReplicationState--">getSyncReplicationState</a></span>()</code>
+<div class="block">Returns the sync replication state of the peer by reading local cache.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication">SyncReplicationState</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/class-use/WALEntryFilter.html b/devapidocs/org/apache/hadoop/hbase/replication/class-use/WALEntryFilter.html
index fc9dbc3..4ededad 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/class-use/WALEntryFilter.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/class-use/WALEntryFilter.html
@@ -185,9 +185,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/WALEntryFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALEntryFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/BaseReplicationEndpoint.html#getWALEntryfilter--">getWALEntryfilter</a></span>()</code>
-<div class="block">Returns a default set of filters</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">VerifyWALEntriesReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/VerifyWALEntriesReplicationEndpoint.html#getWALEntryfilter--">getWALEntryfilter</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/WALEntryFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALEntryFilter</a></code></td>
@@ -197,7 +195,9 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/WALEntryFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALEntryFilter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VerifyWALEntriesReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/VerifyWALEntriesReplicationEndpoint.html#getWALEntryfilter--">getWALEntryfilter</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">BaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/BaseReplicationEndpoint.html#getWALEntryfilter--">getWALEntryfilter</a></span>()</code>
+<div class="block">Returns a default set of filters</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsReplicationSourceImpl.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsReplicationSourceImpl.html
index 42631a7..c4864a7d 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsReplicationSourceImpl.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsReplicationSourceImpl.html
@@ -104,15 +104,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceImpl.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsReplicationSourceImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#rms">rms</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#rms">rms</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceImpl.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsReplicationSourceImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#rms">rms</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationTableSourceImpl.html#rms">rms</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceImpl.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsReplicationSourceImpl</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationTableSourceImpl.html#rms">rms</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#rms">rms</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceImpl.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsReplicationSourceImpl</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsSource.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsSource.html
index 8276633..471ac95 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/MetricsSource.html
@@ -161,20 +161,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSourceLogQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html#metrics">metrics</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseInterClusterReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/HBaseInterClusterReplicationEndpoint.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALEntryStream.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSourceLogQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html#metrics">metrics</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -222,19 +222,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-    org.apache.hadoop.fs.FileSystem&nbsp;fs,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
-    <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
     org.apache.hadoop.fs.FileSystem&nbsp;fs,
     <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
@@ -248,6 +235,19 @@
 <div class="block">Instantiation method used by region servers</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+    org.apache.hadoop.fs.FileSystem&nbsp;fs,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
+    <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSource.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSource.html
index e4b90e0..b369a40 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSource.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSource.html
@@ -126,15 +126,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSourceShipper.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.html#source">source</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSourceLogQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html#source">source</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSourceWALReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#source">source</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSourceShipper.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.html#source">source</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSourceLogQueue.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html#source">source</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSourceWALReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#source">source</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceLogQueue.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceLogQueue.html
index 19e7b68..b4fba76 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceLogQueue.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceLogQueue.html
@@ -103,14 +103,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceLogQueue</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSourceShipper.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.html#logQueue">logQueue</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceLogQueue</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ReplicationSourceWALReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#logQueue">logQueue</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceLogQueue</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALEntryStream.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html#logQueue">logQueue</a></span></code>&nbsp;</td>
 </tr>
@@ -118,6 +110,14 @@
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceLogQueue</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#logQueue">logQueue</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceLogQueue</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSourceShipper.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.html#logQueue">logQueue</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceLogQueue.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceLogQueue</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicationSourceWALReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#logQueue">logQueue</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceManager.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceManager.html
index 9218f2f..02aa0c8 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/ReplicationSourceManager.html
@@ -196,19 +196,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-    org.apache.hadoop.fs.FileSystem&nbsp;fs,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
-    <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
     org.apache.hadoop.fs.FileSystem&nbsp;fs,
     <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
@@ -222,6 +209,19 @@
 <div class="block">Instantiation method used by region servers</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+    org.apache.hadoop.fs.FileSystem&nbsp;fs,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
+    <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#uncaughtException-java.lang.Thread-java.lang.Throwable-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-java.lang.String-">uncaughtException</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a>&nbsp;t,
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALEntryBatch.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALEntryBatch.html
index 1320aca..f32de02 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALEntryBatch.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALEntryBatch.html
@@ -192,15 +192,15 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">CatalogReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/CatalogReplicationSource.html#logPositionAndCleanOldLogs-org.apache.hadoop.hbase.replication.regionserver.WALEntryBatch-">logPositionAndCleanOldLogs</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a>&nbsp;entryBatch)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSourceInterface.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceInterface.html#logPositionAndCleanOldLogs-org.apache.hadoop.hbase.replication.regionserver.WALEntryBatch-">logPositionAndCleanOldLogs</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a>&nbsp;entryBatch)</code>
 <div class="block">Log the current position to storage.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">CatalogReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/CatalogReplicationSource.html#logPositionAndCleanOldLogs-org.apache.hadoop.hbase.replication.regionserver.WALEntryBatch-">logPositionAndCleanOldLogs</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a>&nbsp;entryBatch)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">SerialReplicationSourceWALReader.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationSourceWALReader.html#readWALEntries-org.apache.hadoop.hbase.replication.regionserver.WALEntryStream-org.apache.hadoop.hbase.replication.regionserver.WALEntryBatch-">readWALEntries</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream</a>&nbsp;entryStream,
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALFileLengthProvider.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALFileLengthProvider.html
index 52ae14a..269b63f 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALFileLengthProvider.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/class-use/WALFileLengthProvider.html
@@ -199,19 +199,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-    org.apache.hadoop.fs.FileSystem&nbsp;fs,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
-    <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
-    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
     org.apache.hadoop.fs.FileSystem&nbsp;fs,
     <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
@@ -225,6 +212,19 @@
 <div class="block">Instantiation method used by region servers</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RecoveredReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/RecoveredReplicationSource.html#init-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager-org.apache.hadoop.hbase.replication.ReplicationQueueStorage-org.apache.hadoop.hbase.replication.ReplicationPeer-org.apache.hadoop.hbase.Server-java.lang.String-java.util.UUID-org.apache.hadoop.hbase.replication.regionserver.WALFileLengthProvider-org.apache.hadoop.hbase.replication.regionserver.MetricsSource-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+    org.apache.hadoop.fs.FileSystem&nbsp;fs,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceManager</a>&nbsp;manager,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a>&nbsp;queueStorage,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/ReplicationPeer.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationPeer</a>&nbsp;replicationPeer,
+    <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerClusterZnode,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;clusterId,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a>&nbsp;walFileLengthProvider,
+    <a href="../../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">MetricsSource</a>&nbsp;metrics)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
index cdee00f..069bc9b 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
@@ -224,8 +224,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.WorkerState.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">ReplicationSourceShipper.WorkerState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceFactoryImpl.SourceHolder.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">MetricsReplicationSourceFactoryImpl.SourceHolder</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.WorkerState.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">ReplicationSourceShipper.WorkerState</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/rest/class-use/ProtobufMessageHandler.html b/devapidocs/org/apache/hadoop/hbase/rest/class-use/ProtobufMessageHandler.html
index 1646b84..204d011 100644
--- a/devapidocs/org/apache/hadoop/hbase/rest/class-use/ProtobufMessageHandler.html
+++ b/devapidocs/org/apache/hadoop/hbase/rest/class-use/ProtobufMessageHandler.html
@@ -214,7 +214,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CellModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/CellModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NamespacesModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/NamespacesModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
@@ -222,11 +222,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableInfoModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/TableInfoModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StorageClusterStatusModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/RowModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableListModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/TableListModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
@@ -234,23 +234,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StorageClusterStatusModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespacesModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/NamespacesModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableSchemaModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/TableSchemaModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScannerModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/ScannerModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CellModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/CellModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableListModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/TableListModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ScannerModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/ScannerModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/RowModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableInfoModel.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/model/TableInfoModel.html#getObjectFromMessage-byte:A-">getObjectFromMessage</a></span>(byte[]&nbsp;message)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/rest/class-use/TableResource.html b/devapidocs/org/apache/hadoop/hbase/rest/class-use/TableResource.html
index 55cbf85..791f32d 100644
--- a/devapidocs/org/apache/hadoop/hbase/rest/class-use/TableResource.html
+++ b/devapidocs/org/apache/hadoop/hbase/rest/class-use/TableResource.html
@@ -106,23 +106,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionsResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RegionsResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RowResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/MultiRowResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/ScannerResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableScanResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TableScanResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ExistsResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/ExistsResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
@@ -130,7 +114,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ExistsResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/ExistsResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/MultiRowResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionsResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RegionsResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/ScannerResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableScanResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TableScanResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RowResource.html#tableResource">tableResource</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/rest/class-use/VersionResource.html b/devapidocs/org/apache/hadoop/hbase/rest/class-use/VersionResource.html
index fb77293..b3a51e0 100644
--- a/devapidocs/org/apache/hadoop/hbase/rest/class-use/VersionResource.html
+++ b/devapidocs/org/apache/hadoop/hbase/rest/class-use/VersionResource.html
@@ -106,13 +106,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/VersionResource.html" title="class in org.apache.hadoop.hbase.rest">VersionResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VersionResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/VersionResource.html#getVersionResource--">getVersionResource</a></span>()</code>
-<div class="block">Dispatch <tt>/version/rest</tt> to self.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RootResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RootResource.html#getVersionResource--">getVersionResource</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rest/VersionResource.html" title="class in org.apache.hadoop.hbase.rest">VersionResource</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RootResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RootResource.html#getVersionResource--">getVersionResource</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VersionResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/VersionResource.html#getVersionResource--">getVersionResource</a></span>()</code>
+<div class="block">Dispatch <tt>/version/rest</tt> to self.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfo.html b/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfo.html
index 6c1cd60..277bc2f 100644
--- a/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfo.html
@@ -167,11 +167,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.net.Address-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
@@ -181,11 +181,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
@@ -195,11 +195,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;table)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getRSGroup-org.apache.hadoop.hbase.TableName-">getRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;&gt;</code></td>
@@ -208,22 +208,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/Admin.html#listRSGroups--">listRSGroups</a></span>()</code>
 <div class="block">Lists current set of RegionServer groups</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -312,32 +312,32 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>
 <div class="block">Gets <code>RSGroupInfo</code> for the given group name.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroup-java.lang.String-">getRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Get <code>RSGroupInfo</code> for the given table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupForTable-org.apache.hadoop.hbase.TableName-">getRSGroupForTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#getRSGroupInfo-java.lang.String-">getRSGroupInfo</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>
@@ -358,7 +358,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Retrieve the RSGroupInfo a server is affiliated to</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
@@ -368,14 +371,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;hostPort)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Retrieve the RSGroupInfo a server is affiliated to</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#getRSGroupOfServer-org.apache.hadoop.hbase.net.Address-">getRSGroupOfServer</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/net/Address.html" title="class in org.apache.hadoop.hbase.net">Address</a>&nbsp;serverHostPort)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -397,7 +397,10 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#listRSGroups--">listRSGroups</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Lists current set of RegionServer groups.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
@@ -407,14 +410,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupAdminClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminClient.html#listRSGroups--">listRSGroups</a></span>()</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
-<div class="block">Lists current set of RegionServer groups.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#listRSGroups--">listRSGroups</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&gt;</code></td>
@@ -435,18 +435,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#addRSGroup-org.apache.hadoop.hbase.rsgroup.RSGroupInfo-">addRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&nbsp;rsGroupInfo)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html#addRSGroup-org.apache.hadoop.hbase.rsgroup.RSGroupInfo-">addRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&nbsp;rsGroupInfo)</code>
 <div class="block">Add given RSGroupInfo to existing list of group infos.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupInfoManagerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.html#addRSGroup-org.apache.hadoop.hbase.rsgroup.RSGroupInfo-">addRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&nbsp;rsGroupInfo)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledRSGroupInfoManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/DisabledRSGroupInfoManager.html#addRSGroup-org.apache.hadoop.hbase.rsgroup.RSGroupInfo-">addRSGroup</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&nbsp;rsGroupInfo)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupAdminServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminServiceImpl.html#fillTables-org.apache.hadoop.hbase.rsgroup.RSGroupInfo-">fillTables</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfo.html" title="class in org.apache.hadoop.hbase.rsgroup">RSGroupInfo</a>&nbsp;rsGroupInfo)</code>
diff --git a/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfoManager.html b/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfoManager.html
index 056c1c3..0d9ff0c 100644
--- a/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfoManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/rsgroup/class-use/RSGroupInfoManager.html
@@ -121,11 +121,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html" title="interface in org.apache.hadoop.hbase.rsgroup">RSGroupInfoManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getRSGroupInfoManager--">getRSGroupInfoManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getRSGroupInfoManager--">getRSGroupInfoManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html" title="interface in org.apache.hadoop.hbase.rsgroup">RSGroupInfoManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HMaster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/HMaster.html#getRSGroupInfoManager--">getRSGroupInfoManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getRSGroupInfoManager--">getRSGroupInfoManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -165,14 +165,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html" title="interface in org.apache.hadoop.hbase.rsgroup">RSGroupInfoManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSGroupBasedLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupBasedLoadBalancer.html#rsGroupInfoManager">rsGroupInfoManager</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html" title="interface in org.apache.hadoop.hbase.rsgroup">RSGroupInfoManager</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RSGroupAdminServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupAdminServiceImpl.html#rsGroupInfoManager">rsGroupInfoManager</a></span></code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 &nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupInfoManager.html" title="interface in org.apache.hadoop.hbase.rsgroup">RSGroupInfoManager</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RSGroupBasedLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rsgroup/RSGroupBasedLoadBalancer.html#rsGroupInfoManager">rsGroupInfoManager</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AccessChecker.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AccessChecker.html
index d1d95c5..883e6b6 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AccessChecker.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AccessChecker.html
@@ -240,16 +240,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html" title="class in org.apache.hadoop.hbase.security.access">AccessChecker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getAccessChecker--">getAccessChecker</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html" title="class in org.apache.hadoop.hbase.security.access">AccessChecker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RSRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html#getAccessChecker--">getAccessChecker</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html" title="class in org.apache.hadoop.hbase.security.access">AccessChecker</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getAccessChecker--">getAccessChecker</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html" title="class in org.apache.hadoop.hbase.security.access">AccessChecker</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RSRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RSRpcServices.html#getAccessChecker--">getAccessChecker</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html" title="class in org.apache.hadoop.hbase.security.access">AccessChecker</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getAccessChecker--">getAccessChecker</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AuthManager.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AuthManager.html
index 2574dc5..c53f3b5 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AuthManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/AuthManager.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AccessChecker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html#authManager">authManager</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ZKPermissionWatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html#authManager">authManager</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKPermissionWatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html#authManager">authManager</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AccessChecker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html#authManager">authManager</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a></code></td>
@@ -125,11 +125,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AccessChecker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html#getAuthManager--">getAuthManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AccessController.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessController.html#getAuthManager--">getAuthManager</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AccessController.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessController.html#getAuthManager--">getAuthManager</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AccessChecker.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/AccessChecker.html#getAuthManager--">getAuthManager</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/GetUserPermissionsRequest.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/GetUserPermissionsRequest.html
index 1c2106d..b3124b5 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/GetUserPermissionsRequest.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/GetUserPermissionsRequest.html
@@ -119,22 +119,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>
 <div class="block">Get the global/namespace/table permissions for user</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/Permission.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/Permission.html
index 5209aaf..953ee0f 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/Permission.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/Permission.html
@@ -123,18 +123,18 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -143,18 +143,8 @@
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
-      <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
-      <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -163,8 +153,18 @@
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+      <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
+      <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html#setACL-java.lang.String-org.apache.hadoop.hbase.security.access.Permission-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
       <a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&nbsp;perms)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -196,62 +196,62 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#hasUserPermissions-java.lang.String-java.util.List-">hasUserPermissions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
+                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;permissions)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#hasUserPermissions-java.lang.String-java.util.List-">hasUserPermissions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;permissions)</code>
 <div class="block">Check if the user has specific permissions</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#hasUserPermissions-java.lang.String-java.util.List-">hasUserPermissions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;permissions)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#hasUserPermissions-java.lang.String-java.util.List-">hasUserPermissions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;permissions)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#hasUserPermissions-java.lang.String-java.util.List-">hasUserPermissions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
-                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;permissions)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Increment.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Increment.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Get.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Get.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html#setACL-java.util.Map-">setACL</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;perms)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/SnapshotScannerHDFSAclHelper.PathHelper.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/SnapshotScannerHDFSAclHelper.PathHelper.html
index 656f460..835f11d 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/SnapshotScannerHDFSAclHelper.PathHelper.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/SnapshotScannerHDFSAclHelper.PathHelper.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.PathHelper.html" title="class in org.apache.hadoop.hbase.security.access">SnapshotScannerHDFSAclHelper.PathHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotScannerHDFSAclHelper.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.html#pathHelper">pathHelper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotScannerHDFSAclController.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclController.html#pathHelper">pathHelper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.PathHelper.html" title="class in org.apache.hadoop.hbase.security.access">SnapshotScannerHDFSAclHelper.PathHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotScannerHDFSAclController.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclController.html#pathHelper">pathHelper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SnapshotScannerHDFSAclHelper.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.html#pathHelper">pathHelper</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/UserPermission.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/UserPermission.html
index 62ab14c..ec23954 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/UserPermission.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/UserPermission.html
@@ -129,22 +129,22 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>
 <div class="block">Get the global/namespace/table permissions for user</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getUserPermissions-org.apache.hadoop.hbase.security.access.GetUserPermissionsRequest-">getUserPermissions</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/GetUserPermissionsRequest.html" title="class in org.apache.hadoop.hbase.security.access">GetUserPermissionsRequest</a>&nbsp;getUserPermissionsRequest)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -163,25 +163,25 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission,
+     boolean&nbsp;mergeExistingPermissions)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission,
      boolean&nbsp;mergeExistingPermissions)</code>
 <div class="block">Grants user specific permissions</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission,
      boolean&nbsp;mergeExistingPermissions)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission,
-     boolean&nbsp;mergeExistingPermissions)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission,
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#grant-org.apache.hadoop.hbase.security.access.UserPermission-boolean-">grant</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission,
      boolean&nbsp;mergeExistingPermissions)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -191,22 +191,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">Admin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Admin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission)</code>
 <div class="block">Revokes user specific permissions</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AdminOverAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#revoke-org.apache.hadoop.hbase.security.access.UserPermission-">revoke</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPermission)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/ZKPermissionWatcher.html b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/ZKPermissionWatcher.html
index 97f7c85..3bc9207 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/class-use/ZKPermissionWatcher.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/class-use/ZKPermissionWatcher.html
@@ -147,11 +147,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getZKPermissionWatcher--">getZKPermissionWatcher</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getZKPermissionWatcher--">getZKPermissionWatcher</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getZKPermissionWatcher--">getZKPermissionWatcher</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getZKPermissionWatcher--">getZKPermissionWatcher</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html b/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
index 50b5557..b75ed0c 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
@@ -162,11 +162,11 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.HDFSAclOperation.AclType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SnapshotScannerHDFSAclHelper.HDFSAclOperation.AclType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.HDFSAclOperation.OperationType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SnapshotScannerHDFSAclHelper.HDFSAclOperation.OperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessController.OpType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessController.OpType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Action</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Scope.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Scope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.HDFSAclOperation.AclType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SnapshotScannerHDFSAclHelper.HDFSAclOperation.AclType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessController.OpType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessController.OpType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.HDFSAclOperation.OperationType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SnapshotScannerHDFSAclHelper.HDFSAclOperation.OperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.Strategy.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessControlFilter.Strategy</span></a></li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/class-use/SecurityInfo.html b/devapidocs/org/apache/hadoop/hbase/security/class-use/SecurityInfo.html
index dcfb2df..642c980 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/class-use/SecurityInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/class-use/SecurityInfo.html
@@ -253,8 +253,8 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/javax/security/sasl/SaslClient.html?is-external=true" title="class or interface in javax.security.sasl">SaslClient</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/SimpleSaslClientAuthenticationProvider.html#createClient-org.apache.hadoop.conf.Configuration-java.net.InetAddress-org.apache.hadoop.hbase.security.SecurityInfo-org.apache.hadoop.security.token.Token-boolean-java.util.Map-">createClient</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-            <a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;serverAddress,
+<td class="colLast"><span class="typeNameLabel">GssSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/GssSaslClientAuthenticationProvider.html#createClient-org.apache.hadoop.conf.Configuration-java.net.InetAddress-org.apache.hadoop.hbase.security.SecurityInfo-org.apache.hadoop.security.token.Token-boolean-java.util.Map-">createClient</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+            <a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;serverAddr,
             <a href="../../../../../../org/apache/hadoop/hbase/security/SecurityInfo.html" title="class in org.apache.hadoop.hbase.security">SecurityInfo</a>&nbsp;securityInfo,
             org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;token,
             boolean&nbsp;fallbackAllowed,
@@ -262,7 +262,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/javax/security/sasl/SaslClient.html?is-external=true" title="class or interface in javax.security.sasl">SaslClient</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GssSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/GssSaslClientAuthenticationProvider.html#createClient-org.apache.hadoop.conf.Configuration-java.net.InetAddress-org.apache.hadoop.hbase.security.SecurityInfo-org.apache.hadoop.security.token.Token-boolean-java.util.Map-">createClient</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<td class="colLast"><span class="typeNameLabel">DigestSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslClientAuthenticationProvider.html#createClient-org.apache.hadoop.conf.Configuration-java.net.InetAddress-org.apache.hadoop.hbase.security.SecurityInfo-org.apache.hadoop.security.token.Token-boolean-java.util.Map-">createClient</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;serverAddr,
             <a href="../../../../../../org/apache/hadoop/hbase/security/SecurityInfo.html" title="class in org.apache.hadoop.hbase.security">SecurityInfo</a>&nbsp;securityInfo,
             org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;token,
@@ -271,8 +271,8 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/javax/security/sasl/SaslClient.html?is-external=true" title="class or interface in javax.security.sasl">SaslClient</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DigestSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslClientAuthenticationProvider.html#createClient-org.apache.hadoop.conf.Configuration-java.net.InetAddress-org.apache.hadoop.hbase.security.SecurityInfo-org.apache.hadoop.security.token.Token-boolean-java.util.Map-">createClient</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-            <a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;serverAddr,
+<td class="colLast"><span class="typeNameLabel">SimpleSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/SimpleSaslClientAuthenticationProvider.html#createClient-org.apache.hadoop.conf.Configuration-java.net.InetAddress-org.apache.hadoop.hbase.security.SecurityInfo-org.apache.hadoop.security.token.Token-boolean-java.util.Map-">createClient</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+            <a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;serverAddress,
             <a href="../../../../../../org/apache/hadoop/hbase/security/SecurityInfo.html" title="class in org.apache.hadoop.hbase.security">SecurityInfo</a>&nbsp;securityInfo,
             org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;token,
             boolean&nbsp;fallbackAllowed,
diff --git a/devapidocs/org/apache/hadoop/hbase/security/class-use/User.html b/devapidocs/org/apache/hadoop/hbase/security/class-use/User.html
index f286d23..f149f95 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/class-use/User.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/class-use/User.html
@@ -477,11 +477,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerRpcConnection.html#user">user</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#user">user</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#user">user</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerRpcConnection.html#user">user</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -506,11 +506,8 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getRequestUser--">getRequestUser</a></span>()</code>
-<div class="block">Returns the user credentials associated with the current RPC request or not present if no
- credentials were provided.</div>
-</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#getRequestUser--">getRequestUser</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&gt;</code></td>
@@ -520,8 +517,11 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ServerCall.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/ServerCall.html#getRequestUser--">getRequestUser</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#getRequestUser--">getRequestUser</a></span>()</code>
+<div class="block">Returns the user credentials associated with the current RPC request or not present if no
+ credentials were provided.</div>
+</td>
 </tr>
 </tbody>
 </table>
@@ -555,25 +555,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.BlockingRpcChannel</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createBlockingRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createBlockingRpcChannel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
-                        <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;ticket,
-                        int&nbsp;rpcTimeout)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.BlockingRpcChannel</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html#createBlockingRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createBlockingRpcChannel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
                         <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
                         int&nbsp;rpcTimeout)</code>
 <div class="block">Creates a "channel" that can be used by a blocking protobuf service.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createRpcChannel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
-                <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
-                int&nbsp;rpcTimeout)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.BlockingRpcChannel</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createBlockingRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createBlockingRpcChannel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
+                        <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;ticket,
+                        int&nbsp;rpcTimeout)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcClient.html#createRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createRpcChannel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
                 <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
@@ -581,6 +575,12 @@
 <div class="block">Creates a "channel" that can be used by a protobuf service.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>org.apache.hbase.thirdparty.com.google.protobuf.RpcChannel</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractRpcClient.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/AbstractRpcClient.html#createRpcChannel-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.security.User-int-">createRpcChannel</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sn,
+                <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+                int&nbsp;rpcTimeout)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">PriorityFunction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/PriorityFunction.html#getPriority-org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.RequestHeader-org.apache.hbase.thirdparty.com.google.protobuf.Message-org.apache.hadoop.hbase.security.User-">getPriority</a></span>(org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.RequestHeader&nbsp;header,
@@ -1005,11 +1005,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SplitRequest.html#user">user</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompactSplit.CompactionRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionRunner.html#user">user</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompactSplit.CompactionRunner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionRunner.html#user">user</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitRequest.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SplitRequest.html#user">user</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1052,17 +1052,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
        <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DateTieredStoreEngine.DateTieredCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DateTieredStoreEngine.DateTieredCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
        <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DefaultStoreEngine.DefaultCompactionContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/DefaultStoreEngine.DefaultCompactionContext.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
+<td class="colLast"><span class="typeNameLabel">StripeStoreEngine.StripeCompaction.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/StripeStoreEngine.StripeCompaction.html#compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">compact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a>&nbsp;throughputController,
        <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -1104,12 +1104,6 @@
            <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#moveCompactedFilesIntoPlace-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl-java.util.List-org.apache.hadoop.hbase.security.User-">moveCompactedFilesIntoPlace</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionRequestImpl</a>&nbsp;cr,
-                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;newFiles,
-                           <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#postCompact-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.regionserver.HStoreFile-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-org.apache.hadoop.hbase.security.User-">postCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
            <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&nbsp;resultFile,
@@ -1119,7 +1113,7 @@
 <div class="block">Called after the store compaction has completed.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#postCompactSelection-org.apache.hadoop.hbase.regionserver.HStore-java.util.List-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-org.apache.hadoop.hbase.security.User-">postCompactSelection</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;selected,
@@ -1130,11 +1124,11 @@
  candidates.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#preCleanupBulkLoad-org.apache.hadoop.hbase.security.User-">preCleanupBulkLoad</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#preCompact-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.regionserver.InternalScanner-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-org.apache.hadoop.hbase.security.User-">preCompact</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
           <a href="../../../../../../org/apache/hadoop/hbase/regionserver/InternalScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">InternalScanner</a>&nbsp;scanner,
@@ -1145,7 +1139,7 @@
 <div class="block">Called prior to rewriting the store files selected for compaction</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanInfo.html" title="class in org.apache.hadoop.hbase.regionserver">ScanInfo</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#preCompactScannerOpen-org.apache.hadoop.hbase.regionserver.HStore-org.apache.hadoop.hbase.regionserver.ScanType-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest-org.apache.hadoop.hbase.security.User-">preCompactScannerOpen</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
                      <a href="../../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver">ScanType</a>&nbsp;scanType,
@@ -1155,7 +1149,7 @@
 <div class="block">Called prior to opening store scanner for compaction.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#preCompactSelection-org.apache.hadoop.hbase.regionserver.HStore-java.util.List-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">preCompactSelection</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;candidates,
@@ -1165,16 +1159,16 @@
  available candidates.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.html#prePrepareBulkLoad-org.apache.hadoop.hbase.security.User-">prePrepareBulkLoad</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionServerCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.html#preStop-java.lang.String-org.apache.hadoop.hbase.security.User-">preStop</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;message,
        <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#requestCompaction-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.HStore-java.lang.String-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">requestCompaction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
@@ -1183,7 +1177,7 @@
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionLifeCycleTracker</a>&nbsp;tracker,
                  <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#requestCompaction-org.apache.hadoop.hbase.regionserver.HRegion-java.lang.String-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">requestCompaction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;why,
@@ -1191,13 +1185,13 @@
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionLifeCycleTracker</a>&nbsp;tracker,
                  <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">HStore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html#requestCompaction-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.security.User-">requestCompaction</a></span>(int&nbsp;priority,
                  <a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionLifeCycleTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">CompactionLifeCycleTracker</a>&nbsp;tracker,
                  <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#requestCompactionInternal-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.HStore-java.lang.String-int-boolean-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.CompactSplit.CompactionCompleteTracker-org.apache.hadoop.hbase.security.User-">requestCompactionInternal</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
                          <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
@@ -1208,7 +1202,7 @@
                          <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionCompleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">CompactSplit.CompactionCompleteTracker</a>&nbsp;completeTracker,
                          <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#requestCompactionInternal-org.apache.hadoop.hbase.regionserver.HRegion-java.lang.String-int-boolean-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.CompactSplit.CompactionCompleteTracker-org.apache.hadoop.hbase.security.User-">requestCompactionInternal</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;why,
@@ -1218,13 +1212,13 @@
                          <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionCompleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">CompactSplit.CompactionCompleteTracker</a>&nbsp;completeTracker,
                          <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#requestSplit-org.apache.hadoop.hbase.regionserver.Region-byte:A-org.apache.hadoop.hbase.security.User-">requestSplit</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Region.html" title="interface in org.apache.hadoop.hbase.regionserver">Region</a>&nbsp;r,
             byte[]&nbsp;midKey,
             <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/regionserver/compactions/CompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">CompactionContext</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">CompactSplit.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.html#selectCompaction-org.apache.hadoop.hbase.regionserver.HRegion-org.apache.hadoop.hbase.regionserver.HStore-int-org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker-org.apache.hadoop.hbase.regionserver.CompactSplit.CompactionCompleteTracker-org.apache.hadoop.hbase.security.User-">selectCompaction</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html" title="class in org.apache.hadoop.hbase.regionserver">HRegion</a>&nbsp;region,
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/HStore.html" title="class in org.apache.hadoop.hbase.regionserver">HStore</a>&nbsp;store,
@@ -1233,7 +1227,7 @@
                 <a href="../../../../../../org/apache/hadoop/hbase/regionserver/CompactSplit.CompactionCompleteTracker.html" title="interface in org.apache.hadoop.hbase.regionserver">CompactSplit.CompactionCompleteTracker</a>&nbsp;completeTracker,
                 <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#stop-java.lang.String-boolean-org.apache.hadoop.hbase.security.User-">stop</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
     boolean&nbsp;force,
@@ -1469,14 +1463,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html#create-org.apache.hadoop.security.UserGroupInformation-">create</a></span>(org.apache.hadoop.security.UserGroupInformation&nbsp;ugi)</code>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
+<td class="colLast"><span class="typeNameLabel">User.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/User.html#create-org.apache.hadoop.security.UserGroupInformation-">create</a></span>(org.apache.hadoop.security.UserGroupInformation&nbsp;ugi)</code>
 <div class="block">Wraps an underlying <code>UserGroupInformation</code> instance.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">User.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/User.html#create-org.apache.hadoop.security.UserGroupInformation-">create</a></span>(org.apache.hadoop.security.UserGroupInformation&nbsp;ugi)</code>
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
+<td class="colLast"><span class="typeNameLabel">UserProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html#create-org.apache.hadoop.security.UserGroupInformation-">create</a></span>(org.apache.hadoop.security.UserGroupInformation&nbsp;ugi)</code>
 <div class="block">Wraps an underlying <code>UserGroupInformation</code> instance.</div>
 </td>
 </tr>
@@ -1495,15 +1489,15 @@
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;groups)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UserProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html#getCurrent--">getCurrent</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
 <td class="colLast"><span class="typeNameLabel">User.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/User.html#getCurrent--">getCurrent</a></span>()</code>
 <div class="block">Returns the <code>User</code> instance within current execution context.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
+<td class="colLast"><span class="typeNameLabel">UserProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html#getCurrent--">getCurrent</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Superusers.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/Superusers.html#getSystemUser--">getSystemUser</a></span>()</code>&nbsp;</td>
@@ -1552,11 +1546,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AccessControlFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.html#user">user</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AuthResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthResult.html#user">user</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AuthResult.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthResult.html#user">user</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AccessControlFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.html#user">user</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2084,15 +2078,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation</code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/SimpleSaslClientAuthenticationProvider.html#getUserInfo-org.apache.hadoop.hbase.security.User-">getUserInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">GssSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/GssSaslClientAuthenticationProvider.html#getUserInfo-org.apache.hadoop.hbase.security.User-">getUserInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation</code></td>
-<td class="colLast"><span class="typeNameLabel">GssSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/GssSaslClientAuthenticationProvider.html#getUserInfo-org.apache.hadoop.hbase.security.User-">getUserInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DigestSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslClientAuthenticationProvider.html#getUserInfo-org.apache.hadoop.hbase.security.User-">getUserInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation</code></td>
-<td class="colLast"><span class="typeNameLabel">DigestSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslClientAuthenticationProvider.html#getUserInfo-org.apache.hadoop.hbase.security.User-">getUserInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleSaslClientAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/SimpleSaslClientAuthenticationProvider.html#getUserInfo-org.apache.hadoop.hbase.security.User-">getUserInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.shaded.protobuf.generated.RPCProtos.UserInformation</code></td>
@@ -2110,17 +2104,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
+              <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AuthenticationProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
               <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>
 <div class="block">Chooses the authentication provider which should be used given the provided client context
  from the authentication providers passed in via <a href="../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#configure-org.apache.hadoop.conf.Configuration-java.util.Collection-"><code>AuthenticationProviderSelector.configure(Configuration, Collection)</code></a>.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
-              <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -2272,16 +2266,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FeedUserAuthScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/visibility/FeedUserAuthScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
-         <a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">EnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/visibility/EnforcingScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
-         <a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefinedSetFilterScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/visibility/DefinedSetFilterScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
          <a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
@@ -2298,6 +2282,16 @@
          <a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">EnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/visibility/EnforcingScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+         <a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FeedUserAuthScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/visibility/FeedUserAuthScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+         <a href="../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">VisibilityLabelService.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html#havingSystemAuth-org.apache.hadoop.hbase.security.User-">havingSystemAuth</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>
 <div class="block">System checks for user auth during admin operations.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/class-use/UserProvider.html b/devapidocs/org/apache/hadoop/hbase/security/class-use/UserProvider.html
index 4376756..5be0f77 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/class-use/UserProvider.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/class-use/UserProvider.html
@@ -225,7 +225,9 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html" title="class in org.apache.hadoop.hbase.security">UserProvider</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureBulkLoadManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SecureBulkLoadManager.html#userProvider">userProvider</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserAggregateImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserAggregateImpl.html#userProvider">userProvider</a></span></code>
+<div class="block">Provider for mapping principal names to Users</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html" title="class in org.apache.hadoop.hbase.security">UserProvider</a></code></td>
@@ -233,9 +235,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/UserProvider.html" title="class in org.apache.hadoop.hbase.security">UserProvider</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserAggregateImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserAggregateImpl.html#userProvider">userProvider</a></span></code>
-<div class="block">Provider for mapping principal names to Users</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">SecureBulkLoadManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/SecureBulkLoadManager.html#userProvider">userProvider</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/package-tree.html b/devapidocs/org/apache/hadoop/hbase/security/package-tree.html
index 5c5c2f5..0b85236 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/package-tree.html
@@ -189,8 +189,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/AuthMethod.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">AuthMethod</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/SaslStatus.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/AuthMethod.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">AuthMethod</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/SaslUtil.QualityOfProtection.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslUtil.QualityOfProtection</span></a></li>
 </ul>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/AttemptingUserProvidingSaslServer.html b/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/AttemptingUserProvidingSaslServer.html
index c17cb9d..3affde3 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/AttemptingUserProvidingSaslServer.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/AttemptingUserProvidingSaslServer.html
@@ -130,7 +130,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/AttemptingUserProvidingSaslServer.html" title="class in org.apache.hadoop.hbase.security.provider">AttemptingUserProvidingSaslServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DigestSaslServerAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslServerAuthenticationProvider.html#createServer-org.apache.hadoop.security.token.SecretManager-java.util.Map-">createServer</a></span>(org.apache.hadoop.security.token.SecretManager&lt;org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;secretManager,
+<td class="colLast"><span class="typeNameLabel">GssSaslServerAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/GssSaslServerAuthenticationProvider.html#createServer-org.apache.hadoop.security.token.SecretManager-java.util.Map-">createServer</a></span>(org.apache.hadoop.security.token.SecretManager&lt;org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;secretManager,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;saslProps)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -142,7 +142,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/AttemptingUserProvidingSaslServer.html" title="class in org.apache.hadoop.hbase.security.provider">AttemptingUserProvidingSaslServer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">GssSaslServerAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/GssSaslServerAuthenticationProvider.html#createServer-org.apache.hadoop.security.token.SecretManager-java.util.Map-">createServer</a></span>(org.apache.hadoop.security.token.SecretManager&lt;org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;secretManager,
+<td class="colLast"><span class="typeNameLabel">DigestSaslServerAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslServerAuthenticationProvider.html#createServer-org.apache.hadoop.security.token.SecretManager-java.util.Map-">createServer</a></span>(org.apache.hadoop.security.token.SecretManager&lt;org.apache.hadoop.security.token.TokenIdentifier&gt;&nbsp;secretManager,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;saslProps)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
diff --git a/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslAuthMethod.html b/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslAuthMethod.html
index d4fe2e6..737d262 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslAuthMethod.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslAuthMethod.html
@@ -137,13 +137,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslAuthMethod.html" title="class in org.apache.hadoop.hbase.security.provider">SaslAuthMethod</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SaslAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslAuthenticationProvider.html#getSaslAuthMethod--">getSaslAuthMethod</a></span>()</code>
-<div class="block">Returns the attributes which identify how this provider authenticates.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">DigestSaslAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslAuthenticationProvider.html#getSaslAuthMethod--">getSaslAuthMethod</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslAuthMethod.html" title="class in org.apache.hadoop.hbase.security.provider">SaslAuthMethod</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DigestSaslAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/DigestSaslAuthenticationProvider.html#getSaslAuthMethod--">getSaslAuthMethod</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SaslAuthenticationProvider.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslAuthenticationProvider.html#getSaslAuthMethod--">getSaslAuthMethod</a></span>()</code>
+<div class="block">Returns the attributes which identify how this provider authenticates.</div>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslClientAuthenticationProvider.html b/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslClientAuthenticationProvider.html
index 6551936..5fe0a59 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslClientAuthenticationProvider.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/provider/class-use/SaslClientAuthenticationProvider.html
@@ -274,17 +274,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
+              <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AuthenticationProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
               <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>
 <div class="block">Chooses the authentication provider which should be used given the provided client context
  from the authentication providers passed in via <a href="../../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#configure-org.apache.hadoop.conf.Configuration-java.util.Collection-"><code>AuthenticationProviderSelector.configure(Configuration, Collection)</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
-              <a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -328,16 +328,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#configure-org.apache.hadoop.conf.Configuration-java.util.Collection-">configure</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>&gt;&nbsp;providers)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">AuthenticationProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#configure-org.apache.hadoop.conf.Configuration-java.util.Collection-">configure</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>&gt;&nbsp;availableProviders)</code>
 <div class="block">Initializes the implementation with configuration and a set of providers available.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#configure-org.apache.hadoop.conf.Configuration-java.util.Collection-">configure</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
-         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>&gt;&nbsp;providers)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html" title="interface in org.apache.hadoop.hbase.security.provider">AuthenticationProviderSelector</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SaslClientAuthenticationProviders.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProviders.html#instantiateSelector-org.apache.hadoop.conf.Configuration-java.util.Collection-">instantiateSelector</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
diff --git a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/Authorizations.html b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/Authorizations.html
index c52e6c6..b62cf55 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/Authorizations.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/Authorizations.html
@@ -126,23 +126,23 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html" title="class in org.apache.hadoop.hbase.client">Query</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Query.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Query.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>
 <div class="block">Sets the authorizations to be used by this Query</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ImmutableScan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/ImmutableScan.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Get.html" title="class in org.apache.hadoop.hbase.client">Get</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Get.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Get.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html" title="class in org.apache.hadoop.hbase.client">Scan</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Scan.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Scan.html#setAuthorizations-org.apache.hadoop.hbase.security.visibility.Authorizations-">setAuthorizations</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -164,16 +164,6 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">FeedUserAuthScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/FeedUserAuthScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
-         <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">EnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/EnforcingScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
-         <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">DefinedSetFilterScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/DefinedSetFilterScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
          <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
@@ -190,6 +180,16 @@
          <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">EnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/EnforcingScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+         <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">FeedUserAuthScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/FeedUserAuthScanLabelGenerator.html#getLabels-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.visibility.Authorizations-">getLabels</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+         <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityExpEvaluator.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityExpEvaluator</a></code></td>
 <td class="colLast"><span class="typeNameLabel">VisibilityLabelService.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html#getVisibilityExpEvaluator-org.apache.hadoop.hbase.security.visibility.Authorizations-">getVisibilityExpEvaluator</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/Authorizations.html" title="class in org.apache.hadoop.hbase.security.visibility">Authorizations</a>&nbsp;authorizations)</code>
 <div class="block">Creates VisibilityExpEvaluator corresponding to given Authorizations.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/CellVisibility.html b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/CellVisibility.html
index 3ae04b3..fb52ee4 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/CellVisibility.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/CellVisibility.html
@@ -130,28 +130,28 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>
-<div class="block">Sets the visibility expression associated with cells in this Mutation.</div>
-</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Increment.html" title="class in org.apache.hadoop.hbase.client">Increment</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Increment.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Increment.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html" title="class in org.apache.hadoop.hbase.client">Delete</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Delete.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Delete.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html" title="class in org.apache.hadoop.hbase.client">Append</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Append.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Append.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>
+<div class="block">Sets the visibility expression associated with cells in this Mutation.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html" title="class in org.apache.hadoop.hbase.client">Put</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Put.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Put.html#setCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">setCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;expression)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) static org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.CellVisibility</code></td>
 <td class="colLast"><span class="typeNameLabel">Mutation.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/client/Mutation.html#toCellVisibility-org.apache.hadoop.hbase.security.visibility.CellVisibility-">toCellVisibility</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/CellVisibility.html" title="class in org.apache.hadoop.hbase.security.visibility">CellVisibility</a>&nbsp;cellVisibility)</code>
 <div class="block">Create a protocol buffer CellVisibility based on a client CellVisibility.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelService.html b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelService.html
index d7e2483..bd34b2e 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelService.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelService.html
@@ -121,11 +121,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelService</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityLabelServiceManager.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelServiceManager.html#visibilityLabelService">visibilityLabelService</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityController.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityController.html#visibilityLabelService">visibilityLabelService</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelService</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityController.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityController.html#visibilityLabelService">visibilityLabelService</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">VisibilityLabelServiceManager.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelServiceManager.html#visibilityLabelService">visibilityLabelService</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelService</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelsCache.html b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelsCache.html
index a4352a4..7972d20 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelsCache.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/visibility/class-use/VisibilityLabelsCache.html
@@ -108,24 +108,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKVisibilityLabelWatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/ZKVisibilityLabelWatcher.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FeedUserAuthScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/FeedUserAuthScanLabelGenerator.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
-<td class="colLast"><span class="typeNameLabel">EnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/EnforcingScanLabelGenerator.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DefinedSetFilterScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/DefinedSetFilterScanLabelGenerator.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKVisibilityLabelWatcher.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/ZKVisibilityLabelWatcher.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
 <td class="colLast"><span class="typeNameLabel">DefaultVisibilityLabelServiceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/DefaultVisibilityLabelServiceImpl.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
+<td class="colLast"><span class="typeNameLabel">EnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/EnforcingScanLabelGenerator.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FeedUserAuthScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/security/visibility/FeedUserAuthScanLabelGenerator.html#labelsCache">labelsCache</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/thrift/class-use/ThriftMetrics.html b/devapidocs/org/apache/hadoop/hbase/thrift/class-use/ThriftMetrics.html
index 9cdd282..686d713 100644
--- a/devapidocs/org/apache/hadoop/hbase/thrift/class-use/ThriftMetrics.html
+++ b/devapidocs/org/apache/hadoop/hbase/thrift/class-use/ThriftMetrics.html
@@ -118,11 +118,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/thrift/ThriftMetrics.html" title="class in org.apache.hadoop.hbase.thrift">ThriftMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HBaseServiceHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/HBaseServiceHandler.html#metrics">metrics</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/ThriftServer.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/thrift/ThriftMetrics.html" title="class in org.apache.hadoop.hbase.thrift">ThriftMetrics</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/ThriftServer.html#metrics">metrics</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HBaseServiceHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/HBaseServiceHandler.html#metrics">metrics</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/thrift/ThriftMetrics.html" title="class in org.apache.hadoop.hbase.thrift">ThriftMetrics</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html b/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html
deleted file mode 100644
index 19e3977..0000000
--- a/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html
+++ /dev/null
@@ -1,330 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>CommonFSUtils.DfsBuilderUtility (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)</title>
-<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
-<script type="text/javascript" src="../../../../../script.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="CommonFSUtils.DfsBuilderUtility (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var methods = {"i0":9};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a name="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../../overview-summary.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/CommonFSUtils.DfsBuilderUtility.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../../index-all.html">Index</a></li>
-<li><a href="../../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../../index.html?org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" target="_top">Frames</a></li>
-<li><a href="CommonFSUtils.DfsBuilderUtility.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a name="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<!-- ======== START OF CLASS DATA ======== -->
-<div class="header">
-<div class="subTitle">org.apache.hadoop.hbase.util</div>
-<h2 title="Class CommonFSUtils.DfsBuilderUtility" class="title">Class CommonFSUtils.DfsBuilderUtility</h2>
-</div>
-<div class="contentContainer">
-<ul class="inheritance">
-<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
-<li>
-<ul class="inheritance">
-<li>org.apache.hadoop.hbase.util.CommonFSUtils.DfsBuilderUtility</li>
-</ul>
-</li>
-</ul>
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<dl>
-<dt>Enclosing class:</dt>
-<dd><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils</a></dd>
-</dl>
-<hr>
-<br>
-<pre>private static final class <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.769">CommonFSUtils.DfsBuilderUtility</a>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#BUILDER">BUILDER</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#REPLICATE">REPLICATE</a></span></code>&nbsp;</td>
-</tr>
-</table>
-</li>
-</ul>
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.summary">
-<!--   -->
-</a>
-<h3>Constructor Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
-<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier</th>
-<th class="colLast" scope="col">Constructor and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#DfsBuilderUtility--">DfsBuilderUtility</a></span>()</code>&nbsp;</td>
-</tr>
-</table>
-</li>
-</ul>
-<!-- ========== METHOD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Method and Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>(package private) static void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#replicate-org.apache.hadoop.fs.FSDataOutputStreamBuilder-">replicate</a></span>(org.apache.hadoop.fs.FSDataOutputStreamBuilder&lt;?,?&gt;&nbsp;builder)</code>
-<div class="block">Attempt to use builder API via reflection to call the replicate method on the given builder.</div>
-</td>
-</tr>
-</table>
-<ul class="blockList">
-<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
-<!--   -->
-</a>
-<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
-<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a name="BUILDER">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>BUILDER</h4>
-<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#line.770">BUILDER</a></pre>
-</li>
-</ul>
-<a name="REPLICATE">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>REPLICATE</h4>
-<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#line.771">REPLICATE</a></pre>
-</li>
-</ul>
-</li>
-</ul>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a name="DfsBuilderUtility--">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>DfsBuilderUtility</h4>
-<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#line.769">DfsBuilderUtility</a>()</pre>
-</li>
-</ul>
-</li>
-</ul>
-<!-- ============ METHOD DETAIL ========== -->
-<ul class="blockList">
-<li class="blockList"><a name="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a name="replicate-org.apache.hadoop.fs.FSDataOutputStreamBuilder-">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>replicate</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html#line.798">replicate</a>(org.apache.hadoop.fs.FSDataOutputStreamBuilder&lt;?,?&gt;&nbsp;builder)</pre>
-<div class="block">Attempt to use builder API via reflection to call the replicate method on the given builder.</div>
-</li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-</div>
-<!-- ========= END OF CLASS DATA ========= -->
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a name="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../../overview-summary.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/CommonFSUtils.DfsBuilderUtility.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../../index-all.html">Index</a></li>
-<li><a href="../../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../../index.html?org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" target="_top">Frames</a></li>
-<li><a href="CommonFSUtils.DfsBuilderUtility.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a name="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
-</body>
-</html>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html b/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html
index 32d092a..cb53480 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html
@@ -43,7 +43,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/hadoop/hbase/util/CompressionTest.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -121,7 +121,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.844">CommonFSUtils.StreamLacksCapabilityException</a>
+<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.770">CommonFSUtils.StreamLacksCapabilityException</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Helper exception for those cases where the place where we need to check a stream capability
  is not where we have the needed context to explain the impact and mitigation for a lack.</div>
@@ -196,7 +196,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>StreamLacksCapabilityException</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html#line.845">StreamLacksCapabilityException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;message,
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html#line.771">StreamLacksCapabilityException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;message,
                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;cause)</pre>
 </li>
 </ul>
@@ -206,7 +206,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>StreamLacksCapabilityException</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html#line.848">StreamLacksCapabilityException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;message)</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html#line.774">StreamLacksCapabilityException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;message)</pre>
 </li>
 </ul>
 </li>
@@ -237,7 +237,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/hadoop/hbase/util/CompressionTest.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.html b/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.html
index e340b49..cd8e5d6 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/CommonFSUtils.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":41,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9,"i35":9,"i36":9,"i37":9,"i38":9,"i39":9,"i40":9,"i41":9,"i42":9,"i43":9,"i44":9,"i45":9};
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":41,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9,"i35":9,"i36":9,"i37":9,"i38":9,"i39":9,"i40":9,"i41":9,"i42":9,"i43":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -50,7 +50,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/hadoop/hbase/util/CollectionBackedScanner.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/hadoop/hbase/util/CommonFSUtils.html" target="_top">Frames</a></li>
@@ -110,7 +110,7 @@
 <hr>
 <br>
 <pre>@InterfaceAudience.Private
-public final class <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.57">CommonFSUtils</a>
+public final class <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.54">CommonFSUtils</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
 <div class="block">Utility methods for interacting with the underlying file system.
  <p/>
@@ -136,10 +136,6 @@
 <th class="colLast" scope="col">Class and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static class&nbsp;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static class&nbsp;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.StreamLacksCapabilityException</a></span></code>
 <div class="block">Helper exception for those cases where the place where we need to check a stream capability
@@ -237,28 +233,6 @@
 </td>
 </tr>
 <tr id="i2" class="altColor">
-<td class="colFirst"><code>static org.apache.hadoop.fs.FSDataOutputStream</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#createForWal-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-">createForWal</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
-            org.apache.hadoop.fs.Path&nbsp;path,
-            boolean&nbsp;overwrite)</code>
-<div class="block">Attempt to use builder API via reflection to create a file with the given parameters and
- replication enabled.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>static org.apache.hadoop.fs.FSDataOutputStream</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#createForWal-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-boolean-">createForWal</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
-            org.apache.hadoop.fs.Path&nbsp;path,
-            boolean&nbsp;overwrite,
-            int&nbsp;bufferSize,
-            short&nbsp;replication,
-            long&nbsp;blockSize,
-            boolean&nbsp;isRecursive)</code>
-<div class="block">Attempt to use builder API via reflection to create a file with the given parameters and
- replication enabled.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#delete-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-">delete</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
       org.apache.hadoop.fs.Path&nbsp;path,
@@ -266,18 +240,18 @@
 <div class="block">Calls fs.delete() and returns the value returned by the fs.delete()</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#deleteDirectory-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-">deleteDirectory</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                org.apache.hadoop.fs.Path&nbsp;dir)</code>
 <div class="block">Delete if exists.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.FileSystem</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getCurrentFileSystem-org.apache.hadoop.conf.Configuration-">getCurrentFileSystem</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>static long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getDefaultBlockSize-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-">getDefaultBlockSize</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                    org.apache.hadoop.fs.Path&nbsp;path)</code>
@@ -285,25 +259,25 @@
  be split into to minimize i/o time.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>static int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getDefaultBufferSize-org.apache.hadoop.fs.FileSystem-">getDefaultBufferSize</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs)</code>
 <div class="block">Returns the default buffer size to use during writes.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>static short</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getDefaultReplication-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-">getDefaultReplication</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                      org.apache.hadoop.fs.Path&nbsp;path)</code>&nbsp;</td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getDirUri-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.Path-">getDirUri</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c,
          org.apache.hadoop.fs.Path&nbsp;p)</code>
 <div class="block">Returns the URI in the string format</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.permission.FsPermission</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getFilePermissions-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.conf.Configuration-java.lang.String-">getFilePermissions</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                   org.apache.hadoop.conf.Configuration&nbsp;conf,
@@ -312,7 +286,7 @@
  enabled.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getNamespaceDir-org.apache.hadoop.fs.Path-java.lang.String-">getNamespaceDir</a></span>(org.apache.hadoop.fs.Path&nbsp;rootdir,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)</code>
@@ -320,13 +294,13 @@
  the namespace directory under path rootdir</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getPath-org.apache.hadoop.fs.Path-">getPath</a></span>(org.apache.hadoop.fs.Path&nbsp;p)</code>
 <div class="block">Return the 'path' component of a Path.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getRegionDir-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.TableName-java.lang.String-">getRegionDir</a></span>(org.apache.hadoop.fs.Path&nbsp;rootdir,
             <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -335,15 +309,15 @@
  path rootdir</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getRootDir-org.apache.hadoop.conf.Configuration-">getRootDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i14" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.FileSystem</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getRootDirFileSystem-org.apache.hadoop.conf.Configuration-">getRootDirFileSystem</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getTableDir-org.apache.hadoop.fs.Path-org.apache.hadoop.hbase.TableName-">getTableDir</a></span>(org.apache.hadoop.fs.Path&nbsp;rootdir,
            <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
@@ -351,7 +325,7 @@
  path rootdir</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getTableName-org.apache.hadoop.fs.Path-">getTableName</a></span>(org.apache.hadoop.fs.Path&nbsp;tablePath)</code>
 <div class="block">Returns the <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a> object representing
@@ -359,11 +333,11 @@
  path rootdir</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.FileSystem</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getWALFileSystem-org.apache.hadoop.conf.Configuration-">getWALFileSystem</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getWALRegionDir-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-java.lang.String-">getWALRegionDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -371,18 +345,18 @@
 <div class="block">Returns the WAL region directory based on the given table name and region name</div>
 </td>
 </tr>
-<tr id="i21" class="rowColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getWALRootDir-org.apache.hadoop.conf.Configuration-">getWALRootDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getWALTableDir-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-">getWALTableDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
               <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
 <div class="block">Returns the Table directory under the WALRootDir for the specified table name</div>
 </td>
 </tr>
-<tr id="i23" class="rowColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#getWrongWALRegionDir-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-java.lang.String-">getWrongWALRegionDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                     <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
@@ -392,63 +366,63 @@
 </div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
+<tr id="i22" class="altColor">
 <td class="colFirst"><code>private static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#invokeSetStoragePolicy-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-java.lang.String-">invokeSetStoragePolicy</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                       org.apache.hadoop.fs.Path&nbsp;path,
                       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storagePolicy)</code>&nbsp;</td>
 </tr>
-<tr id="i25" class="rowColor">
+<tr id="i23" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isExists-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-">isExists</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
         org.apache.hadoop.fs.Path&nbsp;path)</code>
 <div class="block">Calls fs.exists().</div>
 </td>
 </tr>
-<tr id="i26" class="altColor">
+<tr id="i24" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isHDFS-org.apache.hadoop.conf.Configuration-">isHDFS</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
 </tr>
-<tr id="i27" class="rowColor">
+<tr id="i25" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isMatchingTail-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-">isMatchingTail</a></span>(org.apache.hadoop.fs.Path&nbsp;pathToSearch,
               org.apache.hadoop.fs.Path&nbsp;pathTail)</code>
 <div class="block">Compare path component of the Path URI; e.g.</div>
 </td>
 </tr>
-<tr id="i28" class="altColor">
+<tr id="i26" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isMatchingTail-org.apache.hadoop.fs.Path-java.lang.String-">isMatchingTail</a></span>(org.apache.hadoop.fs.Path&nbsp;pathToSearch,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;pathTail)</code>
 <div class="block">Compare path component of the Path URI; e.g.</div>
 </td>
 </tr>
-<tr id="i29" class="rowColor">
+<tr id="i27" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isRecoveredEdits-org.apache.hadoop.fs.Path-">isRecoveredEdits</a></span>(org.apache.hadoop.fs.Path&nbsp;path)</code>
 <div class="block">Checks if the given path is the one with 'recovered.edits' dir.</div>
 </td>
 </tr>
-<tr id="i30" class="altColor">
+<tr id="i28" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isStartingWithPath-org.apache.hadoop.fs.Path-java.lang.String-">isStartingWithPath</a></span>(org.apache.hadoop.fs.Path&nbsp;rootPath,
                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</code>
 <div class="block">Compare of path component.</div>
 </td>
 </tr>
-<tr id="i31" class="rowColor">
+<tr id="i29" class="rowColor">
 <td class="colFirst"><code>private static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#isValidWALRootDir-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-">isValidWALRootDir</a></span>(org.apache.hadoop.fs.Path&nbsp;walDir,
                  org.apache.hadoop.conf.Configuration&nbsp;c)</code>&nbsp;</td>
 </tr>
-<tr id="i32" class="altColor">
+<tr id="i30" class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.LocatedFileStatus&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#listLocatedStatus-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-">listLocatedStatus</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                  org.apache.hadoop.fs.Path&nbsp;dir)</code>
 <div class="block">Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call</div>
 </td>
 </tr>
-<tr id="i33" class="rowColor">
+<tr id="i31" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.FileStatus[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#listStatus-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-">listStatus</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
           org.apache.hadoop.fs.Path&nbsp;dir)</code>
@@ -456,7 +430,7 @@
  This would accommodates differences between hadoop versions</div>
 </td>
 </tr>
-<tr id="i34" class="altColor">
+<tr id="i32" class="altColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.FileStatus[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#listStatus-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.PathFilter-">listStatus</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
           org.apache.hadoop.fs.Path&nbsp;dir,
@@ -467,7 +441,7 @@
  while Hadoop 2 will throw FileNotFoundException.</div>
 </td>
 </tr>
-<tr id="i35" class="rowColor">
+<tr id="i33" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#logFileSystemState-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.slf4j.Logger-">logFileSystemState</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                   org.apache.hadoop.fs.Path&nbsp;root,
@@ -475,7 +449,7 @@
 <div class="block">Log the current state of the filesystem from a certain root directory</div>
 </td>
 </tr>
-<tr id="i36" class="altColor">
+<tr id="i34" class="altColor">
 <td class="colFirst"><code>private static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#logFSTree-org.slf4j.Logger-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-java.lang.String-">logFSTree</a></span>(org.slf4j.Logger&nbsp;log,
          org.apache.hadoop.fs.FileSystem&nbsp;fs,
@@ -484,7 +458,7 @@
 <div class="block">Recursive helper to log the state of the FS</div>
 </td>
 </tr>
-<tr id="i37" class="rowColor">
+<tr id="i35" class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#removeWALRootPath-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-">removeWALRootPath</a></span>(org.apache.hadoop.fs.Path&nbsp;path,
                  org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
@@ -492,28 +466,28 @@
  path.</div>
 </td>
 </tr>
-<tr id="i38" class="altColor">
+<tr id="i36" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#renameAndSetModifyTime-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-">renameAndSetModifyTime</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                       org.apache.hadoop.fs.Path&nbsp;src,
                       org.apache.hadoop.fs.Path&nbsp;dest)</code>&nbsp;</td>
 </tr>
-<tr id="i39" class="rowColor">
+<tr id="i37" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#setFsDefault-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.Path-">setFsDefault</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c,
             org.apache.hadoop.fs.Path&nbsp;root)</code>&nbsp;</td>
 </tr>
-<tr id="i40" class="altColor">
+<tr id="i38" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#setFsDefault-org.apache.hadoop.conf.Configuration-java.lang.String-">setFsDefault</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;uri)</code>&nbsp;</td>
 </tr>
-<tr id="i41" class="rowColor">
+<tr id="i39" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#setRootDir-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.Path-">setRootDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c,
           org.apache.hadoop.fs.Path&nbsp;root)</code>&nbsp;</td>
 </tr>
-<tr id="i42" class="altColor">
+<tr id="i40" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#setStoragePolicy-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-java.lang.String-">setStoragePolicy</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                 org.apache.hadoop.fs.Path&nbsp;path,
@@ -521,19 +495,19 @@
 <div class="block">Sets storage policy for given path.</div>
 </td>
 </tr>
-<tr id="i43" class="rowColor">
+<tr id="i41" class="rowColor">
 <td class="colFirst"><code>(package private) static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#setStoragePolicy-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-java.lang.String-boolean-">setStoragePolicy</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                 org.apache.hadoop.fs.Path&nbsp;path,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storagePolicy,
                 boolean&nbsp;throwException)</code>&nbsp;</td>
 </tr>
-<tr id="i44" class="altColor">
+<tr id="i42" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#setWALRootDir-org.apache.hadoop.conf.Configuration-org.apache.hadoop.fs.Path-">setWALRootDir</a></span>(org.apache.hadoop.conf.Configuration&nbsp;c,
              org.apache.hadoop.fs.Path&nbsp;root)</code>&nbsp;</td>
 </tr>
-<tr id="i45" class="rowColor">
+<tr id="i43" class="rowColor">
 <td class="colFirst"><code>static org.apache.hadoop.fs.Path</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html#validateRootPath-org.apache.hadoop.fs.Path-">validateRootPath</a></span>(org.apache.hadoop.fs.Path&nbsp;root)</code>
 <div class="block">Verifies root directory path is a valid URI with a scheme</div>
@@ -567,7 +541,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>LOG</h4>
-<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.58">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.55">LOG</a></pre>
 </li>
 </ul>
 <a name="HBASE_WAL_DIR">
@@ -576,7 +550,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>HBASE_WAL_DIR</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.61">HBASE_WAL_DIR</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.58">HBASE_WAL_DIR</a></pre>
 <div class="block">Parameter name for HBase WAL directory</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -590,7 +564,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>UNSAFE_STREAM_CAPABILITY_ENFORCE</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.64">UNSAFE_STREAM_CAPABILITY_ENFORCE</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.61">UNSAFE_STREAM_CAPABILITY_ENFORCE</a></pre>
 <div class="block">Parameter to disable stream capability enforcement checks</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -604,7 +578,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>FULL_RWX_PERMISSIONS</h4>
-<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.68">FULL_RWX_PERMISSIONS</a></pre>
+<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.65">FULL_RWX_PERMISSIONS</a></pre>
 <div class="block">Full access permissions (starting point for a umask)</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -618,7 +592,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>warningMap</h4>
-<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.apache.hadoop.fs.FileSystem,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.482">warningMap</a></pre>
+<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.apache.hadoop.fs.FileSystem,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.479">warningMap</a></pre>
 </li>
 </ul>
 </li>
@@ -635,7 +609,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>CommonFSUtils</h4>
-<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.70">CommonFSUtils</a>()</pre>
+<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.67">CommonFSUtils</a>()</pre>
 </li>
 </ul>
 </li>
@@ -652,7 +626,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isStartingWithPath</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.81">isStartingWithPath</a>(org.apache.hadoop.fs.Path&nbsp;rootPath,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.78">isStartingWithPath</a>(org.apache.hadoop.fs.Path&nbsp;rootPath,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</pre>
 <div class="block">Compare of path component. Does not consider schema; i.e. if schemas
  different but <code>path</code> starts with <code>rootPath</code>,
@@ -672,7 +646,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isMatchingTail</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.95">isMatchingTail</a>(org.apache.hadoop.fs.Path&nbsp;pathToSearch,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.92">isMatchingTail</a>(org.apache.hadoop.fs.Path&nbsp;pathToSearch,
                                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;pathTail)</pre>
 <div class="block">Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the
  '/a/b/c' part. Does not consider schema; i.e. if schemas different but path or subpath matches,
@@ -692,7 +666,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isMatchingTail</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.107">isMatchingTail</a>(org.apache.hadoop.fs.Path&nbsp;pathToSearch,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.104">isMatchingTail</a>(org.apache.hadoop.fs.Path&nbsp;pathToSearch,
                                      org.apache.hadoop.fs.Path&nbsp;pathTail)</pre>
 <div class="block">Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the
  '/a/b/c' part. If you passed in 'hdfs://a/b/c and b/c, it would return true.  Does not consider
@@ -712,7 +686,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>deleteDirectory</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.140">deleteDirectory</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.137">deleteDirectory</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                       org.apache.hadoop.fs.Path&nbsp;dir)
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Delete if exists.</div>
@@ -733,7 +707,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getDefaultBlockSize</h4>
-<pre>public static&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.151">getDefaultBlockSize</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.148">getDefaultBlockSize</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                        org.apache.hadoop.fs.Path&nbsp;path)</pre>
 <div class="block">Return the number of bytes that large input files should be optimally
  be split into to minimize i/o time.</div>
@@ -751,7 +725,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getDefaultReplication</h4>
-<pre>public static&nbsp;short&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.162">getDefaultReplication</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;short&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.159">getDefaultReplication</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                           org.apache.hadoop.fs.Path&nbsp;path)</pre>
 </li>
 </ul>
@@ -761,7 +735,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getDefaultBufferSize</h4>
-<pre>public static&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.176">getDefaultBufferSize</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs)</pre>
+<pre>public static&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.173">getDefaultBufferSize</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs)</pre>
 <div class="block">Returns the default buffer size to use during writes.
 
  The size of the buffer should probably be a multiple of hardware
@@ -781,7 +755,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>create</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FSDataOutputStream&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.197">create</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;org.apache.hadoop.fs.FSDataOutputStream&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.194">create</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                                              org.apache.hadoop.fs.Path&nbsp;path,
                                                              org.apache.hadoop.fs.permission.FsPermission&nbsp;perm,
                                                              boolean&nbsp;overwrite)
@@ -813,7 +787,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getFilePermissions</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.permission.FsPermission&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.219">getFilePermissions</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;org.apache.hadoop.fs.permission.FsPermission&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.216">getFilePermissions</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                                                               org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                                               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;permssionConfKey)</pre>
 <div class="block">Get the file permissions specified in the configuration, if they are
@@ -838,7 +812,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>validateRootPath</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.253">validateRootPath</a>(org.apache.hadoop.fs.Path&nbsp;root)
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.250">validateRootPath</a>(org.apache.hadoop.fs.Path&nbsp;root)
                                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Verifies root directory path is a valid URI with a scheme</div>
 <dl>
@@ -857,7 +831,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>removeWALRootPath</h4>
-<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.276">removeWALRootPath</a>(org.apache.hadoop.fs.Path&nbsp;path,
+<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.273">removeWALRootPath</a>(org.apache.hadoop.fs.Path&nbsp;path,
                                        org.apache.hadoop.conf.Configuration&nbsp;conf)
                                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Checks for the presence of the WAL log root path (using the provided conf object) in the given
@@ -880,7 +854,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getPath</h4>
-<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.297">getPath</a>(org.apache.hadoop.fs.Path&nbsp;p)</pre>
+<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.294">getPath</a>(org.apache.hadoop.fs.Path&nbsp;p)</pre>
 <div class="block">Return the 'path' component of a Path.  In Hadoop, Path is a URI.  This
  method returns the 'path' component of a Path's URI: e.g. If a Path is
  <code>hdfs://example.org:9000/hbase_trunk/TestTable/compaction.dir</code>,
@@ -901,7 +875,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getRootDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.307">getRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.304">getRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -920,7 +894,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setRootDir</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.313">setRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.310">setRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
                               org.apache.hadoop.fs.Path&nbsp;root)</pre>
 </li>
 </ul>
@@ -930,7 +904,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setFsDefault</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.317">setFsDefault</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.314">setFsDefault</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
                                 org.apache.hadoop.fs.Path&nbsp;root)</pre>
 </li>
 </ul>
@@ -940,7 +914,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setFsDefault</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.321">setFsDefault</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.318">setFsDefault</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
                                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;uri)</pre>
 </li>
 </ul>
@@ -950,7 +924,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getRootDirFileSystem</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.325">getRootDirFileSystem</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
+<pre>public static&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.322">getRootDirFileSystem</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
                                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -964,7 +938,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getWALRootDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.336">getWALRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.333">getWALRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
                                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -983,7 +957,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getDirUri</h4>
-<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.352">getDirUri</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
+<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.349">getDirUri</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
                                org.apache.hadoop.fs.Path&nbsp;p)
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Returns the URI in the string format</div>
@@ -1004,7 +978,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setWALRootDir</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.359">setWALRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.356">setWALRootDir</a>(org.apache.hadoop.conf.Configuration&nbsp;c,
                                  org.apache.hadoop.fs.Path&nbsp;root)</pre>
 </li>
 </ul>
@@ -1014,7 +988,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getWALFileSystem</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.363">getWALFileSystem</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
+<pre>public static&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.360">getWALFileSystem</a>(org.apache.hadoop.conf.Configuration&nbsp;c)
                                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -1028,7 +1002,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isValidWALRootDir</h4>
-<pre>private static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.374">isValidWALRootDir</a>(org.apache.hadoop.fs.Path&nbsp;walDir,
+<pre>private static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.371">isValidWALRootDir</a>(org.apache.hadoop.fs.Path&nbsp;walDir,
                                          org.apache.hadoop.conf.Configuration&nbsp;c)
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
@@ -1043,7 +1017,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getWALRegionDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.396">getWALRegionDir</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.393">getWALRegionDir</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                         <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                                         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;encodedRegionName)
                                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1066,7 +1040,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getWALTableDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.408">getWALTableDir</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.405">getWALTableDir</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                        <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Returns the Table directory under the WALRootDir for the specified table name</div>
@@ -1088,7 +1062,7 @@
 <li class="blockList">
 <h4>getWrongWALRegionDir</h4>
 <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
-public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.421">getWrongWALRegionDir</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.418">getWrongWALRegionDir</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                                          <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;encodedRegionName)
                                                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1107,7 +1081,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTableDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.436">getTableDir</a>(org.apache.hadoop.fs.Path&nbsp;rootdir,
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.433">getTableDir</a>(org.apache.hadoop.fs.Path&nbsp;rootdir,
                                                     <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</pre>
 <div class="block">Returns the <code>Path</code> object representing the table directory under
  path rootdir</div>
@@ -1126,7 +1100,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getRegionDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.450">getRegionDir</a>(org.apache.hadoop.fs.Path&nbsp;rootdir,
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.447">getRegionDir</a>(org.apache.hadoop.fs.Path&nbsp;rootdir,
                                                      <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regionName)</pre>
 <div class="block">Returns the <code>Path</code> object representing the region directory under
@@ -1147,7 +1121,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getTableName</h4>
-<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.462">getTableName</a>(org.apache.hadoop.fs.Path&nbsp;tablePath)</pre>
+<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.459">getTableName</a>(org.apache.hadoop.fs.Path&nbsp;tablePath)</pre>
 <div class="block">Returns the <a href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><code>TableName</code></a> object representing
  the table directory under
  path rootdir</div>
@@ -1165,7 +1139,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getNamespaceDir</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.474">getNamespaceDir</a>(org.apache.hadoop.fs.Path&nbsp;rootdir,
+<pre>public static&nbsp;org.apache.hadoop.fs.Path&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.471">getNamespaceDir</a>(org.apache.hadoop.fs.Path&nbsp;rootdir,
                                                         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;namespace)</pre>
 <div class="block">Returns the <code>Path</code> object representing
  the namespace directory under path rootdir</div>
@@ -1184,7 +1158,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setStoragePolicy</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.500">setStoragePolicy</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.497">setStoragePolicy</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                     org.apache.hadoop.fs.Path&nbsp;path,
                                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storagePolicy)</pre>
 <div class="block">Sets storage policy for given path.
@@ -1211,7 +1185,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setStoragePolicy</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.510">setStoragePolicy</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.507">setStoragePolicy</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                              org.apache.hadoop.fs.Path&nbsp;path,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storagePolicy,
                              boolean&nbsp;throwException)
@@ -1228,7 +1202,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>invokeSetStoragePolicy</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.542">invokeSetStoragePolicy</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.539">invokeSetStoragePolicy</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                            org.apache.hadoop.fs.Path&nbsp;path,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storagePolicy)
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1244,7 +1218,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isHDFS</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.587">isHDFS</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.584">isHDFS</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1262,7 +1236,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isRecoveredEdits</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.598">isRecoveredEdits</a>(org.apache.hadoop.fs.Path&nbsp;path)</pre>
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.595">isRecoveredEdits</a>(org.apache.hadoop.fs.Path&nbsp;path)</pre>
 <div class="block">Checks if the given path is the one with 'recovered.edits' dir.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1278,7 +1252,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getCurrentFileSystem</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.607">getCurrentFileSystem</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
+<pre>public static&nbsp;org.apache.hadoop.fs.FileSystem&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.604">getCurrentFileSystem</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
                                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1296,7 +1270,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>listStatus</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FileStatus[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.625">listStatus</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;org.apache.hadoop.fs.FileStatus[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.622">listStatus</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                                            org.apache.hadoop.fs.Path&nbsp;dir,
                                                            org.apache.hadoop.fs.PathFilter&nbsp;filter)
                                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1325,7 +1299,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>listStatus</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FileStatus[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.650">listStatus</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;org.apache.hadoop.fs.FileStatus[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.647">listStatus</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                                            org.apache.hadoop.fs.Path&nbsp;dir)
                                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Calls fs.listStatus() and treats FileNotFoundException as non-fatal
@@ -1347,7 +1321,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>listLocatedStatus</h4>
-<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.LocatedFileStatus&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.661">listLocatedStatus</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.LocatedFileStatus&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.658">listLocatedStatus</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                                                              org.apache.hadoop.fs.Path&nbsp;dir)
                                                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call</div>
@@ -1368,7 +1342,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>delete</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.691">delete</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.688">delete</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                              org.apache.hadoop.fs.Path&nbsp;path,
                              boolean&nbsp;recursive)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1391,7 +1365,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>isExists</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.704">isExists</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.701">isExists</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                org.apache.hadoop.fs.Path&nbsp;path)
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Calls fs.exists(). Checks if the specified path exists</div>
@@ -1412,7 +1386,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>logFileSystemState</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.715">logFileSystemState</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.712">logFileSystemState</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                       org.apache.hadoop.fs.Path&nbsp;root,
                                       org.slf4j.Logger&nbsp;log)
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1433,7 +1407,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>logFSTree</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.726">logFSTree</a>(org.slf4j.Logger&nbsp;log,
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.723">logFSTree</a>(org.slf4j.Logger&nbsp;log,
                               org.apache.hadoop.fs.FileSystem&nbsp;fs,
                               org.apache.hadoop.fs.Path&nbsp;root,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;prefix)
@@ -1453,7 +1427,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>renameAndSetModifyTime</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.743">renameAndSetModifyTime</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.740">renameAndSetModifyTime</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
                                              org.apache.hadoop.fs.Path&nbsp;src,
                                              org.apache.hadoop.fs.Path&nbsp;dest)
                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1466,10 +1440,10 @@
 <a name="checkShortCircuitReadBufferSize-org.apache.hadoop.conf.Configuration-">
 <!--   -->
 </a>
-<ul class="blockList">
+<ul class="blockListLast">
 <li class="blockList">
 <h4>checkShortCircuitReadBufferSize</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.754">checkShortCircuitReadBufferSize</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.751">checkShortCircuitReadBufferSize</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
 <div class="block">Check if short circuit read buffer size is set and if not, set it to hbase value.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1477,50 +1451,6 @@
 </dl>
 </li>
 </ul>
-<a name="createForWal-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>createForWal</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FSDataOutputStream&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.816">createForWal</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
-                                                                   org.apache.hadoop.fs.Path&nbsp;path,
-                                                                   boolean&nbsp;overwrite)
-                                                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
-<div class="block">Attempt to use builder API via reflection to create a file with the given parameters and
- replication enabled.
- <p/>
- Will not attempt to enable replication when passed an HFileSystem.</div>
-<dl>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
-</dl>
-</li>
-</ul>
-<a name="createForWal-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-boolean-">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>createForWal</h4>
-<pre>public static&nbsp;org.apache.hadoop.fs.FSDataOutputStream&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html#line.829">createForWal</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
-                                                                   org.apache.hadoop.fs.Path&nbsp;path,
-                                                                   boolean&nbsp;overwrite,
-                                                                   int&nbsp;bufferSize,
-                                                                   short&nbsp;replication,
-                                                                   long&nbsp;blockSize,
-                                                                   boolean&nbsp;isRecursive)
-                                                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
-<div class="block">Attempt to use builder API via reflection to create a file with the given parameters and
- replication enabled.
- <p/>
- Will not attempt to enable replication when passed an HFileSystem.</div>
-<dl>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
-</dl>
-</li>
-</ul>
 </li>
 </ul>
 </li>
@@ -1550,7 +1480,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/hadoop/hbase/util/CollectionBackedScanner.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/hadoop/hbase/util/CommonFSUtils.html" target="_top">Frames</a></li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/BloomFilterWriter.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/BloomFilterWriter.html
index 53150a0..8c332ad 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/BloomFilterWriter.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/BloomFilterWriter.html
@@ -137,25 +137,25 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#addDeleteFamilyBloomFilter-org.apache.hadoop.hbase.util.BloomFilterWriter-">addDeleteFamilyBloomFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/BloomFilterWriter.html" title="interface in org.apache.hadoop.hbase.util">BloomFilterWriter</a>&nbsp;bfw)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HFile.Writer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html#addDeleteFamilyBloomFilter-org.apache.hadoop.hbase.util.BloomFilterWriter-">addDeleteFamilyBloomFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/BloomFilterWriter.html" title="interface in org.apache.hadoop.hbase.util">BloomFilterWriter</a>&nbsp;bfw)</code>
 <div class="block">Store delete family Bloom filter in the file, which is only supported in
  HFile V2.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#addGeneralBloomFilter-org.apache.hadoop.hbase.util.BloomFilterWriter-">addGeneralBloomFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/BloomFilterWriter.html" title="interface in org.apache.hadoop.hbase.util">BloomFilterWriter</a>&nbsp;bfw)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#addDeleteFamilyBloomFilter-org.apache.hadoop.hbase.util.BloomFilterWriter-">addDeleteFamilyBloomFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/BloomFilterWriter.html" title="interface in org.apache.hadoop.hbase.util">BloomFilterWriter</a>&nbsp;bfw)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">HFile.Writer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.Writer.html#addGeneralBloomFilter-org.apache.hadoop.hbase.util.BloomFilterWriter-">addGeneralBloomFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/BloomFilterWriter.html" title="interface in org.apache.hadoop.hbase.util">BloomFilterWriter</a>&nbsp;bfw)</code>
 <div class="block">Store general Bloom filter in the file.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">HFileWriterImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.html#addGeneralBloomFilter-org.apache.hadoop.hbase.util.BloomFilterWriter-">addGeneralBloomFilter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/BloomFilterWriter.html" title="interface in org.apache.hadoop.hbase.util">BloomFilterWriter</a>&nbsp;bfw)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteBufferArray.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteBufferArray.html
index 6678a4c..179b66f 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteBufferArray.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteBufferArray.html
@@ -106,13 +106,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/ByteBufferArray.html" title="class in org.apache.hadoop.hbase.util">ByteBufferArray</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ByteBufferIOEngine.html#bufferArray">bufferArray</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/ByteBufferArray.html" title="class in org.apache.hadoop.hbase.util">ByteBufferArray</a></code></td>
 <td class="colLast"><span class="typeNameLabel">FileMmapIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/FileMmapIOEngine.html#bufferArray">bufferArray</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/ByteBufferArray.html" title="class in org.apache.hadoop.hbase.util">ByteBufferArray</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/bucket/ByteBufferIOEngine.html#bufferArray">bufferArray</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteRange.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteRange.html
index 3a329ca..dd21f24 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteRange.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/ByteRange.html
@@ -355,7 +355,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
@@ -366,7 +366,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
@@ -398,7 +398,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
    byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -410,12 +410,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
    byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -427,12 +427,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
@@ -449,14 +449,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
    byte[]&nbsp;val,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
       int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -468,12 +468,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
       int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
        long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -485,12 +485,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
        long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
         short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -502,34 +502,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
         short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>
-<div class="block">Reuse this <code>ByteRange</code> over a new byte[].</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
-   int&nbsp;offset,
-   int&nbsp;length)</code>
+<td class="colLast"><span class="typeNameLabel">ByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>
 <div class="block">Reuse this <code>ByteRange</code> over a new byte[].</div>
 </td>
 </tr>
@@ -541,11 +527,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>
+<td class="colLast"><span class="typeNameLabel">ByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+   int&nbsp;offset,
+   int&nbsp;length)</code>
 <div class="block">Reuse this <code>ByteRange</code> over a new byte[].</div>
 </td>
 </tr>
@@ -555,6 +545,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>
+<div class="block">Reuse this <code>ByteRange</code> over a new byte[].</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractByteRange.html#setLength-int-">setLength</a></span>(int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -575,7 +575,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
@@ -585,11 +585,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
                    int&nbsp;copyLength)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -601,12 +601,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
                    int&nbsp;copyLength)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
@@ -616,7 +616,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util">ByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimpleByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html
index 265b799..f14ad44 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/Bytes.html
@@ -347,11 +347,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#RESERVED_KEYWORDS">RESERVED_KEYWORDS</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#RESERVED_KEYWORDS">RESERVED_KEYWORDS</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#RESERVED_KEYWORDS">RESERVED_KEYWORDS</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#RESERVED_KEYWORDS">RESERVED_KEYWORDS</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#values">values</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#values">values</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
@@ -365,14 +373,6 @@
 <div class="block">A map which holds the metadata information of the table.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#values">values</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#values">values</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -390,24 +390,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static &lt;T&gt;&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#toBytesOrNull-T-java.util.function.Function-">toBytesOrNull</a></span>(T&nbsp;t,
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#toBytesOrNull-T-java.util.function.Function-">toBytesOrNull</a></span>(T&nbsp;t,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;T,byte[]&gt;&nbsp;f)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static &lt;T&gt;&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#toBytesOrNull-T-java.util.function.Function-">toBytesOrNull</a></span>(T&nbsp;t,
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#toBytesOrNull-T-java.util.function.Function-">toBytesOrNull</a></span>(T&nbsp;t,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;T,byte[]&gt;&nbsp;f)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -437,18 +437,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValues--">getValues</a></span>()</code>
-<div class="block">Getter for fetching an unmodifiable <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#values"><code>TableDescriptorBuilder.ModifyableTableDescriptor.values</code></a> map.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValues--">getValues</a></span>()</code>
-<div class="block">Getter for fetching an unmodifiable <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#values"><code>TableDescriptorBuilder.ModifyableTableDescriptor.values</code></a> map.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#getValues--">getValues</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -467,6 +455,18 @@
 <div class="block">It clone all bytes of all elements.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValues--">getValues</a></span>()</code>
+<div class="block">Getter for fetching an unmodifiable <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#values"><code>TableDescriptorBuilder.ModifyableTableDescriptor.values</code></a> map.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>,<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValues--">getValues</a></span>()</code>
+<div class="block">Getter for fetching an unmodifiable <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#values"><code>TableDescriptorBuilder.ModifyableTableDescriptor.values</code></a> map.</div>
+</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -502,15 +502,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#getValue-org.apache.hadoop.hbase.util.Bytes-">getValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
@@ -523,6 +523,16 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">ColumnFamilyDescriptorBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#setValue-org.apache.hadoop.hbase.util.Bytes-org.apache.hadoop.hbase.util.Bytes-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
+        <a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html" title="class in org.apache.hadoop.hbase.client">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#setValue-org.apache.hadoop.hbase.util.Bytes-org.apache.hadoop.hbase.util.Bytes-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
+        <a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;value)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#setValue-org.apache.hadoop.hbase.util.Bytes-org.apache.hadoop.hbase.util.Bytes-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
         <a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;value)</code>&nbsp;</td>
@@ -535,23 +545,13 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">ColumnFamilyDescriptorBuilder</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#setValue-org.apache.hadoop.hbase.util.Bytes-org.apache.hadoop.hbase.util.Bytes-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
-        <a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;value)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html" title="class in org.apache.hadoop.hbase.client">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#setValue-org.apache.hadoop.hbase.util.Bytes-org.apache.hadoop.hbase.util.Bytes-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
-        <a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;value)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder.ModifyableTableDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#setValue-org.apache.hadoop.hbase.util.Bytes-java.lang.String-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#setValue-org.apache.hadoop.hbase.util.Bytes-java.lang.String-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html" title="class in org.apache.hadoop.hbase.client">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor.html#setValue-org.apache.hadoop.hbase.util.Bytes-java.lang.String-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder.ModifyableTableDescriptor</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.ModifyableTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html#setValue-org.apache.hadoop.hbase.util.Bytes-java.lang.String-">setValue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a>&nbsp;key,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>&nbsp;</td>
 </tr>
 </tbody>
@@ -622,13 +622,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#compressAndEncrypt-byte:A-int-int-">compressAndEncrypt</a></span>(byte[]&nbsp;data,
+<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#compressAndEncrypt-byte:A-int-int-">compressAndEncrypt</a></span>(byte[]&nbsp;data,
                   int&nbsp;offset,
                   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util">Bytes</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HFileBlockDefaultEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html#compressAndEncrypt-byte:A-int-int-">compressAndEncrypt</a></span>(byte[]&nbsp;data,
+<td class="colLast"><span class="typeNameLabel">HFileBlockEncodingContext.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html#compressAndEncrypt-byte:A-int-int-">compressAndEncrypt</a></span>(byte[]&nbsp;data,
                   int&nbsp;offset,
                   int&nbsp;length)</code>&nbsp;</td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.DfsBuilderUtility.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.DfsBuilderUtility.html
deleted file mode 100644
index 4c7dbef..0000000
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.DfsBuilderUtility.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.hadoop.hbase.util.CommonFSUtils.DfsBuilderUtility (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)</title>
-<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
-<script type="text/javascript" src="../../../../../../script.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.hadoop.hbase.util.CommonFSUtils.DfsBuilderUtility (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a name="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../../../overview-summary.html">Overview</a></li>
-<li><a href="../package-summary.html">Package</a></li>
-<li><a href="../../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">Class</a></li>
-<li class="navBarCell1Rev">Use</li>
-<li><a href="../../../../../../overview-tree.html">Tree</a></li>
-<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../../../index-all.html">Index</a></li>
-<li><a href="../../../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li>Prev</li>
-<li>Next</li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/util/class-use/CommonFSUtils.DfsBuilderUtility.html" target="_top">Frames</a></li>
-<li><a href="CommonFSUtils.DfsBuilderUtility.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<a name="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<div class="header">
-<h2 title="Uses of Class org.apache.hadoop.hbase.util.CommonFSUtils.DfsBuilderUtility" class="title">Uses of Class<br>org.apache.hadoop.hbase.util.CommonFSUtils.DfsBuilderUtility</h2>
-</div>
-<div class="classUseContainer">No usage of org.apache.hadoop.hbase.util.CommonFSUtils.DfsBuilderUtility</div>
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a name="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../../../overview-summary.html">Overview</a></li>
-<li><a href="../package-summary.html">Package</a></li>
-<li><a href="../../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">Class</a></li>
-<li class="navBarCell1Rev">Use</li>
-<li><a href="../../../../../../overview-tree.html">Tree</a></li>
-<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../../../index-all.html">Index</a></li>
-<li><a href="../../../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li>Prev</li>
-<li>Next</li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/util/class-use/CommonFSUtils.DfsBuilderUtility.html" target="_top">Frames</a></li>
-<li><a href="CommonFSUtils.DfsBuilderUtility.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<a name="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
-</body>
-</html>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.StreamLacksCapabilityException.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.StreamLacksCapabilityException.html
index b03432b..42bc521 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.StreamLacksCapabilityException.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/CommonFSUtils.StreamLacksCapabilityException.html
@@ -152,15 +152,6 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">ProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#initOutput-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-">initOutput</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
-          org.apache.hadoop.fs.Path&nbsp;path,
-          boolean&nbsp;overwritable,
-          int&nbsp;bufferSize,
-          short&nbsp;replication,
-          long&nbsp;blockSize)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncProtobufLogWriter.html#initOutput-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-">initOutput</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
           org.apache.hadoop.fs.Path&nbsp;path,
           boolean&nbsp;overwritable,
@@ -168,7 +159,7 @@
           short&nbsp;replication,
           long&nbsp;blockSize)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractProtobufLogWriter.html#initOutput-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-">initOutput</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
           org.apache.hadoop.fs.Path&nbsp;path,
@@ -177,6 +168,15 @@
           short&nbsp;replication,
           long&nbsp;blockSize)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">ProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#initOutput-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-boolean-int-short-long-">initOutput</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs,
+          org.apache.hadoop.fs.Path&nbsp;path,
+          boolean&nbsp;overwritable,
+          int&nbsp;bufferSize,
+          short&nbsp;replication,
+          long&nbsp;blockSize)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/HBaseFsck.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/HBaseFsck.html
index a47eba0..0f10da8 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/HBaseFsck.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/HBaseFsck.html
@@ -103,17 +103,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HbckTableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html#hbck">hbck</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.WorkItemRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemRegion.html#hbck">hbck</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.WorkItemHdfsRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemHdfsRegionInfo.html#hbck">hbck</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HbckTableInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html#hbck">hbck</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/Hash.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/Hash.html
index 27f04ed..3a79e87 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/Hash.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/Hash.html
@@ -177,11 +177,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/util/Hash.html" title="class in org.apache.hadoop.hbase.util">Hash</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MurmurHash3.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash3.html#getInstance--">getInstance</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MurmurHash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash.html#getInstance--">getInstance</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/util/Hash.html" title="class in org.apache.hadoop.hbase.util">Hash</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MurmurHash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash.html#getInstance--">getInstance</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MurmurHash3.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash3.html#getInstance--">getInstance</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/util/Hash.html" title="class in org.apache.hadoop.hbase.util">Hash</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/HashKey.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/HashKey.html
index 336241f..a36ecd3 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/HashKey.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/HashKey.html
@@ -141,31 +141,31 @@
         <a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;int</code></td>
-<td class="colLast"><span class="typeNameLabel">Hash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/Hash.html#hash-org.apache.hadoop.hbase.util.HashKey-int-">hash</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey,
-    int&nbsp;initval)</code>
-<div class="block">Calculate a hash using bytes from HashKey and the provided seed value.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;int</code></td>
 <td class="colLast"><span class="typeNameLabel">JenkinsHash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/JenkinsHash.html#hash-org.apache.hadoop.hbase.util.HashKey-int-">hash</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey,
     int&nbsp;initval)</code>
 <div class="block">taken from  hashlittle() -- hash a variable-length key into a 32-bit value</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;int</code></td>
+<td class="colLast"><span class="typeNameLabel">Hash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/Hash.html#hash-org.apache.hadoop.hbase.util.HashKey-int-">hash</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey,
+    int&nbsp;initval)</code>
+<div class="block">Calculate a hash using bytes from HashKey and the provided seed value.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;int</code></td>
+<td class="colLast"><span class="typeNameLabel">MurmurHash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash.html#hash-org.apache.hadoop.hbase.util.HashKey-int-">hash</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey,
+    int&nbsp;seed)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>&lt;T&gt;&nbsp;int</code></td>
 <td class="colLast"><span class="typeNameLabel">MurmurHash3.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash3.html#hash-org.apache.hadoop.hbase.util.HashKey-int-">hash</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey,
     int&nbsp;initval)</code>
 <div class="block">Returns the MurmurHash3_x86_32 hash.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>&lt;T&gt;&nbsp;int</code></td>
-<td class="colLast"><span class="typeNameLabel">MurmurHash.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/MurmurHash.html#hash-org.apache.hadoop.hbase.util.HashKey-int-">hash</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;&nbsp;hashKey,
-    int&nbsp;seed)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckErrorReporter.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckErrorReporter.html
index 60b263d..8a85978 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckErrorReporter.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckErrorReporter.html
@@ -122,28 +122,28 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.html" title="interface in org.apache.hadoop.hbase.util">HbckErrorReporter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HbckTableInfo.IntegrityFixSuggester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.IntegrityFixSuggester.html#errors">errors</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.html" title="interface in org.apache.hadoop.hbase.util">HbckErrorReporter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html#errors">errors</a></span></code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">State</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.html" title="interface in org.apache.hadoop.hbase.util">HbckErrorReporter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.WorkItemRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemRegion.html#errors">errors</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.html" title="interface in org.apache.hadoop.hbase.util">HbckErrorReporter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.WorkItemHdfsDir.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemHdfsDir.html#errors">errors</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.html" title="interface in org.apache.hadoop.hbase.util">HbckErrorReporter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">HBaseFsck.WorkItemHdfsRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemHdfsRegionInfo.html#errors">errors</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.html" title="interface in org.apache.hadoop.hbase.util">HbckErrorReporter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">HbckTableInfo.IntegrityFixSuggester.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.IntegrityFixSuggester.html#errors">errors</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckRegionInfo.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckRegionInfo.html
index fea6212..6bc3029 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckRegionInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckRegionInfo.html
@@ -483,54 +483,54 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleDegenerateRegion-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleDegenerateRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
-<div class="block">Callback for handling a region that has the same start and end key.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleDegenerateRegion-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleDegenerateRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
 <div class="block">Callback for handling a region that has the same start and end key.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleDuplicateStartKeys-org.apache.hadoop.hbase.util.HbckRegionInfo-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleDuplicateStartKeys</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi1,
-                        <a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi2)</code>
-<div class="block">Callback for handling two regions that have the same start key.</div>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleDegenerateRegion-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleDegenerateRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
+<div class="block">Callback for handling a region that has the same start and end key.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleDuplicateStartKeys-org.apache.hadoop.hbase.util.HbckRegionInfo-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleDuplicateStartKeys</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi1,
                         <a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi2)</code>
 <div class="block">Callback for handling two regions that have the same start key.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleOverlapInRegionChain-org.apache.hadoop.hbase.util.HbckRegionInfo-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleOverlapInRegionChain</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi1,
-                          <a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi2)</code>
-<div class="block">Callback for handling two reigons that overlap in some arbitrary way.</div>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleDuplicateStartKeys-org.apache.hadoop.hbase.util.HbckRegionInfo-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleDuplicateStartKeys</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi1,
+                        <a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi2)</code>
+<div class="block">Callback for handling two regions that have the same start key.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleOverlapInRegionChain-org.apache.hadoop.hbase.util.HbckRegionInfo-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleOverlapInRegionChain</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi1,
                           <a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi2)</code>
 <div class="block">Callback for handling two reigons that overlap in some arbitrary way.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleOverlapInRegionChain-org.apache.hadoop.hbase.util.HbckRegionInfo-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleOverlapInRegionChain</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi1,
+                          <a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi2)</code>
+<div class="block">Callback for handling two reigons that overlap in some arbitrary way.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleRegionStartKeyNotEmpty-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleRegionStartKeyNotEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleRegionStartKeyNotEmpty-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleRegionStartKeyNotEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
 <div class="block">Callback for handling case where a Table has a first region that does not
  have an empty start key.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleRegionStartKeyNotEmpty-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleRegionStartKeyNotEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleRegionStartKeyNotEmpty-org.apache.hadoop.hbase.util.HbckRegionInfo-">handleRegionStartKeyNotEmpty</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&nbsp;hi)</code>
 <div class="block">Callback for handling case where a Table has a first region that does not
  have an empty start key.</div>
 </td>
@@ -554,13 +554,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleOverlapGroup-java.util.Collection-">handleOverlapGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&gt;&nbsp;overlap)</code>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleOverlapGroup-java.util.Collection-">handleOverlapGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&gt;&nbsp;overlap)</code>
 <div class="block">Callback for handling an group of regions that overlap.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#handleOverlapGroup-java.util.Collection-">handleOverlapGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&gt;&nbsp;overlap)</code>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#handleOverlapGroup-java.util.Collection-">handleOverlapGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a>&gt;&nbsp;overlap)</code>
 <div class="block">Callback for handling an group of regions that overlap.</div>
 </td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckTableInfo.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckTableInfo.html
index e8350cd..0b87f20 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckTableInfo.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/HbckTableInfo.html
@@ -279,11 +279,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#getTableInfo--">getTableInfo</a></span>()</code></td>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#getTableInfo--">getTableInfo</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#getTableInfo--">getTableInfo</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#getTableInfo--">getTableInfo</a></span>()</code></td>
 </tr>
 </tbody>
 </table>
@@ -296,13 +296,13 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#setTableInfo-org.apache.hadoop.hbase.util.HbckTableInfo-">setTableInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a>&nbsp;ti2)</code>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#setTableInfo-org.apache.hadoop.hbase.util.HbckTableInfo-">setTableInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a>&nbsp;ti)</code>
 <div class="block">Set the TableInfo used by all HRegionInfos fabricated by other callbacks</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandler.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html#setTableInfo-org.apache.hadoop.hbase.util.HbckTableInfo-">setTableInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a>&nbsp;ti)</code>
+<td class="colLast"><span class="typeNameLabel">TableIntegrityErrorHandlerImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html#setTableInfo-org.apache.hadoop.hbase.util.HbckTableInfo-">setTableInfo</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a>&nbsp;ti2)</code>
 <div class="block">Set the TableInfo used by all HRegionInfos fabricated by other callbacks</div>
 </td>
 </tr>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/IdLock.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/IdLock.html
index 0f7a607..400b0ce 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/IdLock.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/IdLock.html
@@ -180,11 +180,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/IdLock.html" title="class in org.apache.hadoop.hbase.util">IdLock</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#procExecutionLock">procExecutionLock</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html#procExecutionLock">procExecutionLock</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/IdLock.html" title="class in org.apache.hadoop.hbase.util">IdLock</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html#procExecutionLock">procExecutionLock</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#procExecutionLock">procExecutionLock</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/KeyLocker.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/KeyLocker.html
index 1393f04..bb33f8a 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/KeyLocker.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/KeyLocker.html
@@ -180,11 +180,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/KeyLocker.html" title="class in org.apache.hadoop.hbase.util">KeyLocker</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#createLock">createLock</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#createLock">createLock</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/KeyLocker.html" title="class in org.apache.hadoop.hbase.util">KeyLocker</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#createLock">createLock</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#createLock">createLock</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/NonceKey.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/NonceKey.html
index 8837756..2e45519 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/NonceKey.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/NonceKey.html
@@ -329,15 +329,15 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/NonceKey.html" title="class in org.apache.hadoop.hbase.util">NonceKey</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#nonceKeysToProcIdsMap">nonceKeysToProcIdsMap</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/NonceKey.html" title="class in org.apache.hadoop.hbase.util">NonceKey</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureExecutor.html#nonceKeysToProcIdsMap">nonceKeysToProcIdsMap</a></span></code>
 <div class="block">Helper map to lookup whether the procedure already issued from the same client.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/NonceKey.html" title="class in org.apache.hadoop.hbase.util">NonceKey</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">CompletedProcedureCleaner.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/procedure2/CompletedProcedureCleaner.html#nonceKeysToProcIdsMap">nonceKeysToProcIdsMap</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/ObjectIntPair.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/ObjectIntPair.html
index dadea3b..5a95999 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/ObjectIntPair.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/ObjectIntPair.html
@@ -114,17 +114,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#tmpPair">tmpPair</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.SeekerState.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html#tmpPair">tmpPair</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">BufferedDataBlockEncoder.BufferedEncodedSeeker.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html#tmpPair">tmpPair</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RowIndexSeekerV1.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html#tmpPair">tmpPair</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -178,14 +178,6 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>abstract void</code></td>
-<td class="colLast"><span class="typeNameLabel">ByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#asSubByteBuffer-int-int-org.apache.hadoop.hbase.util.ObjectIntPair-">asSubByteBuffer</a></span>(int&nbsp;offset,
-               int&nbsp;length,
-               <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;pair)</code>
-<div class="block">Returns bytes from given offset till length specified, as a single ByteBuffer.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">MultiByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/MultiByteBuff.html#asSubByteBuffer-int-int-org.apache.hadoop.hbase.util.ObjectIntPair-">asSubByteBuffer</a></span>(int&nbsp;offset,
                int&nbsp;length,
@@ -193,12 +185,20 @@
 <div class="block">Returns bytes from given offset till length specified, as a single ByteBuffer.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">SingleByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/SingleByteBuff.html#asSubByteBuffer-int-int-org.apache.hadoop.hbase.util.ObjectIntPair-">asSubByteBuffer</a></span>(int&nbsp;offset,
                int&nbsp;length,
                <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;pair)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract void</code></td>
+<td class="colLast"><span class="typeNameLabel">ByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#asSubByteBuffer-int-int-org.apache.hadoop.hbase.util.ObjectIntPair-">asSubByteBuffer</a></span>(int&nbsp;offset,
+               int&nbsp;length,
+               <a href="../../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;pair)</code>
+<div class="block">Returns bytes from given offset till length specified, as a single ByteBuffer.</div>
+</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/Order.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/Order.html
index 49754fa..366dc10 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/Order.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/Order.html
@@ -112,15 +112,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#order">order</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#order">order</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#order">order</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#order">order</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#order">order</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#order">order</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -133,31 +133,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Union4.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union4.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
@@ -165,38 +141,62 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawShort.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawShort.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Union3.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union3.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#getOrder--">getOrder</a></span>()</code>
-<div class="block">Retrieve the sort <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><code>Order</code></a> imposed by this data type, or null when
- natural ordering is not preserved.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Union2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union2.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Union4.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union4.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Union2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union2.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Union3.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union3.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#getOrder--">getOrder</a></span>()</code>
+<div class="block">Retrieve the sort <a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><code>Order</code></a> imposed by this data type, or null when
+ natural ordering is not preserved.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#getOrder--">getOrder</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util">Order</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/Pair.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/Pair.html
index 6d8a2d4..61db6fd 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/Pair.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/Pair.html
@@ -558,11 +558,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RawAsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncHBaseAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncHBaseAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>default <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],byte[]&gt;&gt;&gt;</code></td>
@@ -581,18 +581,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#bulkLoad-org.apache.hadoop.hbase.TableName-java.util.List-byte:A-boolean-org.apache.hadoop.security.token.Token-java.lang.String-boolean-java.util.List-boolean-">bulkLoad</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;familyPaths,
-        byte[]&nbsp;row,
-        boolean&nbsp;assignSeqNum,
-        org.apache.hadoop.security.token.Token&lt;?&gt;&nbsp;userToken,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken,
-        boolean&nbsp;copyFiles,
-        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;clusterIds,
-        boolean&nbsp;replicate)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#bulkLoad-org.apache.hadoop.hbase.TableName-java.util.List-byte:A-boolean-org.apache.hadoop.security.token.Token-java.lang.String-boolean-java.util.List-boolean-">bulkLoad</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;familyPaths,
         byte[]&nbsp;row,
@@ -606,6 +594,18 @@
  where the given bulk load has already been processed (important for bulk loading replication).</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#bulkLoad-org.apache.hadoop.hbase.TableName-java.util.List-byte:A-boolean-org.apache.hadoop.security.token.Token-java.lang.String-boolean-java.util.List-boolean-">bulkLoad</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[],<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;familyPaths,
+        byte[]&nbsp;row,
+        boolean&nbsp;assignSeqNum,
+        org.apache.hadoop.security.token.Token&lt;?&gt;&nbsp;userToken,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;bulkToken,
+        boolean&nbsp;copyFiles,
+        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;clusterIds,
+        boolean&nbsp;replicate)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -914,16 +914,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
+    <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServer.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
     <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>
 <div class="block">This is a server side method, which is invoked over RPC.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.com.google.protobuf.Message,<a href="../../../../../../org/apache/hadoop/hbase/CellScanner.html" title="interface in org.apache.hadoop.hbase">CellScanner</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RpcServerInterface.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcServerInterface.html#call-org.apache.hadoop.hbase.ipc.RpcCall-org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler-">call</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ipc/RpcCall.html" title="interface in org.apache.hadoop.hbase.ipc">RpcCall</a>&nbsp;call,
-    <a href="../../../../../../org/apache/hadoop/hbase/monitoring/MonitoredRPCHandler.html" title="interface in org.apache.hadoop.hbase.monitoring">MonitoredRPCHandler</a>&nbsp;status)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hbase.thirdparty.io.netty.channel.EventLoopGroup,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;? extends org.apache.hbase.thirdparty.io.netty.channel.Channel&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">NettyRpcClientConfigHelper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/ipc/NettyRpcClientConfigHelper.html#getDefaultEventLoopConfig-org.apache.hadoop.conf.Configuration-">getDefaultEventLoopConfig</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
@@ -948,11 +948,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[][],byte[][]&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#getStartEndKeys--">getStartEndKeys</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormat.html#getStartEndKeys--">getStartEndKeys</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;byte[][],byte[][]&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">TableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormat.html#getStartEndKeys--">getStartEndKeys</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html#getStartEndKeys--">getStartEndKeys</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
@@ -1508,18 +1508,18 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
+          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
+          <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
           <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>
 <div class="block">Change ownership for the queue identified by queueId and belongs to a dead region server.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html?is-external=true" title="class or interface in java.util">SortedSet</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#claimQueue-org.apache.hadoop.hbase.ServerName-java.lang.String-org.apache.hadoop.hbase.ServerName-">claimQueue</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;sourceServerName,
-          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queueId,
-          <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;destServerName)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#getLastSequenceIdWithVersion-java.lang.String-java.lang.String-">getLastSequenceIdWithVersion</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;encodedRegionName,
@@ -1556,16 +1556,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addHFileRefs-java.lang.String-java.util.List-">addHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
+            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;&gt;&nbsp;pairs)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html#addHFileRefs-java.lang.String-java.util.List-">addHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;&gt;&nbsp;pairs)</code>
 <div class="block">Add new hfile references to the queue.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ZKReplicationQueueStorage.html#addHFileRefs-java.lang.String-java.util.List-">addHFileRefs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;peerId,
-            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path&gt;&gt;&nbsp;pairs)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -1899,17 +1899,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
+              <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AuthenticationProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
               <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>
 <div class="block">Chooses the authentication provider which should be used given the provided client context
  from the authentication providers passed in via <a href="../../../../../../org/apache/hadoop/hbase/security/provider/AuthenticationProviderSelector.html#configure-org.apache.hadoop.conf.Configuration-java.util.Collection-"><code>AuthenticationProviderSelector.configure(Configuration, Collection)</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/provider/SaslClientAuthenticationProvider.html" title="interface in org.apache.hadoop.hbase.security.provider">SaslClientAuthenticationProvider</a>,org.apache.hadoop.security.token.Token&lt;? extends org.apache.hadoop.security.token.TokenIdentifier&gt;&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">BuiltInProviderSelector.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/provider/BuiltInProviderSelector.html#selectProvider-java.lang.String-org.apache.hadoop.hbase.security.User-">selectProvider</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clusterId,
-              <a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -2142,17 +2142,17 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.hbase.thrift2.generated.THBaseService.Client,org.apache.thrift.transport.TTransport&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">ThriftClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift2/client/ThriftClientBuilder.html#getClient--">getClient</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.hbase.thrift2.generated.THBaseService.Client,org.apache.thrift.transport.TTransport&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ThriftConnection.DefaultThriftClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift2/client/ThriftConnection.DefaultThriftClientBuilder.html#getClient--">getClient</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.hbase.thrift2.generated.THBaseService.Client,org.apache.thrift.transport.TTransport&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ThriftConnection.HTTPThriftClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift2/client/ThriftConnection.HTTPThriftClientBuilder.html#getClient--">getClient</a></span>()</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;org.apache.hadoop.hbase.thrift2.generated.THBaseService.Client,org.apache.thrift.transport.TTransport&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ThriftClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift2/client/ThriftClientBuilder.html#getClient--">getClient</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&gt;&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">ThriftAdmin.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift2/client/ThriftAdmin.html#getConfiguredNamespacesAndTablesInRSGroup-java.lang.String-">getConfiguredNamespacesAndTablesInRSGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;groupName)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html
index 6dc1725..45d7c8d 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/PositionedByteRange.html
@@ -124,45 +124,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
@@ -176,75 +144,107 @@
 <td class="colLast"><span class="typeNameLabel">TerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedFloat32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawShort.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawShort.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html" title="type parameter in DataType">T</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
-<div class="block">Read an instance of <code>T</code> from the buffer <code>src</code>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang">Number</a></code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedNumeric.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang">Float</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true" title="class or interface in java.lang">Byte</a></code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a></code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html" title="type parameter in DataType">T</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
+<div class="block">Read an instance of <code>T</code> from the buffer <code>src</code>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>org.apache.hadoop.hbase.example.protobuf.generated.CellMessage.Cell</code></td>
 <td class="colLast"><span class="typeNameLabel">PBCell.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/PBCell.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
-      int&nbsp;length)</code>
-<div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Struct.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Struct.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
       int&nbsp;index)</code>
 <div class="block">Read the field at <code>index</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RawBytesTerminated.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytesTerminated.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
       int&nbsp;length)</code>
 <div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>byte[]</code></td>
 <td class="colLast"><span class="typeNameLabel">RawBytesFixedLength.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytesFixedLength.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
       int&nbsp;length)</code>
 <div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#decode-org.apache.hadoop.hbase.util.PositionedByteRange-int-">decode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src,
+      int&nbsp;length)</code>
+<div class="block">Read a <code>byte[]</code> from the buffer <code>src</code>.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/types/Union2.html" title="type parameter in Union2">A</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Union2.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/Union2.html#decodeA-org.apache.hadoop.hbase.util.PositionedByteRange-">decodeA</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
@@ -277,13 +277,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>double</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#decodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-">decodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
+<td class="colLast"><span class="typeNameLabel">OrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedNumeric.html#decodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-">decodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
 <div class="block">Read a <code>double</code> value from the buffer <code>src</code>.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>double</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedNumeric.html#decodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-">decodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
+<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#decodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-">decodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
 <div class="block">Read a <code>double</code> value from the buffer <code>src</code>.</div>
 </td>
 </tr>
@@ -329,36 +329,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      byte[]&nbsp;val)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      byte[]&nbsp;val)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedBlobVar.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      byte[]&nbsp;val,
-      int&nbsp;voff,
-      int&nbsp;vlen)</code>
-<div class="block">Write a subset of <code>val</code> to <code>dst</code>.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      byte[]&nbsp;val,
-      int&nbsp;voff,
-      int&nbsp;vlen)</code>
-<div class="block">Write <code>val</code> into <code>dst</code>, respecting <code>voff</code> and <code>vlen</code>.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
@@ -391,17 +373,35 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">OrderedBlob.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      byte[]&nbsp;val,
+      int&nbsp;voff,
+      int&nbsp;vlen)</code>
+<div class="block">Write a subset of <code>val</code> to <code>dst</code>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-byte:A-int-int-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      byte[]&nbsp;val,
+      int&nbsp;voff,
+      int&nbsp;vlen)</code>
+<div class="block">Write <code>val</code> into <code>dst</code>, respecting <code>voff</code> and <code>vlen</code>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">PBCell.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/PBCell.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-org.apache.hadoop.hbase.example.protobuf.generated.CellMessage.Cell-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       org.apache.hadoop.hbase.example.protobuf.generated.CellMessage.Cell&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Double-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Double-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Double-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Double-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang">Double</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -416,12 +416,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Integer-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -446,22 +446,22 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Short-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawShort.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawShort.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Short-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawShort.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawShort.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Short-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.Short-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true" title="class or interface in java.lang">Short</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedString.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-java.lang.String-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -473,16 +473,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+      <a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a>&nbsp;val)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
       <a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html" title="type parameter in DataType">T</a>&nbsp;val)</code>
 <div class="block">Write instance <code>val</code> into buffer <code>dst</code>.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">FixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html#encode-org.apache.hadoop.hbase.util.PositionedByteRange-T-">encode</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
-      <a href="../../../../../../org/apache/hadoop/hbase/types/FixedLengthWrapper.html" title="type parameter in FixedLengthWrapper">T</a>&nbsp;val)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><span class="typeNameLabel">OrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html#encodeByte-org.apache.hadoop.hbase.util.PositionedByteRange-byte-">encodeByte</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
@@ -492,14 +492,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#encodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-double-">encodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedNumeric.html#encodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-double-">encodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
             double&nbsp;val)</code>
 <div class="block">Write instance <code>val</code> into buffer <code>dst</code>.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedNumeric.html#encodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-double-">encodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
+<td class="colLast"><span class="typeNameLabel">OrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html#encodeDouble-org.apache.hadoop.hbase.util.PositionedByteRange-double-">encodeDouble</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;dst,
             double&nbsp;val)</code>
 <div class="block">Write instance <code>val</code> into buffer <code>dst</code>.</div>
 </td>
@@ -559,23 +559,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -589,7 +573,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawString.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawString.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawByte.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawByte.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
@@ -597,13 +581,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
-<div class="block">Skip <code>src</code>'s position forward over one encoded value.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">RawInteger.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawInteger.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawLong.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawLong.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawDouble.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawDouble.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -611,7 +601,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><span class="typeNameLabel">RawFloat.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawFloat.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">OrderedBytesBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">DataType.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/DataType.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>
+<div class="block">Skip <code>src</code>'s position forward over one encoded value.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">RawBytes.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/types/RawBytes.html#skip-org.apache.hadoop.hbase.util.PositionedByteRange-">skip</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a>&nbsp;src)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
@@ -685,28 +685,34 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#get-byte:A-">get</a></span>(byte[]&nbsp;dst)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#deepCopy--">deepCopy</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#get-byte:A-">get</a></span>(byte[]&nbsp;dst)</code>
 <div class="block">Fill <code>dst</code> with bytes from the range, starting from <code>position</code>.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#get-byte:A-">get</a></span>(byte[]&nbsp;dst)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#get-byte:A-int-int-">get</a></span>(byte[]&nbsp;dst,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#get-byte:A-int-int-">get</a></span>(byte[]&nbsp;dst,
    int&nbsp;offset,
    int&nbsp;length)</code>
@@ -714,27 +720,11 @@
  <code>position</code>.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#get-byte:A-int-int-">get</a></span>(byte[]&nbsp;dst,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
-   byte[]&nbsp;dst)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
    byte[]&nbsp;dst)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
-   byte[]&nbsp;dst)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
@@ -742,21 +732,17 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
-   byte[]&nbsp;dst,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
+   byte[]&nbsp;dst)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
-   byte[]&nbsp;dst,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#get-int-byte:A-">get</a></span>(int&nbsp;index,
+   byte[]&nbsp;dst)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
    byte[]&nbsp;dst,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
@@ -770,17 +756,39 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
+   byte[]&nbsp;dst,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#get-int-byte:A-int-int-">get</a></span>(int&nbsp;index,
+   byte[]&nbsp;dst,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>
 <div class="block">Store <code>val</code> at the next position in this range.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte-">put</a></span>(byte&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -790,11 +798,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-">put</a></span>(byte[]&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -806,15 +818,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
+   byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-byte:A-int-int-">put</a></span>(byte[]&nbsp;val,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
+   byte&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -823,13 +833,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
-   byte&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
+   byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte-">put</a></span>(int&nbsp;index,
-   byte&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
+   byte[]&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -838,13 +848,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
-   byte[]&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
+   byte[]&nbsp;val,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-">put</a></span>(int&nbsp;index,
-   byte[]&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
+   byte[]&nbsp;val,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -855,17 +869,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
-   byte[]&nbsp;val,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#put-int-byte:A-int-int-">put</a></span>(int&nbsp;index,
-   byte[]&nbsp;val,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -875,11 +883,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
+      int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-">putInt</a></span>(int&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
+      int&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -888,13 +898,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
-      int&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
+       long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putInt-int-int-">putInt</a></span>(int&nbsp;index,
-      int&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
+       long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -903,13 +913,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
-       long&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-int-long-">putLong</a></span>(int&nbsp;index,
-       long&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -919,11 +927,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
+        short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putLong-long-">putLong</a></span>(long&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
+        short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -932,13 +942,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
-        short&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-int-short-">putShort</a></span>(int&nbsp;index,
-        short&nbsp;val)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -948,43 +956,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#putShort-short-">putShort</a></span>(short&nbsp;val)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
-   int&nbsp;offset,
-   int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#set-byte:A-">set</a></span>(byte[]&nbsp;bytes)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
    int&nbsp;offset,
    int&nbsp;length)</code>&nbsp;</td>
 </tr>
@@ -996,15 +984,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#set-byte:A-int-int-">set</a></span>(byte[]&nbsp;bytes,
+   int&nbsp;offset,
+   int&nbsp;length)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -1012,20 +1004,36 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#setLength-int-">setLength</a></span>(int&nbsp;length)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#set-int-">set</a></span>(int&nbsp;capacity)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#setLength-int-">setLength</a></span>(int&nbsp;length)</code>
 <div class="block">Update the length of this range.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setLength-int-">setLength</a></span>(int&nbsp;length)</code>
 <div class="block">Update the length of this range.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#setLength-int-">setLength</a></span>(int&nbsp;length)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>
@@ -1034,11 +1042,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#setOffset-int-">setOffset</a></span>(int&nbsp;offset)</code>
+<div class="block">Update the beginning of this range.</div>
+</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setLimit-int-">setLimit</a></span>(int&nbsp;limit)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setOffset-int-">setOffset</a></span>(int&nbsp;offset)</code>
+<div class="block">Update the beginning of this range.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -1046,25 +1058,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#setOffset-int-">setOffset</a></span>(int&nbsp;offset)</code>
-<div class="block">Update the beginning of this range.</div>
-</td>
+<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setPosition-int-">setPosition</a></span>(int&nbsp;position)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setOffset-int-">setOffset</a></span>(int&nbsp;offset)</code>
-<div class="block">Update the beginning of this range.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#setPosition-int-">setPosition</a></span>(int&nbsp;position)</code>
 <div class="block">Update the <code>position</code> index.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html#setPosition-int-">setPosition</a></span>(int&nbsp;position)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -1072,11 +1080,13 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
+                   int&nbsp;copyLength)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopy--">shallowCopy</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
+                   int&nbsp;copyLength)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
@@ -1085,26 +1095,16 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
-                   int&nbsp;copyLength)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#shallowCopySubRange-int-int-">shallowCopySubRange</a></span>(int&nbsp;innerOffset,
-                   int&nbsp;copyLength)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
 <td class="colLast"><span class="typeNameLabel">PositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/util/PositionedByteRange.html" title="interface in org.apache.hadoop.hbase.util">PositionedByteRange</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SimplePositionedByteRange.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html#unset--">unset</a></span>()</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/PrettyPrinter.Unit.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/PrettyPrinter.Unit.html
index 843ea24..ae4e1b7 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/PrettyPrinter.Unit.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/PrettyPrinter.Unit.html
@@ -110,11 +110,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util">PrettyPrinter.Unit</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#getUnit-java.lang.String-">getUnit</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#getUnit-java.lang.String-">getUnit</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util">PrettyPrinter.Unit</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.html#getUnit-java.lang.String-">getUnit</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptorBuilder.html#getUnit-java.lang.String-">getUnit</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;key)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.RetryConfig.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.RetryConfig.html
index ccbc829..8e98233 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.RetryConfig.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.RetryConfig.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.RetryConfig.html" title="class in org.apache.hadoop.hbase.util">RetryCounter.RetryConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RetryCounter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html#retryConfig">retryConfig</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RetryCounterFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounterFactory.html#retryConfig">retryConfig</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.RetryConfig.html" title="class in org.apache.hadoop.hbase.util">RetryCounter.RetryConfig</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RetryCounterFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounterFactory.html#retryConfig">retryConfig</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RetryCounter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html#retryConfig">retryConfig</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.html b/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.html
index 5b4b726..60f1aa4 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/RetryCounter.html
@@ -178,11 +178,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionRemoteProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionRemoteProcedureBase.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -200,15 +200,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SwitchRpcThrottleProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">InitMetaProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/InitMetaProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
@@ -230,11 +230,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractPeerNoLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/AbstractPeerNoLockProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ClaimReplicationQueuesProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html#retryCounter">retryCounter</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/package-frame.html b/devapidocs/org/apache/hadoop/hbase/util/package-frame.html
index 7594882..62ae65b 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/package-frame.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/package-frame.html
@@ -94,7 +94,6 @@
 <li><a href="ClientUtils.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">ClientUtils</a></li>
 <li><a href="CollectionBackedScanner.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CollectionBackedScanner</a></li>
 <li><a href="CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CommonFSUtils</a></li>
-<li><a href="CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CommonFSUtils.DfsBuilderUtility</a></li>
 <li><a href="CompressionTest.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">CompressionTest</a></li>
 <li><a href="ConcatenatedLists.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">ConcatenatedLists</a></li>
 <li><a href="ConcurrentMapUtils.html" title="class in org.apache.hadoop.hbase.util" target="classFrame">ConcurrentMapUtils</a></li>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/package-summary.html b/devapidocs/org/apache/hadoop/hbase/util/package-summary.html
index 4014e49..0e29e1b 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/package-summary.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/package-summary.html
@@ -533,367 +533,363 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util">CommonFSUtils.DfsBuilderUtility</a></td>
-<td class="colLast">&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/CompressionTest.html" title="class in org.apache.hadoop.hbase.util">CompressionTest</a></td>
 <td class="colLast">
 <div class="block">Compression validation test.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ConcatenatedLists.html" title="class in org.apache.hadoop.hbase.util">ConcatenatedLists</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">A collection class that contains multiple sub-lists, which allows us to not copy lists.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ConcurrentMapUtils.html" title="class in org.apache.hadoop.hbase.util">ConcurrentMapUtils</a></td>
 <td class="colLast">
 <div class="block">Utility methods for dealing with Collections, including treating null collections as empty.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ConfigurationUtil.html" title="class in org.apache.hadoop.hbase.util">ConfigurationUtil</a></td>
 <td class="colLast">
 <div class="block">Utilities for storing more complex collection types in
  <code>Configuration</code> instances.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ConnectionCache.html" title="class in org.apache.hadoop.hbase.util">ConnectionCache</a></td>
 <td class="colLast">
 <div class="block">A utility to store user specific HConnections in memory.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/CoprocessorClassLoader.html" title="class in org.apache.hadoop.hbase.util">CoprocessorClassLoader</a></td>
 <td class="colLast">
 <div class="block">ClassLoader used to load classes for Coprocessor instances.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/DefaultEnvironmentEdge.html" title="class in org.apache.hadoop.hbase.util">DefaultEnvironmentEdge</a></td>
 <td class="colLast">
 <div class="block">Default implementation of an environment edge.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/DirectMemoryUtils.html" title="class in org.apache.hadoop.hbase.util">DirectMemoryUtils</a></td>
 <td class="colLast">
 <div class="block">Utilities for interacting with and monitoring DirectByteBuffer allocations.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/DNS.html" title="class in org.apache.hadoop.hbase.util">DNS</a></td>
 <td class="colLast">
 <div class="block">Wrapper around Hadoop's DNS class to hide reflection.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/DynamicClassLoader.html" title="class in org.apache.hadoop.hbase.util">DynamicClassLoader</a></td>
 <td class="colLast">
 <div class="block">This is a class loader that can load classes dynamically from new
  jar files under a configured folder.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/EncryptionTest.html" title="class in org.apache.hadoop.hbase.util">EncryptionTest</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/EnvironmentEdgeManager.html" title="class in org.apache.hadoop.hbase.util">EnvironmentEdgeManager</a></td>
 <td class="colLast">
 <div class="block">Manages a singleton instance of the environment edge.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ExceptionUtil.html" title="class in org.apache.hadoop.hbase.util">ExceptionUtil</a></td>
 <td class="colLast">
 <div class="block">This class handles the different interruption classes.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ExponentialMovingAverage.html" title="class in org.apache.hadoop.hbase.util">ExponentialMovingAverage</a></td>
 <td class="colLast">
 <div class="block">EMA is similar to <a href="../../../../../org/apache/hadoop/hbase/util/WeightedMovingAverage.html" title="class in org.apache.hadoop.hbase.util"><code>WeightedMovingAverage</code></a> in weighted, but the weighting factor decrease
  exponentially.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSRegionScanner.html" title="class in org.apache.hadoop.hbase.util">FSRegionScanner</a></td>
 <td class="colLast">
 <div class="block">Thread that walks over the filesystem, and computes the mappings
  Region -> BestHost and Region -> <code>Map&lt;HostName, fractional-locality-of-region&gt;</code></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSTableDescriptors.html" title="class in org.apache.hadoop.hbase.util">FSTableDescriptors</a></td>
 <td class="colLast">
 <div class="block">Implementation of <a href="../../../../../org/apache/hadoop/hbase/TableDescriptors.html" title="interface in org.apache.hadoop.hbase"><code>TableDescriptors</code></a> that reads descriptors from the
  passed filesystem.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.html" title="class in org.apache.hadoop.hbase.util">FSUtils</a></td>
 <td class="colLast">
 <div class="block">Utility methods for interacting with the underlying file system.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.BlackListDirFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.BlackListDirFilter</a></td>
 <td class="colLast">
 <div class="block">Directory filter that doesn't include any of the directories in the specified blacklist</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.DirFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.DirFilter</a></td>
 <td class="colLast">
 <div class="block">A <code>PathFilter</code> that only allows directories.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.FamilyDirFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.FamilyDirFilter</a></td>
 <td class="colLast">
 <div class="block">Filter for all dirs that are legal column family names.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.FileFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.FileFilter</a></td>
 <td class="colLast">
 <div class="block">A <code>PathFilter</code> that returns only regular files.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.HFileFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.HFileFilter</a></td>
 <td class="colLast">
 <div class="block">Filter for HFiles that excludes reference files.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.HFileLinkFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.HFileLinkFilter</a></td>
 <td class="colLast">
 <div class="block">Filter for HFileLinks (StoreFiles and HFiles not included).</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.ReferenceFileFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.ReferenceFileFilter</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.RegionDirFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.RegionDirFilter</a></td>
 <td class="colLast">
 <div class="block">Filter for all dirs that don't start with '.'</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSUtils.UserTableDirFilter.html" title="class in org.apache.hadoop.hbase.util">FSUtils.UserTableDirFilter</a></td>
 <td class="colLast">
 <div class="block">A <code>PathFilter</code> that returns usertable directories.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FSVisitor.html" title="class in org.apache.hadoop.hbase.util">FSVisitor</a></td>
 <td class="colLast">
 <div class="block">Utility methods for interacting with the hbase.root file system.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/FutureUtils.html" title="class in org.apache.hadoop.hbase.util">FutureUtils</a></td>
 <td class="colLast">
 <div class="block">Helper class for processing futures.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/GetJavaProperty.html" title="class in org.apache.hadoop.hbase.util">GetJavaProperty</a></td>
 <td class="colLast">
 <div class="block">A generic way for querying Java properties.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/GsonUtil.html" title="class in org.apache.hadoop.hbase.util">GsonUtil</a></td>
 <td class="colLast">
 <div class="block">Helper class for gson.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Hash.html" title="class in org.apache.hadoop.hbase.util">Hash</a></td>
 <td class="colLast">
 <div class="block">This class represents a common API for hashing functions.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HashedBytes.html" title="class in org.apache.hadoop.hbase.util">HashedBytes</a></td>
 <td class="colLast">
 <div class="block">This class encapsulates a byte array and overrides hashCode and equals so
  that it's identity is based on the data rather than the array instance.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HashKey.html" title="class in org.apache.hadoop.hbase.util">HashKey</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">Used to calculate the hash <a href="../../../../../org/apache/hadoop/hbase/util/Hash.html" title="class in org.apache.hadoop.hbase.util"><code>Hash</code></a> algorithms for Bloomfilters.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseConfTool.html" title="class in org.apache.hadoop.hbase.util">HBaseConfTool</a></td>
 <td class="colLast">
 <div class="block">Tool that prints out a configuration.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck</a></td>
 <td class="colLast">Deprecated
 <div class="block"><span class="deprecationComment">For removal in hbase-4.0.0.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.FileLockCallable.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.FileLockCallable</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.HBaseFsckTool.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.HBaseFsckTool</a></td>
 <td class="colLast">
 <div class="block">This is a Tool wrapper that gathers -Dxxx=yyy configuration settings from the command line.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.PrintingErrorReporter.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.PrintingErrorReporter</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.RegionBoundariesInformation.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.RegionBoundariesInformation</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemHdfsRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.WorkItemHdfsRegionInfo</a></td>
 <td class="colLast">
 <div class="block">Contact hdfs and get all information about specified table directory into
  regioninfo list.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemOverlapMerge.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.WorkItemOverlapMerge</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.WorkItemRegion.html" title="class in org.apache.hadoop.hbase.util">HBaseFsck.WorkItemRegion</a></td>
 <td class="colLast">
 <div class="block">Contact a region server and get all information from it</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsckRepair.html" title="class in org.apache.hadoop.hbase.util">HBaseFsckRepair</a></td>
 <td class="colLast">
 <div class="block">This class contains helper methods that repair parts of hbase's filesystem
  contents.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo</a></td>
 <td class="colLast">
 <div class="block">Maintain information about a particular region.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.HdfsEntry.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo.HdfsEntry</a></td>
 <td class="colLast">
 <div class="block">Stores the regioninfo entries from HDFS</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.MetaEntry.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo.MetaEntry</a></td>
 <td class="colLast">
 <div class="block">Stores the regioninfo entries scanned from META</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HbckRegionInfo.OnlineEntry.html" title="class in org.apache.hadoop.hbase.util">HbckRegionInfo.OnlineEntry</a></td>
 <td class="colLast">
 <div class="block">Stores the regioninfo retrieved from Online region servers.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HbckTableInfo.html" title="class in org.apache.hadoop.hbase.util">HbckTableInfo</a></td>
 <td class="colLast">
 <div class="block">Maintain information about a particular table.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/HFileArchiveUtil.html" title="class in org.apache.hadoop.hbase.util">HFileArchiveUtil</a></td>
 <td class="colLast">
 <div class="block">Helper class for all utilities related to archival/retrieval of HFiles</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/IdLock.html" title="class in org.apache.hadoop.hbase.util">IdLock</a></td>
 <td class="colLast">
 <div class="block">Allows multiple concurrent clients to lock on a numeric id with a minimal
  memory overhead.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/IdLock.Entry.html" title="class in org.apache.hadoop.hbase.util">IdLock.Entry</a></td>
 <td class="colLast">
 <div class="block">An entry returned to the client as a lock object</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/IdReadWriteLock.html" title="class in org.apache.hadoop.hbase.util">IdReadWriteLock</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">Allows multiple concurrent clients to lock on a numeric id with ReentrantReadWriteLock.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/IdReadWriteLockStrongRef.html" title="class in org.apache.hadoop.hbase.util">IdReadWriteLockStrongRef</a>&lt;T&gt;</td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/IdReadWriteLockWithObjectPool.html" title="class in org.apache.hadoop.hbase.util">IdReadWriteLockWithObjectPool</a>&lt;T&gt;</td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ImmutableByteArray.html" title="class in org.apache.hadoop.hbase.util">ImmutableByteArray</a></td>
 <td class="colLast">
 <div class="block">Mainly used as keys for HashMap.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/IncrementingEnvironmentEdge.html" title="class in org.apache.hadoop.hbase.util">IncrementingEnvironmentEdge</a></td>
 <td class="colLast">
 <div class="block">Uses an incrementing algorithm instead of the default.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JenkinsHash.html" title="class in org.apache.hadoop.hbase.util">JenkinsHash</a></td>
 <td class="colLast">
 <div class="block">Produces 32-bit hash for hash table lookup.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JRubyFormat.html" title="class in org.apache.hadoop.hbase.util">JRubyFormat</a></td>
 <td class="colLast">
 <div class="block">Utility class for converting objects to JRuby.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JSONBean.html" title="class in org.apache.hadoop.hbase.util">JSONBean</a></td>
 <td class="colLast">
 <div class="block">Utility for doing JSON and MBeans.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JsonMapper.html" title="class in org.apache.hadoop.hbase.util">JsonMapper</a></td>
 <td class="colLast">
 <div class="block">Utility class for converting objects to JSON</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JSONMetricUtil.html" title="class in org.apache.hadoop.hbase.util">JSONMetricUtil</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JVM.html" title="class in org.apache.hadoop.hbase.util">JVM</a></td>
 <td class="colLast">
 <div class="block">This class is a wrapper for the implementation of
@@ -902,110 +898,110 @@
  depending on the runtime (vendor) used.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JVMClusterUtil.html" title="class in org.apache.hadoop.hbase.util">JVMClusterUtil</a></td>
 <td class="colLast">
 <div class="block">Utility used running a cluster all in the one JVM.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JVMClusterUtil.MasterThread.html" title="class in org.apache.hadoop.hbase.util">JVMClusterUtil.MasterThread</a></td>
 <td class="colLast">
 <div class="block">Datastructure to hold Master Thread and Master instance</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JVMClusterUtil.RegionServerThread.html" title="class in org.apache.hadoop.hbase.util">JVMClusterUtil.RegionServerThread</a></td>
 <td class="colLast">
 <div class="block">Datastructure to hold RegionServer Thread and RegionServer instance</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JvmPauseMonitor.html" title="class in org.apache.hadoop.hbase.util">JvmPauseMonitor</a></td>
 <td class="colLast">
 <div class="block">Class which sets up a simple thread which runs in a loop sleeping
  for a short interval of time.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JvmPauseMonitor.GcTimes.html" title="class in org.apache.hadoop.hbase.util">JvmPauseMonitor.GcTimes</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/JvmVersion.html" title="class in org.apache.hadoop.hbase.util">JvmVersion</a></td>
 <td class="colLast">
 <div class="block">Utility class to get and check the current JVM version.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/KeyLocker.html" title="class in org.apache.hadoop.hbase.util">KeyLocker</a>&lt;K&gt;</td>
 <td class="colLast">
 <div class="block">A utility class to manage a set of locks.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/LogMonitoring.html" title="class in org.apache.hadoop.hbase.util">LogMonitoring</a></td>
 <td class="colLast">
 <div class="block">Utility functions for reading the log4j logs that are being written by HBase.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/LossyCounting.html" title="class in org.apache.hadoop.hbase.util">LossyCounting</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">LossyCounting utility, bounded data structure that maintains approximate high frequency
  elements in data stream.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ManualEnvironmentEdge.html" title="class in org.apache.hadoop.hbase.util">ManualEnvironmentEdge</a></td>
 <td class="colLast">
 <div class="block">An environment edge that uses a manually set value.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MapreduceDependencyClasspathTool.html" title="class in org.apache.hadoop.hbase.util">MapreduceDependencyClasspathTool</a></td>
 <td class="colLast">
 <div class="block">Generate a classpath string containing any jars required by mapreduce jobs.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MapReduceExtendedCell.html" title="class in org.apache.hadoop.hbase.util">MapReduceExtendedCell</a></td>
 <td class="colLast">
 <div class="block">A wrapper for a cell to be used with mapreduce, as the output value class for mappers/reducers.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MD5Hash.html" title="class in org.apache.hadoop.hbase.util">MD5Hash</a></td>
 <td class="colLast">
 <div class="block">Utility class for MD5
  MD5 hash produces a 128-bit digest.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Methods.html" title="class in org.apache.hadoop.hbase.util">Methods</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ModifyRegionUtils.html" title="class in org.apache.hadoop.hbase.util">ModifyRegionUtils</a></td>
 <td class="colLast">
 <div class="block">Utility methods for interacting with the regions.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MoveWithAck.html" title="class in org.apache.hadoop.hbase.util">MoveWithAck</a></td>
 <td class="colLast">
 <div class="block">Move Regions and make sure that they are up on the target server.If a region movement fails we
  exit as failure</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MoveWithoutAck.html" title="class in org.apache.hadoop.hbase.util">MoveWithoutAck</a></td>
 <td class="colLast">
 <div class="block">Move Regions without Acknowledging.Usefule in case of RS shutdown as we might want to shut the
  RS down anyways and not abort on a stuck region.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MovingAverage.html" title="class in org.apache.hadoop.hbase.util">MovingAverage</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">The purpose of introduction of <a href="../../../../../org/apache/hadoop/hbase/util/MovingAverage.html" title="class in org.apache.hadoop.hbase.util"><code>MovingAverage</code></a> mainly is to measure execution time of a
@@ -1013,7 +1009,7 @@
  machine states or situations, better case, then to act accordingly.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MunkresAssignment.html" title="class in org.apache.hadoop.hbase.util">MunkresAssignment</a></td>
 <td class="colLast">
 <div class="block">Computes the optimal (minimal cost) assignment of jobs to workers (or other
@@ -1024,131 +1020,131 @@
  Problem: An Improved Version of Munkres' Algorithm".</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MurmurHash.html" title="class in org.apache.hadoop.hbase.util">MurmurHash</a></td>
 <td class="colLast">
 <div class="block">This is a very fast, non-cryptographic hash suitable for general hash-based
  lookup.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/MurmurHash3.html" title="class in org.apache.hadoop.hbase.util">MurmurHash3</a></td>
 <td class="colLast">
 <div class="block">This is a very fast, non-cryptographic hash suitable for general hash-based
  lookup.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/NettyEventLoopGroupConfig.html" title="class in org.apache.hadoop.hbase.util">NettyEventLoopGroupConfig</a></td>
 <td class="colLast">
 <div class="block">Event loop group related config.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/NonceKey.html" title="class in org.apache.hadoop.hbase.util">NonceKey</a></td>
 <td class="colLast">
 <div class="block">This implementation is not smart and just treats nonce group and nonce as random bits.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ObjectIntPair.html" title="class in org.apache.hadoop.hbase.util">ObjectIntPair</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">A generic class for pair of an Object and and a primitive int value.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ObjectPool.html" title="class in org.apache.hadoop.hbase.util">ObjectPool</a>&lt;K,V&gt;</td>
 <td class="colLast">
 <div class="block">A thread-safe shared object pool in which object creation is expected to be lightweight, and the
  objects may be excessively created and discarded.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/OrderedBytes.html" title="class in org.apache.hadoop.hbase.util">OrderedBytes</a></td>
 <td class="colLast">
 <div class="block">Utility class that handles ordered byte arrays.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;T1,T2&gt;</td>
 <td class="colLast">
 <div class="block">A generic class for pairs.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/PairOfSameType.html" title="class in org.apache.hadoop.hbase.util">PairOfSameType</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">A generic, immutable class for pairs of objects both of type <code>T</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.html" title="class in org.apache.hadoop.hbase.util">PoolMap</a>&lt;K,V&gt;</td>
 <td class="colLast">
 <div class="block">The <code>PoolMap</code> maps a key to a collection of values, the elements
  of which are managed by a pool.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.RoundRobinPool.html" title="class in org.apache.hadoop.hbase.util">PoolMap.RoundRobinPool</a>&lt;R&gt;</td>
 <td class="colLast">
 <div class="block">The <code>RoundRobinPool</code> represents a <a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.Pool.html" title="interface in org.apache.hadoop.hbase.util"><code>PoolMap.Pool</code></a>, which
  stores its resources in an <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util"><code>ArrayList</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.ThreadLocalPool.html" title="class in org.apache.hadoop.hbase.util">PoolMap.ThreadLocalPool</a>&lt;R&gt;</td>
 <td class="colLast">
 <div class="block">The <code>ThreadLocalPool</code> represents a <a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.Pool.html" title="interface in org.apache.hadoop.hbase.util"><code>PoolMap.Pool</code></a> that
  works similarly to <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ThreadLocal.html?is-external=true" title="class or interface in java.lang"><code>ThreadLocal</code></a> class.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/PrettyPrinter.html" title="class in org.apache.hadoop.hbase.util">PrettyPrinter</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ProcessUtils.html" title="class in org.apache.hadoop.hbase.util">ProcessUtils</a></td>
 <td class="colLast">
 <div class="block">Process related utilities.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Random64.html" title="class in org.apache.hadoop.hbase.util">Random64</a></td>
 <td class="colLast">
 <div class="block">An instance of this class is used to generate a stream of
  pseudorandom numbers.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RecoverLeaseFSUtils.html" title="class in org.apache.hadoop.hbase.util">RecoverLeaseFSUtils</a></td>
 <td class="colLast">
 <div class="block">Utility methods for recovering file lease for hdfs.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ReflectionUtils.html" title="class in org.apache.hadoop.hbase.util">ReflectionUtils</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionMover.html" title="class in org.apache.hadoop.hbase.util">RegionMover</a></td>
 <td class="colLast">
 <div class="block">Tool for loading/unloading regions to/from given regionserver This tool can be run from Command
  line directly as a utility.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionMover.RegionMoverBuilder.html" title="class in org.apache.hadoop.hbase.util">RegionMover.RegionMoverBuilder</a></td>
 <td class="colLast">
 <div class="block">Builder for Region mover.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitCalculator.html" title="class in org.apache.hadoop.hbase.util">RegionSplitCalculator</a>&lt;R extends <a href="../../../../../org/apache/hadoop/hbase/util/KeyRange.html" title="interface in org.apache.hadoop.hbase.util">KeyRange</a>&gt;</td>
 <td class="colLast">
 <div class="block">This is a generic region split calculator.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.html" title="class in org.apache.hadoop.hbase.util">RegionSplitter</a></td>
 <td class="colLast">
 <div class="block">The <a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.html" title="class in org.apache.hadoop.hbase.util"><code>RegionSplitter</code></a> class provides several utilities to help in the
@@ -1156,248 +1152,248 @@
  instead of having HBase handle that automatically.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.DecimalStringSplit.html" title="class in org.apache.hadoop.hbase.util">RegionSplitter.DecimalStringSplit</a></td>
 <td class="colLast">
 <div class="block">The format of a DecimalStringSplit region boundary is the ASCII representation of
  reversed sequential number, or any other uniformly distributed decimal value.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.HexStringSplit.html" title="class in org.apache.hadoop.hbase.util">RegionSplitter.HexStringSplit</a></td>
 <td class="colLast">
 <div class="block">HexStringSplit is a well-known <a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.SplitAlgorithm.html" title="interface in org.apache.hadoop.hbase.util"><code>RegionSplitter.SplitAlgorithm</code></a> for choosing region
  boundaries.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.NumberStringSplit.html" title="class in org.apache.hadoop.hbase.util">RegionSplitter.NumberStringSplit</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RegionSplitter.UniformSplit.html" title="class in org.apache.hadoop.hbase.util">RegionSplitter.UniformSplit</a></td>
 <td class="colLast">
 <div class="block">A SplitAlgorithm that divides the space of possible keys evenly.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RetryCounter.html" title="class in org.apache.hadoop.hbase.util">RetryCounter</a></td>
 <td class="colLast">
 <div class="block">Operation retry accounting.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RetryCounter.BackoffPolicy.html" title="class in org.apache.hadoop.hbase.util">RetryCounter.BackoffPolicy</a></td>
 <td class="colLast">
 <div class="block">Policy for calculating sleeping intervals between retry attempts</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RetryCounter.ExponentialBackoffPolicy.html" title="class in org.apache.hadoop.hbase.util">RetryCounter.ExponentialBackoffPolicy</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RetryCounter.ExponentialBackoffPolicyWithLimit.html" title="class in org.apache.hadoop.hbase.util">RetryCounter.ExponentialBackoffPolicyWithLimit</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RetryCounter.RetryConfig.html" title="class in org.apache.hadoop.hbase.util">RetryCounter.RetryConfig</a></td>
 <td class="colLast">
 <div class="block">Configuration for a retry counter</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RetryCounterFactory.html" title="class in org.apache.hadoop.hbase.util">RetryCounterFactory</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RollingStatCalculator.html" title="class in org.apache.hadoop.hbase.util">RollingStatCalculator</a></td>
 <td class="colLast">
 <div class="block">This class maintains mean and variation for any sequence of input provided to it.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RowBloomContext.html" title="class in org.apache.hadoop.hbase.util">RowBloomContext</a></td>
 <td class="colLast">
 <div class="block">Handles ROW bloom related context.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RowBloomHashKey.html" title="class in org.apache.hadoop.hbase.util">RowBloomHashKey</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RowColBloomContext.html" title="class in org.apache.hadoop.hbase.util">RowColBloomContext</a></td>
 <td class="colLast">
 <div class="block">Handles ROWCOL bloom related context.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RowColBloomHashKey.html" title="class in org.apache.hadoop.hbase.util">RowColBloomHashKey</a></td>
 <td class="colLast">
 <div class="block">An hash key for ROWCOL bloom.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/RowPrefixFixedLengthBloomContext.html" title="class in org.apache.hadoop.hbase.util">RowPrefixFixedLengthBloomContext</a></td>
 <td class="colLast">
 <div class="block">Handles ROWPREFIX bloom related context.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ServerCommandLine.html" title="class in org.apache.hadoop.hbase.util">ServerCommandLine</a></td>
 <td class="colLast">
 <div class="block">Base class for command lines that start up various HBase daemons.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ServerRegionReplicaUtil.html" title="class in org.apache.hadoop.hbase.util">ServerRegionReplicaUtil</a></td>
 <td class="colLast">
 <div class="block">Similar to <a href="../../../../../org/apache/hadoop/hbase/client/RegionReplicaUtil.html" title="class in org.apache.hadoop.hbase.client"><code>RegionReplicaUtil</code></a> but for the server side</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ShutdownHookManager.html" title="class in org.apache.hadoop.hbase.util">ShutdownHookManager</a></td>
 <td class="colLast">
 <div class="block">This class provides ShutdownHookManager shims for HBase to interact with the Hadoop 1.0.x and the
  Hadoop 2.0+ series.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ShutdownHookManager.ShutdownHookManagerV1.html" title="class in org.apache.hadoop.hbase.util">ShutdownHookManager.ShutdownHookManagerV1</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ShutdownHookManager.ShutdownHookManagerV2.html" title="class in org.apache.hadoop.hbase.util">ShutdownHookManager.ShutdownHookManagerV2</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SimpleByteRange.html" title="class in org.apache.hadoop.hbase.util">SimpleByteRange</a></td>
 <td class="colLast">
 <div class="block">A read only version of the <a href="../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util"><code>ByteRange</code></a>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SimpleMovingAverage.html" title="class in org.apache.hadoop.hbase.util">SimpleMovingAverage</a></td>
 <td class="colLast">
 <div class="block">SMA measure the overall average execution time of a specific method.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html" title="class in org.apache.hadoop.hbase.util">SimpleMutableByteRange</a></td>
 <td class="colLast">
 <div class="block">A basic mutable <a href="../../../../../org/apache/hadoop/hbase/util/ByteRange.html" title="interface in org.apache.hadoop.hbase.util"><code>ByteRange</code></a> implementation.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SimplePositionedByteRange.html" title="class in org.apache.hadoop.hbase.util">SimplePositionedByteRange</a></td>
 <td class="colLast">
 <div class="block">Extends the basic <a href="../../../../../org/apache/hadoop/hbase/util/SimpleMutableByteRange.html" title="class in org.apache.hadoop.hbase.util"><code>SimpleMutableByteRange</code></a> implementation with position
  support and it is a readonly version.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.html" title="class in org.apache.hadoop.hbase.util">SimplePositionedMutableByteRange</a></td>
 <td class="colLast">
 <div class="block">Extends the basic <a href="../../../../../org/apache/hadoop/hbase/util/AbstractPositionedByteRange.html" title="class in org.apache.hadoop.hbase.util"><code>AbstractPositionedByteRange</code></a> implementation with
  position support and it is a mutable version.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Sleeper.html" title="class in org.apache.hadoop.hbase.util">Sleeper</a></td>
 <td class="colLast">
 <div class="block">Sleeper for current thread.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SoftObjectPool.html" title="class in org.apache.hadoop.hbase.util">SoftObjectPool</a>&lt;K,V&gt;</td>
 <td class="colLast">
 <div class="block">A <code>SoftReference</code> based shared object pool.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/SortedList.html" title="class in org.apache.hadoop.hbase.util">SortedList</a>&lt;E&gt;</td>
 <td class="colLast">
 <div class="block">Simple sorted list implementation that uses <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util"><code>ArrayList</code></a> as
  the underlying collection so we can support RandomAccess.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/StealJobQueue.html" title="class in org.apache.hadoop.hbase.util">StealJobQueue</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">This queue allows a ThreadPoolExecutor to steal jobs from another ThreadPoolExecutor.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Strings.html" title="class in org.apache.hadoop.hbase.util">Strings</a></td>
 <td class="colLast">
 <div class="block">Utility for Strings.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/TableDescriptorChecker.html" title="class in org.apache.hadoop.hbase.util">TableDescriptorChecker</a></td>
 <td class="colLast">
 <div class="block">Only used for master to sanity check <a href="../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client"><code>TableDescriptor</code></a>.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Threads.html" title="class in org.apache.hadoop.hbase.util">Threads</a></td>
 <td class="colLast">
 <div class="block">Thread Utility</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Triple.html" title="class in org.apache.hadoop.hbase.util">Triple</a>&lt;A,B,C&gt;</td>
 <td class="colLast">
 <div class="block">Utility class to manage a triple.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/UnsafeAccess.html" title="class in org.apache.hadoop.hbase.util">UnsafeAccess</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/UnsafeAvailChecker.html" title="class in org.apache.hadoop.hbase.util">UnsafeAvailChecker</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/VersionInfo.html" title="class in org.apache.hadoop.hbase.util">VersionInfo</a></td>
 <td class="colLast">
 <div class="block">This class finds the Version information for HBase.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/WeakObjectPool.html" title="class in org.apache.hadoop.hbase.util">WeakObjectPool</a>&lt;K,V&gt;</td>
 <td class="colLast">
 <div class="block">A <code>WeakReference</code> based shared object pool.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/WeightedMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WeightedMovingAverage</a></td>
 <td class="colLast">
 <div class="block">Different from SMA <a href="../../../../../org/apache/hadoop/hbase/util/SimpleMovingAverage.html" title="class in org.apache.hadoop.hbase.util"><code>SimpleMovingAverage</code></a>, WeightedMovingAverage gives each data different
  weight.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/WindowMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WindowMovingAverage</a></td>
 <td class="colLast">
 <div class="block">Instead of calculate a whole time average, this class focus on the last N.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/Writables.html" title="class in org.apache.hadoop.hbase.util">Writables</a></td>
 <td class="colLast">
 <div class="block">Utility class with methods for manipulating Writable objects</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/YammerHistogramUtils.html" title="class in org.apache.hadoop.hbase.util">YammerHistogramUtils</a></td>
 <td class="colLast">
 <div class="block">Utility functions for working with Yammer Metrics.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/util/ZKDataMigrator.html" title="class in org.apache.hadoop.hbase.util">ZKDataMigrator</a></td>
 <td class="colLast">Deprecated
 <div class="block"><span class="deprecationComment">Since 2.0.0.</span></div>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/package-tree.html b/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
index 1b7cdc1..ef6ff66 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
@@ -220,7 +220,6 @@
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ClassSize.UnsafeLayout.HeaderSize.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">ClassSize.UnsafeLayout.HeaderSize</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ClientUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">ClientUtils</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CommonFSUtils</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CommonFSUtils.DfsBuilderUtility</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/CompressionTest.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CompressionTest</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ConcatenatedLists.Iterator.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">ConcatenatedLists.Iterator</span></a> (implements java.util.<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;E&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ConcurrentMapUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">ConcurrentMapUtils</span></a></li>
@@ -532,15 +531,15 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.UnsafeComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.UnsafeComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PrettyPrinter.Unit</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.ERROR_CODE.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">HbckErrorReporter.ERROR_CODE</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/DNS.ServerType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">DNS.ServerType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.PureJavaComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.PureJavaComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ChecksumType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">ChecksumType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Order</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/HbckErrorReporter.ERROR_CODE.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">HbckErrorReporter.ERROR_CODE</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/IdReadWriteLockWithObjectPool.ReferenceType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">IdReadWriteLockWithObjectPool.ReferenceType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/DNS.ServerType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">DNS.ServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PrettyPrinter.Unit</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.PoolType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PoolMap.PoolType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.UnsafeComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.UnsafeComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
 </ul>
 </li>
 </ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/util/package-use.html b/devapidocs/org/apache/hadoop/hbase/util/package-use.html
index 27c833d..a62250b 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/package-use.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/package-use.html
@@ -183,155 +183,148 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapred">org.apache.hadoop.hbase.mapred</a></td>
-<td class="colLast">
-<div class="block">Provides HBase <a href="https://cwiki.apache.org/confluence/display/HADOOP2/HadoopMapReduce">MapReduce</a>
-Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mapreduce">org.apache.hadoop.hbase.mapreduce</a></td>
 <td class="colLast">
 <div class="block">Provides HBase <a href="https://cwiki.apache.org/confluence/display/HADOOP2/HadoopMapReduce">MapReduce</a>
 Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mapreduce.replication">org.apache.hadoop.hbase.mapreduce.replication</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master">org.apache.hadoop.hbase.master</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.assignment">org.apache.hadoop.hbase.master.assignment</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.balancer">org.apache.hadoop.hbase.master.balancer</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.cleaner">org.apache.hadoop.hbase.master.cleaner</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.janitor">org.apache.hadoop.hbase.master.janitor</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.locking">org.apache.hadoop.hbase.master.locking</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.procedure">org.apache.hadoop.hbase.master.procedure</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.replication">org.apache.hadoop.hbase.master.replication</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.master.snapshot">org.apache.hadoop.hbase.master.snapshot</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.mob">org.apache.hadoop.hbase.mob</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.nio">org.apache.hadoop.hbase.nio</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure2">org.apache.hadoop.hbase.procedure2</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.procedure2.store.region">org.apache.hadoop.hbase.procedure2.store.region</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver">org.apache.hadoop.hbase.regionserver</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.compactions">org.apache.hadoop.hbase.regionserver.compactions</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.handler">org.apache.hadoop.hbase.regionserver.handler</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.querymatcher">org.apache.hadoop.hbase.regionserver.querymatcher</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.regionserver.wal">org.apache.hadoop.hbase.regionserver.wal</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.replication">org.apache.hadoop.hbase.replication</a></td>
 <td class="colLast">
 <div class="block">Multi Cluster Replication</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.replication.regionserver">org.apache.hadoop.hbase.replication.regionserver</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.rest">org.apache.hadoop.hbase.rest</a></td>
 <td class="colLast">
 <div class="block">HBase REST</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.rsgroup">org.apache.hadoop.hbase.rsgroup</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.access">org.apache.hadoop.hbase.security.access</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.provider">org.apache.hadoop.hbase.security.provider</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.provider.example">org.apache.hadoop.hbase.security.provider.example</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.visibility">org.apache.hadoop.hbase.security.visibility</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.snapshot">org.apache.hadoop.hbase.snapshot</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.thrift">org.apache.hadoop.hbase.thrift</a></td>
 <td class="colLast">
 <div class="block">Provides an HBase <a href="http://incubator.apache.org/thrift/">Thrift</a>
 service.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.thrift2.client">org.apache.hadoop.hbase.thrift2.client</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.tool">org.apache.hadoop.hbase.tool</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.tool.coprocessor">org.apache.hadoop.hbase.tool.coprocessor</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.types">org.apache.hadoop.hbase.types</a></td>
 <td class="colLast">
 <div class="block">
@@ -339,19 +332,19 @@
  extensible data type API.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.util">org.apache.hadoop.hbase.util</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.util.hbck">org.apache.hadoop.hbase.util.hbck</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.wal">org.apache.hadoop.hbase.wal</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.zookeeper">org.apache.hadoop.hbase.zookeeper</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
@@ -841,24 +834,6 @@
 </tbody>
 </table>
 </li>
-<li class="blockList"><a name="org.apache.hadoop.hbase.mapred">
-<!--   -->
-</a>
-<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
-<caption><span>Classes in <a href="../../../../../org/apache/hadoop/hbase/util/package-summary.html">org.apache.hadoop.hbase.util</a> used by <a href="../../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colOne" scope="col">Class and Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/util/class-use/RegionSplitter.SplitAlgorithm.html#org.apache.hadoop.hbase.mapred">RegionSplitter.SplitAlgorithm</a>
-<div class="block">A generic interface for the RegionSplitter code to use for all it's
- functionality.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
 <li class="blockList"><a name="org.apache.hadoop.hbase.mapreduce">
 <!--   -->
 </a>
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/EntryBuffers.RegionEntryBuffer.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/EntryBuffers.RegionEntryBuffer.html
index 3e829f9..34e2413 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/EntryBuffers.RegionEntryBuffer.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/EntryBuffers.RegionEntryBuffer.html
@@ -133,20 +133,20 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">BoundedRecoveredEditsOutputSink.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/BoundedRecoveredEditsOutputSink.html#append-org.apache.hadoop.hbase.wal.EntryBuffers.RegionEntryBuffer-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/EntryBuffers.RegionEntryBuffer.html" title="class in org.apache.hadoop.hbase.wal">EntryBuffers.RegionEntryBuffer</a>&nbsp;buffer)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>(package private) abstract void</code></td>
 <td class="colLast"><span class="typeNameLabel">OutputSink.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/OutputSink.html#append-org.apache.hadoop.hbase.wal.EntryBuffers.RegionEntryBuffer-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/EntryBuffers.RegionEntryBuffer.html" title="class in org.apache.hadoop.hbase.wal">EntryBuffers.RegionEntryBuffer</a>&nbsp;buffer)</code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><span class="typeNameLabel">BoundedRecoveredHFilesOutputSink.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/BoundedRecoveredHFilesOutputSink.html#append-org.apache.hadoop.hbase.wal.EntryBuffers.RegionEntryBuffer-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/EntryBuffers.RegionEntryBuffer.html" title="class in org.apache.hadoop.hbase.wal">EntryBuffers.RegionEntryBuffer</a>&nbsp;buffer)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RecoveredEditsOutputSink.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RecoveredEditsOutputSink.html#append-org.apache.hadoop.hbase.wal.EntryBuffers.RegionEntryBuffer-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/EntryBuffers.RegionEntryBuffer.html" title="class in org.apache.hadoop.hbase.wal">EntryBuffers.RegionEntryBuffer</a>&nbsp;buffer)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">BoundedRecoveredEditsOutputSink.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/BoundedRecoveredEditsOutputSink.html#append-org.apache.hadoop.hbase.wal.EntryBuffers.RegionEntryBuffer-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/EntryBuffers.RegionEntryBuffer.html" title="class in org.apache.hadoop.hbase.wal">EntryBuffers.RegionEntryBuffer</a>&nbsp;buffer)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RecoveredEditsOutputSink.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RecoveredEditsOutputSink.html#append-org.apache.hadoop.hbase.wal.EntryBuffers.RegionEntryBuffer-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/EntryBuffers.RegionEntryBuffer.html" title="class in org.apache.hadoop.hbase.wal">EntryBuffers.RegionEntryBuffer</a>&nbsp;buffer)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) void</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.Entry.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.Entry.html
index 19f7910..a56aafe 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.Entry.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.Entry.html
@@ -144,16 +144,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#replay-org.apache.hadoop.hbase.TableName-byte:A-byte:A-java.util.List-int-int-long-">replay</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
-      byte[]&nbsp;encodedRegionName,
-      byte[]&nbsp;row,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&gt;&nbsp;entries,
-      int&nbsp;replicaId,
-      int&nbsp;retries,
-      long&nbsp;operationTimeoutNs)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">AsyncClusterConnection.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnection.html#replay-org.apache.hadoop.hbase.TableName-byte:A-byte:A-java.util.List-int-int-long-">replay</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
       byte[]&nbsp;encodedRegionName,
       byte[]&nbsp;row,
@@ -164,6 +154,16 @@
 <div class="block">Replicate wal edits for replica regions.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncClusterConnectionImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/client/AsyncClusterConnectionImpl.html#replay-org.apache.hadoop.hbase.TableName-byte:A-byte:A-java.util.List-int-int-long-">replay</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+      byte[]&nbsp;encodedRegionName,
+      byte[]&nbsp;row,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&gt;&nbsp;entries,
+      int&nbsp;replicaId,
+      int&nbsp;retries,
+      long&nbsp;operationTimeoutNs)</code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
@@ -249,11 +249,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#append-org.apache.hadoop.hbase.wal.WAL.Entry-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncProtobufLogWriter.html#append-org.apache.hadoop.hbase.wal.WAL.Entry-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncProtobufLogWriter.html#append-org.apache.hadoop.hbase.wal.WAL.Entry-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ProtobufLogWriter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html#append-org.apache.hadoop.hbase.wal.WAL.Entry-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
@@ -269,15 +269,15 @@
           long&nbsp;elapsedTime)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.html#readNext-org.apache.hadoop.hbase.wal.WAL.Entry-">readNext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>protected abstract boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ReaderBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ReaderBase.html#readNext-org.apache.hadoop.hbase.wal.WAL.Entry-">readNext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;e)</code>
 <div class="block">Read next entry.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ProtobufLogReader.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.html#readNext-org.apache.hadoop.hbase.wal.WAL.Entry-">readNext</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -307,35 +307,35 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SystemTableWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/SystemTableWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEmptyEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEmptyEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/WALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>
 <div class="block">
  Applies the filter, possibly returning a different Entry instance.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEmptyEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEmptyEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterMarkingEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ClusterMarkingEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SystemTableWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/SystemTableWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterEntry-org.apache.hadoop.hbase.wal.WAL.Entry-">filterEntry</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
@@ -364,57 +364,57 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SystemTableWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/SystemTableWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEmptyEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEmptyEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/WALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>
 <div class="block">
  Applies the filter, possibly returning a different Entry instance.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEmptyEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEmptyEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterMarkingEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ClusterMarkingEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SystemTableWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/SystemTableWALEntryFilter.html#filter-org.apache.hadoop.hbase.wal.WAL.Entry-">filter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
+          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALCellFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/WALCellFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
           <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>
 <div class="block">Applies the filter, possibly returning a different Cell instance.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ScopeWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ScopeWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
-          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
-          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
 <td class="colLast"><span class="typeNameLabel">NamespaceTableCfWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/NamespaceTableCfWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
           <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCell-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">filterCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry,
+          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">ChainWALEntryFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/ChainWALEntryFilter.html#filterCells-org.apache.hadoop.hbase.wal.WAL.Entry-">filterCells</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a>&nbsp;entry)</code>&nbsp;</td>
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.html
index 32948db..011f0a2 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WAL.html
@@ -249,19 +249,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#getWAL--">getWAL</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getWAL--">getWAL</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.html#getWAL--">getWAL</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServicesForStores.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServicesForStores.html#getWAL--">getWAL</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -278,11 +278,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionServerServices.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/RegionServerServices.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">HRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -742,23 +742,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
 <td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#getWAL-org.apache.hadoop.hbase.client.RegionInfo-">getWAL</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></code></td>
@@ -775,19 +775,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
@@ -795,7 +787,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#getWALs--">getWALs</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html?is-external=true" title="class or interface in java.util.stream">Stream</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;</code></td>
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALEdit.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALEdit.html
index 9672a01..67a5f14 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALEdit.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALEdit.html
@@ -406,13 +406,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>[]</code></td>
-<td class="colLast"><span class="typeNameLabel">MiniBatchOperationInProgress.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MiniBatchOperationInProgress.html#walEditsFromCoprocessors">walEditsFromCoprocessors</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>[]</code></td>
 <td class="colLast"><span class="typeNameLabel">HRegion.BatchOperation.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/HRegion.BatchOperation.html#walEditsFromCoprocessors">walEditsFromCoprocessors</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">MiniBatchOperationInProgress.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MiniBatchOperationInProgress.html#walEditsFromCoprocessors">walEditsFromCoprocessors</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -599,6 +599,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>protected long</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
+      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
+      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edits,
+      boolean&nbsp;inMemstore)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract long</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;info,
       <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
@@ -607,13 +614,6 @@
 <div class="block">Append a set of edits to the WAL.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected long</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
-      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
-      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edits,
-      boolean&nbsp;inMemstore)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected long</code></td>
 <td class="colLast"><span class="typeNameLabel">FSHLog.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/FSHLog.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALFactory.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALFactory.html
index 91ee3cf..3839386 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALFactory.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALFactory.html
@@ -374,16 +374,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#factory">factory</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#factory">factory</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></code></td>
 <td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#factory">factory</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#factory">factory</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#factory">factory</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></code></td>
@@ -430,7 +430,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+    org.apache.hadoop.conf.Configuration&nbsp;conf,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
+    <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+    org.apache.hadoop.conf.Configuration&nbsp;conf,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
+    <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>
+<div class="block">Set up the provider to create wals.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
     org.apache.hadoop.conf.Configuration&nbsp;conf,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
     <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
@@ -444,28 +460,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RegionGroupingProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
+<td class="colLast"><span class="typeNameLabel">AbstractFSWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/AbstractFSWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
     org.apache.hadoop.conf.Configuration&nbsp;conf,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
     <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DisabledWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/DisabledWALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
-    org.apache.hadoop.conf.Configuration&nbsp;conf,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
-    <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;abortable)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">WALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#init-org.apache.hadoop.hbase.wal.WALFactory-org.apache.hadoop.conf.Configuration-java.lang.String-org.apache.hadoop.hbase.Abortable-">init</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a>&nbsp;factory,
-    org.apache.hadoop.conf.Configuration&nbsp;conf,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId,
-    <a href="../../../../../../org/apache/hadoop/hbase/Abortable.html" title="interface in org.apache.hadoop.hbase">Abortable</a>&nbsp;server)</code>
-<div class="block">Set up the provider to create wals.</div>
-</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;</code></td>
 <td class="colLast"><span class="typeNameLabel">WALSplitter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALSplitter.html#split-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.wal.WALFactory-">split</a></span>(org.apache.hadoop.fs.Path&nbsp;walRootDir,
      org.apache.hadoop.fs.Path&nbsp;walsDir,
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALKeyImpl.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALKeyImpl.html
index c86165b..dd1efeb 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALKeyImpl.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALKeyImpl.html
@@ -181,6 +181,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>protected long</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
+      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
+      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edits,
+      boolean&nbsp;inMemstore)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected abstract long</code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;info,
       <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
@@ -189,13 +196,6 @@
 <div class="block">Append a set of edits to the WAL.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected long</code></td>
-<td class="colLast"><span class="typeNameLabel">AsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
-      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a>&nbsp;key,
-      <a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edits,
-      boolean&nbsp;inMemstore)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected long</code></td>
 <td class="colLast"><span class="typeNameLabel">FSHLog.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/FSHLog.html#append-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.wal.WALKeyImpl-org.apache.hadoop.hbase.wal.WALEdit-boolean-">append</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALProvider.html b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALProvider.html
index b43556c..7fd0bf3 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALProvider.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/class-use/WALProvider.html
@@ -149,11 +149,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#provider">provider</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">WALFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html#provider">provider</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALFactory.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/WALFactory.html#provider">provider</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.html#provider">provider</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/hbase/zookeeper/class-use/ZKWatcher.html b/devapidocs/org/apache/hadoop/hbase/zookeeper/class-use/ZKWatcher.html
index 6b8e5d4..abb77d9 100644
--- a/devapidocs/org/apache/hadoop/hbase/zookeeper/class-use/ZKWatcher.html
+++ b/devapidocs/org/apache/hadoop/hbase/zookeeper/class-use/ZKWatcher.html
@@ -1061,13 +1061,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ZKListener.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKListener.html#watcher">watcher</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ZKClusterId.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKClusterId.html#watcher">watcher</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ZKListener.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKListener.html#watcher">watcher</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
diff --git a/devapidocs/org/apache/hadoop/metrics2/class-use/MetricHistogram.html b/devapidocs/org/apache/hadoop/metrics2/class-use/MetricHistogram.html
index 55e7e01..9083c8c 100644
--- a/devapidocs/org/apache/hadoop/metrics2/class-use/MetricHistogram.html
+++ b/devapidocs/org/apache/hadoop/metrics2/class-use/MetricHistogram.html
@@ -283,11 +283,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#appendHisto">appendHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#appendHisto">appendHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#appendHisto">appendHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#appendHisto">appendHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
@@ -379,11 +379,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#deleteHisto">deleteHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#deleteHisto">deleteHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#deleteHisto">deleteHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#deleteHisto">deleteHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
@@ -415,11 +415,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#getHisto">getHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#getHisto">getHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#getHisto">getHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#getHisto">getHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
@@ -435,11 +435,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#incrementHisto">incrementHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#incrementHisto">incrementHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#incrementHisto">incrementHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#incrementHisto">incrementHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
@@ -503,11 +503,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#putHisto">putHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#putHisto">putHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#putHisto">putHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#putHisto">putHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
@@ -515,11 +515,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#replayHisto">replayHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#replayHisto">replayHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#replayHisto">replayHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#replayHisto">replayHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
@@ -531,15 +531,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#scanTimeHisto">scanTimeHisto</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#scanTimeHisto">scanTimeHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableLatenciesImpl.TableHistograms.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableLatenciesImpl.TableHistograms.html#scanTimeHisto">scanTimeHisto</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceImpl.html#scanTimeHisto">scanTimeHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#scanTimeHisto">scanTimeHisto</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableLatenciesImpl.TableHistograms.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableLatenciesImpl.TableHistograms.html#scanTimeHisto">scanTimeHisto</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/metrics2/MetricHistogram.html" title="interface in org.apache.hadoop.metrics2">MetricHistogram</a></code></td>
diff --git a/devapidocs/org/apache/hadoop/metrics2/lib/class-use/DynamicMetricsRegistry.html b/devapidocs/org/apache/hadoop/metrics2/lib/class-use/DynamicMetricsRegistry.html
index b258e17..ab512a8 100644
--- a/devapidocs/org/apache/hadoop/metrics2/lib/class-use/DynamicMetricsRegistry.html
+++ b/devapidocs/org/apache/hadoop/metrics2/lib/class-use/DynamicMetricsRegistry.html
@@ -179,11 +179,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/DynamicMetricsRegistry.html" title="class in org.apache.hadoop.metrics2.lib">DynamicMetricsRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableSourceImpl.html#registry">registry</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#registry">registry</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/DynamicMetricsRegistry.html" title="class in org.apache.hadoop.metrics2.lib">DynamicMetricsRegistry</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsUserSourceImpl.html#registry">registry</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/MetricsTableSourceImpl.html#registry">registry</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableFastCounter.html b/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableFastCounter.html
index 0586f89..f8f7a53 100644
--- a/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableFastCounter.html
+++ b/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableFastCounter.html
@@ -502,19 +502,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#completedRecoveryQueue">completedRecoveryQueue</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#completedRecoveryQueue">completedRecoveryQueue</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#completedRecoveryQueue">completedRecoveryQueue</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#completedRecoveryQueue">completedRecoveryQueue</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#completedWAL">completedWAL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#completedWAL">completedWAL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#completedWAL">completedWAL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#completedWAL">completedWAL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
@@ -526,19 +526,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#logReadInBytesCounter">logReadInBytesCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#logReadInBytesCounter">logReadInBytesCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#logReadInBytesCounter">logReadInBytesCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#logReadInBytesCounter">logReadInBytesCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#logReadInEditsCounter">logReadInEditsCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#logReadInEditsCounter">logReadInEditsCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#logReadInEditsCounter">logReadInEditsCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#logReadInEditsCounter">logReadInEditsCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
@@ -546,27 +546,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#repeatedFileBytes">repeatedFileBytes</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#repeatedFileBytes">repeatedFileBytes</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#restartWALReading">restartWALReading</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#repeatedFileBytes">repeatedFileBytes</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#restartWALReading">restartWALReading</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#restartWALReading">restartWALReading</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#shippedBatchesCounter">shippedBatchesCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedBatchesCounter">shippedBatchesCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedBatchesCounter">shippedBatchesCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#shippedBatchesCounter">shippedBatchesCounter</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedBytesCounter">shippedBytesCounter</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationTableSourceImpl.html#shippedBytesCounter">shippedBytesCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
@@ -574,59 +582,51 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedBytesCounter">shippedBytesCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedHFilesCounter">shippedHFilesCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationTableSourceImpl.html#shippedBytesCounter">shippedBytesCounter</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#shippedHFilesCounter">shippedHFilesCounter</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedHFilesCounter">shippedHFilesCounter</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#shippedOpsCounter">shippedOpsCounter</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#shippedOpsCounter">shippedOpsCounter</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#uncleanlyClosedSkippedBytes">uncleanlyClosedSkippedBytes</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#shippedOpsCounter">shippedOpsCounter</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#uncleanlyClosedSkippedBytes">uncleanlyClosedSkippedBytes</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#uncleanlyClosedWAL">uncleanlyClosedWAL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#uncleanlyClosedSkippedBytes">uncleanlyClosedSkippedBytes</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#uncleanlyClosedWAL">uncleanlyClosedWAL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#unknownFileLengthForClosedWAL">unknownFileLengthForClosedWAL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#uncleanlyClosedWAL">uncleanlyClosedWAL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#unknownFileLengthForClosedWAL">unknownFileLengthForClosedWAL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#unknownFileLengthForClosedWAL">unknownFileLengthForClosedWAL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#walEditsFilteredCounter">walEditsFilteredCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#walEditsFilteredCounter">walEditsFilteredCounter</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableFastCounter.html" title="class in org.apache.hadoop.metrics2.lib">MutableFastCounter</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#walEditsFilteredCounter">walEditsFilteredCounter</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#walEditsFilteredCounter">walEditsFilteredCounter</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableHistogram.html b/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableHistogram.html
index c9bc020..1578dfa 100644
--- a/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableHistogram.html
+++ b/devapidocs/org/apache/hadoop/metrics2/lib/class-use/MutableHistogram.html
@@ -116,15 +116,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableHistogram.html" title="class in org.apache.hadoop.metrics2.lib">MutableHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#ageOfLastShippedOpHist">ageOfLastShippedOpHist</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#ageOfLastShippedOpHist">ageOfLastShippedOpHist</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableHistogram.html" title="class in org.apache.hadoop.metrics2.lib">MutableHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.html#ageOfLastShippedOpHist">ageOfLastShippedOpHist</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationTableSourceImpl.html#ageOfLastShippedOpHist">ageOfLastShippedOpHist</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/metrics2/lib/MutableHistogram.html" title="class in org.apache.hadoop.metrics2.lib">MutableHistogram</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetricsReplicationTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationTableSourceImpl.html#ageOfLastShippedOpHist">ageOfLastShippedOpHist</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MetricsReplicationGlobalSourceSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationGlobalSourceSourceImpl.html#ageOfLastShippedOpHist">ageOfLastShippedOpHist</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/devapidocs/overview-tree.html b/devapidocs/overview-tree.html
index 79db7c9..4aaf9d2 100644
--- a/devapidocs/overview-tree.html
+++ b/devapidocs/overview-tree.html
@@ -1219,7 +1219,6 @@
 </li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.screen.help.<a href="org/apache/hadoop/hbase/hbtop/screen/help/CommandDescription.html" title="class in org.apache.hadoop.hbase.hbtop.screen.help"><span class="typeNameLink">CommandDescription</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CommonFSUtils</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">CommonFSUtils.DfsBuilderUtility</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.crypto.aes.<a href="org/apache/hadoop/hbase/io/crypto/aes/CommonsCryptoAESDecryptor.html" title="class in org.apache.hadoop.hbase.io.crypto.aes"><span class="typeNameLink">CommonsCryptoAESDecryptor</span></a> (implements org.apache.hadoop.hbase.io.crypto.<a href="org/apache/hadoop/hbase/io/crypto/Decryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Decryptor</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.io.crypto.aes.<a href="org/apache/hadoop/hbase/io/crypto/aes/CommonsCryptoAESEncryptor.html" title="class in org.apache.hadoop.hbase.io.crypto.aes"><span class="typeNameLink">CommonsCryptoAESEncryptor</span></a> (implements org.apache.hadoop.hbase.io.crypto.<a href="org/apache/hadoop/hbase/io/crypto/Encryptor.html" title="interface in org.apache.hadoop.hbase.io.crypto">Encryptor</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/CompactingMemStore.InMemoryCompactionRunnable.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.InMemoryCompactionRunnable</span></a> (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a>)</li>
@@ -1628,8 +1627,8 @@
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/DNS.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">DNS</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/DoubleArrayCost.html" title="class in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">DoubleArrayCost</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.mode.<a href="org/apache/hadoop/hbase/hbtop/mode/DrillDownInfo.html" title="class in org.apache.hadoop.hbase.hbtop.mode"><span class="typeNameLink">DrillDownInfo</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/Driver.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">Driver</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/Driver.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">Driver</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/Driver.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">Driver</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.metrics.impl.<a href="org/apache/hadoop/hbase/metrics/impl/DropwizardMeter.html" title="class in org.apache.hadoop.hbase.metrics.impl"><span class="typeNameLink">DropwizardMeter</span></a> (implements org.apache.hadoop.hbase.metrics.<a href="org/apache/hadoop/hbase/metrics/Meter.html" title="interface in org.apache.hadoop.hbase.metrics">Meter</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/DumpRegionServerMetrics.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DumpRegionServerMetrics</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="org/apache/hadoop/hbase/replication/regionserver/DumpReplicationQueues.DumpOptions.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">DumpReplicationQueues.DumpOptions</span></a></li>
@@ -2868,7 +2867,6 @@
 </ul>
 </li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/PrivateConstants.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">PrivateConstants</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure.<a href="org/apache/hadoop/hbase/procedure/Procedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">Procedure</span></a> (implements java.util.concurrent.<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Callable.html?is-external=true" title="class or interface in java.util.concurrent">Callable</a>&lt;V&gt;, org.apache.hadoop.hbase.errorhandling.<a href="org/apache/hadoop/hbase/errorhandling/ForeignExceptionListener.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionListener</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">Procedure</span></a>&lt;TEnvironment&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.master.replication.<a href="org/apache/hadoop/hbase/master/replication/ClaimReplicationQueuesProcedure.html" title="class in org.apache.hadoop.hbase.master.replication"><span class="typeNameLink">ClaimReplicationQueuesProcedure</span></a> (implements org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.html" title="interface in org.apache.hadoop.hbase.master.procedure">ServerProcedureInterface</a>)</li>
@@ -2971,6 +2969,7 @@
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TwoPhaseProcedure.html" title="class in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TwoPhaseProcedure</span></a>&lt;TEnvironment&gt;</li>
 </ul>
 </li>
+<li type="circle">org.apache.hadoop.hbase.procedure.<a href="org/apache/hadoop/hbase/procedure/Procedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">Procedure</span></a> (implements java.util.concurrent.<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Callable.html?is-external=true" title="class or interface in java.util.concurrent">Callable</a>&lt;V&gt;, org.apache.hadoop.hbase.errorhandling.<a href="org/apache/hadoop/hbase/errorhandling/ForeignExceptionListener.html" title="interface in org.apache.hadoop.hbase.errorhandling">ForeignExceptionListener</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.procedure.<a href="org/apache/hadoop/hbase/procedure/ProcedureCoordinator.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">ProcedureCoordinator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/ProcedureDescriber.html" title="class in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">ProcedureDescriber</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/ProcedureEvent.html" title="class in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">ProcedureEvent</span></a>&lt;T&gt;
@@ -3908,8 +3907,8 @@
 </ul>
 </li>
 <li type="circle">org.apache.hadoop.hbase.rest.model.<a href="org/apache/hadoop/hbase/rest/model/TableListModel.html" title="class in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">TableListModel</span></a> (implements org.apache.hadoop.hbase.rest.<a href="org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a>, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)</li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableMapReduceUtil</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableMapReduceUtil</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableMapReduceUtil</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.model.<a href="org/apache/hadoop/hbase/rest/model/TableModel.html" title="class in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">TableModel</span></a> (implements java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.mode.<a href="org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html" title="class in org.apache.hadoop.hbase.hbtop.mode"><span class="typeNameLink">TableModeStrategy</span></a> (implements org.apache.hadoop.hbase.hbtop.mode.<a href="org/apache/hadoop/hbase/hbtop/mode/ModeStrategy.html" title="interface in org.apache.hadoop.hbase.hbtop.mode">ModeStrategy</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">TableName</span></a> (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)</li>
@@ -3918,8 +3917,8 @@
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TableOverAsyncTable</span></a> (implements org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html" title="class in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">TableQuotaSnapshotStore</span></a> (implements org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaSnapshotStore.html" title="interface in org.apache.hadoop.hbase.quotas">QuotaSnapshotStore</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableRecordReader</span></a> (implements org.apache.hadoop.mapred.RecordReader&lt;K,V&gt;)</li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableRecordReaderImpl</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableRecordReaderImpl</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TableRecordReaderImpl</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.model.<a href="org/apache/hadoop/hbase/rest/model/TableRegionModel.html" title="class in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">TableRegionModel</span></a> (implements java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.rest.<a href="org/apache/hadoop/hbase/rest/TableScanResource.CellSetModelStream.html" title="class in org.apache.hadoop.hbase.rest"><span class="typeNameLink">TableScanResource.CellSetModelStream</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.model.<a href="org/apache/hadoop/hbase/rest/model/TableSchemaModel.html" title="class in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">TableSchemaModel</span></a> (implements org.apache.hadoop.hbase.rest.<a href="org/apache/hadoop/hbase/rest/ProtobufMessageHandler.html" title="interface in org.apache.hadoop.hbase.rest">ProtobufMessageHandler</a>, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)</li>
@@ -5463,162 +5462,162 @@
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.replication.<a href="org/apache/hadoop/hbase/replication/ReplicationPeer.PeerState.html" title="enum in org.apache.hadoop.hbase.replication"><span class="typeNameLink">ReplicationPeer.PeerState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/BalancerClusterState.LocalityType.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalancerClusterState.LocalityType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/BalanceAction.Type.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalanceAction.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.assignment.<a href="org/apache/hadoop/hbase/master/assignment/ServerState.html" title="enum in org.apache.hadoop.hbase.master.assignment"><span class="typeNameLink">ServerState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/BalanceAction.Type.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalanceAction.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/BalancerClusterState.LocalityType.html" title="enum in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">BalancerClusterState.LocalityType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.favored.<a href="org/apache/hadoop/hbase/favored/FavoredNodesPlan.Position.html" title="enum in org.apache.hadoop.hbase.favored"><span class="typeNameLink">FavoredNodesPlan.Position</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">RowCounter.RowCounterMapper.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.snapshot.<a href="org/apache/hadoop/hbase/snapshot/ExportSnapshot.Counter.html" title="enum in org.apache.hadoop.hbase.snapshot"><span class="typeNameLink">ExportSnapshot.Counter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/RowCounter.RowCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">RowCounter.RowCounterMapper.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.replication.<a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.Verifier.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce.replication"><span class="typeNameLink">VerifyReplication.Verifier.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">WALPlayer.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/CellCounter.CellCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">CellCounter.CellCounterMapper.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">SyncTable.SyncMapper.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableSplit.Version.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableSplit.Version</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">WALPlayer.Counter</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.replication.<a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.Verifier.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce.replication"><span class="typeNameLink">VerifyReplication.Verifier.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/RowCounter.RowCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">RowCounter.RowCounterMapper.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.snapshot.<a href="org/apache/hadoop/hbase/snapshot/ExportSnapshot.Counter.html" title="enum in org.apache.hadoop.hbase.snapshot"><span class="typeNameLink">ExportSnapshot.Counter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/RowCounter.RowCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">RowCounter.RowCounterMapper.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.http.<a href="org/apache/hadoop/hbase/http/HttpConfig.Policy.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">HttpConfig.Policy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.http.<a href="org/apache/hadoop/hbase/http/ProfileServlet.Event.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">ProfileServlet.Event</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.http.<a href="org/apache/hadoop/hbase/http/ProfileServlet.Output.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">ProfileServlet.Output</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.http.log.<a href="org/apache/hadoop/hbase/http/log/LogLevel.Operations.html" title="enum in org.apache.hadoop.hbase.http.log"><span class="typeNameLink">LogLevel.Operations</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.http.<a href="org/apache/hadoop/hbase/http/HttpConfig.Policy.html" title="enum in org.apache.hadoop.hbase.http"><span class="typeNameLink">HttpConfig.Policy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.coordination.<a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.TaskFinisher.Status.html" title="enum in org.apache.hadoop.hbase.coordination"><span class="typeNameLink">ZKSplitLogManagerCoordination.TaskFinisher.Status</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.TaskType.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">TaskMonitor.TaskFilter.TaskType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">MonitoredTask.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.executor.<a href="org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">ExecutorType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.executor.<a href="org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">EventType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/HbckErrorReporter.ERROR_CODE.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">HbckErrorReporter.ERROR_CODE</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/IdReadWriteLockWithObjectPool.ReferenceType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">IdReadWriteLockWithObjectPool.ReferenceType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MasterRpcServices.BalanceSwitchMode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.normalizer.<a href="org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.PlanType.html" title="enum in org.apache.hadoop.hbase.master.normalizer"><span class="typeNameLink">NormalizationPlan.PlanType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/HbckErrorReporter.ERROR_CODE.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">HbckErrorReporter.ERROR_CODE</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.assignment.<a href="org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.TransitionType.html" title="enum in org.apache.hadoop.hbase.master.assignment"><span class="typeNameLink">TransitRegionStateProcedure.TransitionType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/MetaRegionLocationCache.ZNodeOpType.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetaRegionLocationCache.ZNodeOpType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MetaProcedureInterface.MetaOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MetaProcedureInterface.MetaOperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">PeerProcedureInterface.PeerOperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">ServerProcedureInterface.ServerOperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">TableProcedureInterface.TableOperationType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MetaProcedureInterface.MetaOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MetaProcedureInterface.MetaOperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.normalizer.<a href="org/apache/hadoop/hbase/master/normalizer/NormalizationPlan.PlanType.html" title="enum in org.apache.hadoop.hbase.master.normalizer"><span class="typeNameLink">NormalizationPlan.PlanType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/ServerManager.ServerLiveState.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">ServerManager.ServerLiveState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.ResubmitDirective</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/SplitLogManager.TerminationStatus.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.TerminationStatus</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.assignment.<a href="org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.TransitionType.html" title="enum in org.apache.hadoop.hbase.master.assignment"><span class="typeNameLink">TransitRegionStateProcedure.TransitionType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/MetaRegionLocationCache.ZNodeOpType.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetaRegionLocationCache.ZNodeOpType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ChunkCreator.ChunkType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/DefaultHeapMemoryTuner.StepDirection.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DefaultHeapMemoryTuner.StepDirection</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.NextState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MasterRpcServices.BalanceSwitchMode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/BlockCacheFactory.ExternalBlockCaches.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockCacheFactory.ExternalBlockCaches</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/ReaderContext.ReaderType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">ReaderContext.ReaderType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockPriority</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/Reference.Range.html" title="enum in org.apache.hadoop.hbase.io"><span class="typeNameLink">Reference.Range</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.WorkerState.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">ReplicationSourceShipper.WorkerState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">DeleteTracker.DeleteResult</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">ScanQueryMatcher.MatchCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">StripeCompactionScanQueryMatcher.DropDeletesInOutput</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.IndexType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">SplitLogWorker.TaskExecutor.Status</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">FlushType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.NextState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/DefaultHeapMemoryTuner.StepDirection.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DefaultHeapMemoryTuner.StepDirection</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.IndexType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ChunkCreator.ChunkType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TimeRangeTracker.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MemStoreCompactionStrategy.Action</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.compactions.<a href="org/apache/hadoop/hbase/regionserver/compactions/CompactionRequestImpl.DisplayCompactionType.html" title="enum in org.apache.hadoop.hbase.regionserver.compactions"><span class="typeNameLink">CompactionRequestImpl.DisplayCompactionType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.WALHdrResult.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">ProtobufLogReader.WALHdrResult</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">WALActionsListener.RollRequestReason</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="org/apache/hadoop/hbase/regionserver/wal/RingBufferTruck.Type.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">RingBufferTruck.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">CompressionContext.DictionaryIndex</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">SplitLogWorker.TaskExecutor.Status</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/CanaryTool.RegionTask.TaskType.html" title="enum in org.apache.hadoop.hbase.tool"><span class="typeNameLink">CanaryTool.RegionTask.TaskType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.tool.coprocessor.<a href="org/apache/hadoop/hbase/tool/coprocessor/CoprocessorViolation.Severity.html" title="enum in org.apache.hadoop.hbase.tool.coprocessor"><span class="typeNameLink">CoprocessorViolation.Severity</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.visibility.expression.<a href="org/apache/hadoop/hbase/security/visibility/expression/Operator.html" title="enum in org.apache.hadoop.hbase.security.visibility.expression"><span class="typeNameLink">Operator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.namequeues.<a href="org/apache/hadoop/hbase/namequeues/NamedQueuePayload.NamedQueueEvent.html" title="enum in org.apache.hadoop.hbase.namequeues"><span class="typeNameLink">NamedQueuePayload.NamedQueueEvent</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/AccessController.OpType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessController.OpType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.HDFSAclOperation.OperationType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SnapshotScannerHDFSAclHelper.HDFSAclOperation.OperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/SnapshotScannerHDFSAclHelper.HDFSAclOperation.AclType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SnapshotScannerHDFSAclHelper.HDFSAclOperation.AclType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/AccessControlFilter.Strategy.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessControlFilter.Strategy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/AccessController.OpType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessController.OpType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/Reference.Range.html" title="enum in org.apache.hadoop.hbase.io"><span class="typeNameLink">Reference.Range</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockPriority</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/BlockCacheFactory.ExternalBlockCaches.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockCacheFactory.ExternalBlockCaches</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/ReaderContext.ReaderType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">ReaderContext.ReaderType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.WorkerState.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">ReplicationSourceShipper.WorkerState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.visibility.expression.<a href="org/apache/hadoop/hbase/security/visibility/expression/Operator.html" title="enum in org.apache.hadoop.hbase.security.visibility.expression"><span class="typeNameLink">Operator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterWrapper.FilterRowRetCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.namequeues.<a href="org/apache/hadoop/hbase/namequeues/NamedQueuePayload.NamedQueueEvent.html" title="enum in org.apache.hadoop.hbase.namequeues"><span class="typeNameLink">NamedQueuePayload.NamedQueueEvent</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">RegionGroupingProvider.Strategies</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/WALFactory.Providers.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">WALFactory.Providers</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.coordination.<a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.TaskFinisher.Status.html" title="enum in org.apache.hadoop.hbase.coordination"><span class="typeNameLink">ZKSplitLogManagerCoordination.TaskFinisher.Status</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.coprocessor.<a href="org/apache/hadoop/hbase/coprocessor/RegionObserver.MutationType.html" title="enum in org.apache.hadoop.hbase.coprocessor"><span class="typeNameLink">RegionObserver.MutationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.coprocessor.<a href="org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.MetaTableOps.html" title="enum in org.apache.hadoop.hbase.coprocessor"><span class="typeNameLink">MetaTableMetrics.MetaTableOps</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.executor.<a href="org/apache/hadoop/hbase/executor/EventType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">EventType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.executor.<a href="org/apache/hadoop/hbase/executor/ExecutorType.html" title="enum in org.apache.hadoop.hbase.executor"><span class="typeNameLink">ExecutorType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">RegionGroupingProvider.Strategies</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/WALFactory.Providers.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">WALFactory.Providers</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">MonitoredTask.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.TaskType.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">TaskMonitor.TaskFilter.TaskType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.thrift.<a href="org/apache/hadoop/hbase/thrift/ImplType.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">ImplType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.thrift.<a href="org/apache/hadoop/hbase/thrift/ThriftMetrics.ThriftServerType.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">ThriftMetrics.ThriftServerType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterMetrics.Option</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/Coprocessor.State.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Coprocessor.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">RpcThrottlingException.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/PoolMap.PoolType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PoolMap.PoolType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">RegionState.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">BloomType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.<a href="org/apache/hadoop/hbase/security/SaslStatus.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslStatus</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.<a href="org/apache/hadoop/hbase/security/SaslUtil.QualityOfProtection.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslUtil.QualityOfProtection</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.<a href="org/apache/hadoop/hbase/security/AuthMethod.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">AuthMethod</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Action</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/Permission.Scope.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Scope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/BufferCallBeforeInitHandler.BufferCallAction.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">BufferCallBeforeInitHandler.BufferCallAction</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/CallEvent.Type.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">CallEvent.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TableState.State.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">TableState.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RegionLocateType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompareOperator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.security.<a href="org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security"><span class="typeNameLink">SecurityCapability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AbstractResponse.ResponseType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RegionLocateType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/ServerType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TableState.State.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">TableState.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CatalogReplicaMode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CatalogReplicaMode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/LogQueryFilter.Type.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">LogQueryFilter.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/LogQueryFilter.FilterByOperator.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">LogQueryFilter.FilterByOperator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AbstractResponse.ResponseType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.security.<a href="org/apache/hadoop/hbase/client/security/SecurityCapability.html" title="enum in org.apache.hadoop.hbase.client.security"><span class="typeNameLink">SecurityCapability</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">RegionState.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.replication.<a href="org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum in org.apache.hadoop.hbase.replication"><span class="typeNameLink">SyncReplicationState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">RpcThrottlingException.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClientMetaTableAccessor.QueryType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClientMetaTableAccessor.QueryType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">BloomType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterMetrics.Option</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.<a href="org/apache/hadoop/hbase/security/SaslStatus.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Action</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/Permission.Scope.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Scope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.<a href="org/apache/hadoop/hbase/security/SaslUtil.QualityOfProtection.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslUtil.QualityOfProtection</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.<a href="org/apache/hadoop/hbase/security/AuthMethod.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">AuthMethod</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/Coprocessor.State.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Coprocessor.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/FuzzyRowFilter.SatisfiesCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.SatisfiesCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/FuzzyRowFilter.Order.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.Order</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/RegexStringComparator.EngineType.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">RegexStringComparator.EngineType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/CallEvent.Type.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">CallEvent.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/BufferCallBeforeInitHandler.BufferCallAction.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">BufferCallBeforeInitHandler.BufferCallAction</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/Size.Unit.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Size.Unit</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompareOperator</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClientMetaTableAccessor.QueryType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClientMetaTableAccessor.QueryType</span></a></li>
 <li type="circle">org.apache.hadoop.metrics2.lib.<a href="org/apache/hadoop/metrics2/lib/MetricsExecutorImpl.ExecutorSingleton.html" title="enum in org.apache.hadoop.metrics2.lib"><span class="typeNameLink">MetricsExecutorImpl.ExecutorSingleton</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CompatibilitySingletonFactory.SingletonStorage.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompatibilitySingletonFactory.SingletonStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.metrics.<a href="org/apache/hadoop/hbase/metrics/BaseSourceImpl.DefaultMetricsSystemInitializer.html" title="enum in org.apache.hadoop.hbase.metrics"><span class="typeNameLink">BaseSourceImpl.DefaultMetricsSystemInitializer</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetricsMasterSourceFactoryImpl.FactoryStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MetricsRegionServerSourceFactoryImpl.FactoryStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.SourceStorage.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">MetricsHBaseServerSourceFactoryImpl.SourceStorage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.metrics.<a href="org/apache/hadoop/hbase/metrics/BaseSourceImpl.DefaultMetricsSystemInitializer.html" title="enum in org.apache.hadoop.hbase.metrics"><span class="typeNameLink">BaseSourceImpl.DefaultMetricsSystemInitializer</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceFactoryImpl.SourceHolder.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">MetricsReplicationSourceFactoryImpl.SourceHolder</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.thrift.<a href="org/apache/hadoop/hbase/thrift/MetricsThriftServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">MetricsThriftServerSourceFactoryImpl.FactoryStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PrettyPrinter.Unit</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MetricsRegionServerSourceFactoryImpl.FactoryStorage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.ipc.<a href="org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.SourceStorage.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">MetricsHBaseServerSourceFactoryImpl.SourceStorage</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Order</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.PureJavaComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.PureJavaComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.UnsafeComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.UnsafeComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/DNS.ServerType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">DNS.ServerType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/ChecksumType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">ChecksumType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.compress.<a href="org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress"><span class="typeNameLink">Compression.Algorithm</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.encoding.<a href="org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding"><span class="typeNameLink">DataBlockEncoding</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PrettyPrinter.Unit</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/DNS.ServerType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">DNS.ServerType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/BlockType.BlockCategory.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType.BlockCategory</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.encoding.<a href="org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding"><span class="typeNameLink">DataBlockEncoding</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.compress.<a href="org/apache/hadoop/hbase/io/compress/Compression.Algorithm.html" title="enum in org.apache.hadoop.hbase.io.compress"><span class="typeNameLink">Compression.Algorithm</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HConstants.OperationStatusCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Cell.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockedResourceType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">WALProcedureStore.PushType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">ProcedureStoreTracker.DeleteState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/RootProcedureState.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">RootProcedureState.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">Procedure.LockState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockedResourceType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">StateMachineProcedure.Flow</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">WALProcedureStore.PushType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.store.wal.<a href="org/apache/hadoop/hbase/procedure2/store/wal/ProcedureStoreTracker.DeleteState.html" title="enum in org.apache.hadoop.hbase.procedure2.store.wal"><span class="typeNameLink">ProcedureStoreTracker.DeleteState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.chaos.<a href="org/apache/hadoop/hbase/chaos/ChaosService.ChaosServiceName.html" title="enum in org.apache.hadoop.hbase.chaos"><span class="typeNameLink">ChaosService.ChaosServiceName</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.chaos.<a href="org/apache/hadoop/hbase/chaos/ChaosService.ExecutorAction.html" title="enum in org.apache.hadoop.hbase.chaos"><span class="typeNameLink">ChaosService.ExecutorAction</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.model.<a href="org/apache/hadoop/hbase/rest/model/ScannerModel.FilterModel.ByteArrayComparableModel.ComparatorType.html" title="enum in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">ScannerModel.FilterModel.ByteArrayComparableModel.ComparatorType</span></a></li>
@@ -5627,13 +5626,13 @@
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/BackupRestoreConstants.BackupCommand.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupRestoreConstants.BackupCommand</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/BackupInfo.BackupState.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/BackupInfo.BackupPhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupPhase</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">Field</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">FieldValueType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.impl.<a href="org/apache/hadoop/hbase/hbtop/terminal/impl/KeyPressGenerator.ParseState.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal.impl"><span class="typeNameLink">KeyPressGenerator.ParseState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">KeyPress.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">Color</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.mode.<a href="org/apache/hadoop/hbase/hbtop/mode/Mode.html" title="enum in org.apache.hadoop.hbase.hbtop.mode"><span class="typeNameLink">Mode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="org/apache/hadoop/hbase/hbtop/field/FieldValueType.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">FieldValueType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.field.<a href="org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum in org.apache.hadoop.hbase.hbtop.field"><span class="typeNameLink">Field</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.hbtop.<a href="org/apache/hadoop/hbase/hbtop/RecordFilter.Operator.html" title="enum in org.apache.hadoop.hbase.hbtop"><span class="typeNameLink">RecordFilter.Operator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.impl.<a href="org/apache/hadoop/hbase/hbtop/terminal/impl/KeyPressGenerator.ParseState.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal.impl"><span class="typeNameLink">KeyPressGenerator.ParseState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="org/apache/hadoop/hbase/hbtop/terminal/Color.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">Color</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.hbtop.terminal.<a href="org/apache/hadoop/hbase/hbtop/terminal/KeyPress.Type.html" title="enum in org.apache.hadoop.hbase.hbtop.terminal"><span class="typeNameLink">KeyPress.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.asyncfs.<a href="org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.State.html" title="enum in org.apache.hadoop.hbase.io.asyncfs"><span class="typeNameLink">FanOutOneBlockAsyncDFSOutput.State</span></a></li>
 </ul>
 </li>
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html b/devapidocs/src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html
index 807bde6..333051a 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/io/util/BlockIOUtils.html
@@ -28,238 +28,310 @@
 <span class="sourceLineNo">020</span><a name="line.20"></a>
 <span class="sourceLineNo">021</span>import java.io.IOException;<a name="line.21"></a>
 <span class="sourceLineNo">022</span>import java.io.InputStream;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import java.nio.ByteBuffer;<a name="line.23"></a>
-<span class="sourceLineNo">024</span><a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.hadoop.fs.ByteBufferReadable;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.hadoop.fs.FSDataInputStream;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import org.apache.hadoop.hbase.nio.ByteBuff;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import org.apache.hadoop.io.IOUtils;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.29"></a>
-<span class="sourceLineNo">030</span><a name="line.30"></a>
-<span class="sourceLineNo">031</span>@InterfaceAudience.Private<a name="line.31"></a>
-<span class="sourceLineNo">032</span>public final class BlockIOUtils {<a name="line.32"></a>
-<span class="sourceLineNo">033</span><a name="line.33"></a>
-<span class="sourceLineNo">034</span>  // Disallow instantiation<a name="line.34"></a>
-<span class="sourceLineNo">035</span>  private BlockIOUtils() {<a name="line.35"></a>
-<span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>  }<a name="line.37"></a>
-<span class="sourceLineNo">038</span><a name="line.38"></a>
-<span class="sourceLineNo">039</span>  public static boolean isByteBufferReadable(FSDataInputStream is) {<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    InputStream cur = is.getWrappedStream();<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    for (;;) {<a name="line.41"></a>
-<span class="sourceLineNo">042</span>      if ((cur instanceof FSDataInputStream)) {<a name="line.42"></a>
-<span class="sourceLineNo">043</span>        cur = ((FSDataInputStream) cur).getWrappedStream();<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      } else {<a name="line.44"></a>
-<span class="sourceLineNo">045</span>        break;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      }<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    }<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    return cur instanceof ByteBufferReadable;<a name="line.48"></a>
+<span class="sourceLineNo">023</span>import java.lang.reflect.InvocationTargetException;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import java.lang.reflect.Method;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import java.nio.ByteBuffer;<a name="line.25"></a>
+<span class="sourceLineNo">026</span><a name="line.26"></a>
+<span class="sourceLineNo">027</span>import org.apache.hadoop.fs.ByteBufferReadable;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import org.apache.hadoop.fs.FSDataInputStream;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import org.apache.hadoop.hbase.nio.ByteBuff;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import org.apache.hadoop.io.IOUtils;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import org.slf4j.Logger;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import org.slf4j.LoggerFactory;<a name="line.33"></a>
+<span class="sourceLineNo">034</span><a name="line.34"></a>
+<span class="sourceLineNo">035</span>@InterfaceAudience.Private<a name="line.35"></a>
+<span class="sourceLineNo">036</span>public final class BlockIOUtils {<a name="line.36"></a>
+<span class="sourceLineNo">037</span>  private static final Logger LOG =<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    LoggerFactory.getLogger(BlockIOUtils.class);<a name="line.38"></a>
+<span class="sourceLineNo">039</span>  // TODO: remove the reflection when we update to Hadoop 3.3 or above.<a name="line.39"></a>
+<span class="sourceLineNo">040</span>  private static Method byteBufferPositionedReadMethod;<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>  static {<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    initByteBufferPositionReadableMethod();<a name="line.43"></a>
+<span class="sourceLineNo">044</span>  }<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>  // Disallow instantiation<a name="line.46"></a>
+<span class="sourceLineNo">047</span>  private BlockIOUtils() {<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
 <span class="sourceLineNo">049</span>  }<a name="line.49"></a>
 <span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>  /**<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   * Read length bytes into ByteBuffers directly.<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   * @param buf the destination {@link ByteBuff}<a name="line.53"></a>
-<span class="sourceLineNo">054</span>   * @param dis the HDFS input stream which implement the ByteBufferReadable interface.<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   * @param length bytes to read.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   * @throws IOException exception to throw if any error happen<a name="line.56"></a>
-<span class="sourceLineNo">057</span>   */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>  public static void readFully(ByteBuff buf, FSDataInputStream dis, int length) throws IOException {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    if (!isByteBufferReadable(dis)) {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      // If InputStream does not support the ByteBuffer read, just read to heap and copy bytes to<a name="line.60"></a>
-<span class="sourceLineNo">061</span>      // the destination ByteBuff.<a name="line.61"></a>
-<span class="sourceLineNo">062</span>      byte[] heapBuf = new byte[length];<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      IOUtils.readFully(dis, heapBuf, 0, length);<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      copyToByteBuff(heapBuf, 0, length, buf);<a name="line.64"></a>
-<span class="sourceLineNo">065</span>      return;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    }<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    ByteBuffer[] buffers = buf.nioByteBuffers();<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    int remain = length;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    int idx = 0;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    ByteBuffer cur = buffers[idx];<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    while (remain &gt; 0) {<a name="line.71"></a>
-<span class="sourceLineNo">072</span>      while (!cur.hasRemaining()) {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>        if (++idx &gt;= buffers.length) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>          throw new IOException(<a name="line.74"></a>
-<span class="sourceLineNo">075</span>              "Not enough ByteBuffers to read the reminding " + remain + " " + "bytes");<a name="line.75"></a>
-<span class="sourceLineNo">076</span>        }<a name="line.76"></a>
-<span class="sourceLineNo">077</span>        cur = buffers[idx];<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      }<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      cur.limit(cur.position() + Math.min(remain, cur.remaining()));<a name="line.79"></a>
-<span class="sourceLineNo">080</span>      int bytesRead = dis.read(cur);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      if (bytesRead &lt; 0) {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>        throw new IOException(<a name="line.82"></a>
-<span class="sourceLineNo">083</span>            "Premature EOF from inputStream, but still need " + remain + " " + "bytes");<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      }<a name="line.84"></a>
-<span class="sourceLineNo">085</span>      remain -= bytesRead;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>    }<a name="line.86"></a>
-<span class="sourceLineNo">087</span>  }<a name="line.87"></a>
-<span class="sourceLineNo">088</span><a name="line.88"></a>
-<span class="sourceLineNo">089</span>  /**<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   * Copying bytes from InputStream to {@link ByteBuff} by using an temporary heap byte[] (default<a name="line.90"></a>
-<span class="sourceLineNo">091</span>   * size is 1024 now).<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   * @param in the InputStream to read<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   * @param out the destination {@link ByteBuff}<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   * @param length to read<a name="line.94"></a>
-<span class="sourceLineNo">095</span>   * @throws IOException if any io error encountered.<a name="line.95"></a>
-<span class="sourceLineNo">096</span>   */<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  public static void readFullyWithHeapBuffer(InputStream in, ByteBuff out, int length)<a name="line.97"></a>
-<span class="sourceLineNo">098</span>      throws IOException {<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    byte[] buffer = new byte[1024];<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    if (length &lt; 0) {<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      throw new IllegalArgumentException("Length must not be negative: " + length);<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    }<a name="line.102"></a>
-<span class="sourceLineNo">103</span>    int remain = length, count;<a name="line.103"></a>
-<span class="sourceLineNo">104</span>    while (remain &gt; 0) {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>      count = in.read(buffer, 0, Math.min(remain, buffer.length));<a name="line.105"></a>
-<span class="sourceLineNo">106</span>      if (count &lt; 0) {<a name="line.106"></a>
-<span class="sourceLineNo">107</span>        throw new IOException(<a name="line.107"></a>
-<span class="sourceLineNo">108</span>            "Premature EOF from inputStream, but still need " + remain + " bytes");<a name="line.108"></a>
-<span class="sourceLineNo">109</span>      }<a name="line.109"></a>
-<span class="sourceLineNo">110</span>      out.put(buffer, 0, count);<a name="line.110"></a>
-<span class="sourceLineNo">111</span>      remain -= count;<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    }<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  }<a name="line.113"></a>
-<span class="sourceLineNo">114</span><a name="line.114"></a>
-<span class="sourceLineNo">115</span>  /**<a name="line.115"></a>
-<span class="sourceLineNo">116</span>   * Read from an input stream at least &lt;code&gt;necessaryLen&lt;/code&gt; and if possible,<a name="line.116"></a>
-<span class="sourceLineNo">117</span>   * &lt;code&gt;extraLen&lt;/code&gt; also if available. Analogous to<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   * {@link IOUtils#readFully(InputStream, byte[], int, int)}, but specifies a number of "extra"<a name="line.118"></a>
-<span class="sourceLineNo">119</span>   * bytes to also optionally read.<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   * @param in the input stream to read from<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   * @param buf the buffer to read into<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   * @param bufOffset the destination offset in the buffer<a name="line.122"></a>
-<span class="sourceLineNo">123</span>   * @param necessaryLen the number of bytes that are absolutely necessary to read<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   * @param extraLen the number of extra bytes that would be nice to read<a name="line.124"></a>
-<span class="sourceLineNo">125</span>   * @return true if succeeded reading the extra bytes<a name="line.125"></a>
-<span class="sourceLineNo">126</span>   * @throws IOException if failed to read the necessary bytes<a name="line.126"></a>
-<span class="sourceLineNo">127</span>   */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>  private static boolean readWithExtraOnHeap(InputStream in, byte[] buf, int bufOffset,<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      int necessaryLen, int extraLen) throws IOException {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    int bytesRemaining = necessaryLen + extraLen;<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    while (bytesRemaining &gt; 0) {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>      int ret = in.read(buf, bufOffset, bytesRemaining);<a name="line.132"></a>
-<span class="sourceLineNo">133</span>      if (ret &lt; 0) {<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        if (bytesRemaining &lt;= extraLen) {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>          // We could not read the "extra data", but that is OK.<a name="line.135"></a>
-<span class="sourceLineNo">136</span>          break;<a name="line.136"></a>
-<span class="sourceLineNo">137</span>        }<a name="line.137"></a>
-<span class="sourceLineNo">138</span>        throw new IOException("Premature EOF from inputStream (read " + "returned " + ret<a name="line.138"></a>
-<span class="sourceLineNo">139</span>            + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.139"></a>
-<span class="sourceLineNo">140</span>            + " extra bytes, " + "successfully read " + (necessaryLen + extraLen - bytesRemaining));<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      bufOffset += ret;<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      bytesRemaining -= ret;<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    }<a name="line.144"></a>
-<span class="sourceLineNo">145</span>    return bytesRemaining &lt;= 0;<a name="line.145"></a>
-<span class="sourceLineNo">146</span>  }<a name="line.146"></a>
-<span class="sourceLineNo">147</span><a name="line.147"></a>
-<span class="sourceLineNo">148</span>  /**<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   * Read bytes into ByteBuffers directly, those buffers either contains the extraLen bytes or only<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   * contains necessaryLen bytes, which depends on how much bytes do the last time we read.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   * @param buf the destination {@link ByteBuff}.<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   * @param dis input stream to read.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   * @param necessaryLen bytes which we must read<a name="line.153"></a>
-<span class="sourceLineNo">154</span>   * @param extraLen bytes which we may read<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   * @return if the returned flag is true, then we've finished to read the extraLen into our<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   *         ByteBuffers, otherwise we've not read the extraLen bytes yet.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   * @throws IOException if failed to read the necessary bytes.<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   */<a name="line.158"></a>
-<span class="sourceLineNo">159</span>  public static boolean readWithExtra(ByteBuff buf, FSDataInputStream dis, int necessaryLen,<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      int extraLen) throws IOException {<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    if (!isByteBufferReadable(dis)) {<a name="line.161"></a>
-<span class="sourceLineNo">162</span>      // If InputStream does not support the ByteBuffer read, just read to heap and copy bytes to<a name="line.162"></a>
-<span class="sourceLineNo">163</span>      // the destination ByteBuff.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      byte[] heapBuf = new byte[necessaryLen + extraLen];<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      boolean ret = readWithExtraOnHeap(dis, heapBuf, 0, necessaryLen, extraLen);<a name="line.165"></a>
-<span class="sourceLineNo">166</span>      copyToByteBuff(heapBuf, 0, heapBuf.length, buf);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      return ret;<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    }<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    ByteBuffer[] buffers = buf.nioByteBuffers();<a name="line.169"></a>
-<span class="sourceLineNo">170</span>    int bytesRead = 0;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    int remain = necessaryLen + extraLen;<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    int idx = 0;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    ByteBuffer cur = buffers[idx];<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    while (bytesRead &lt; necessaryLen) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>      while (!cur.hasRemaining()) {<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        if (++idx &gt;= buffers.length) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>          throw new IOException("Not enough ByteBuffers to read the reminding " + remain + "bytes");<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        }<a name="line.178"></a>
-<span class="sourceLineNo">179</span>        cur = buffers[idx];<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      cur.limit(cur.position() + Math.min(remain, cur.remaining()));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>      int ret = dis.read(cur);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      if (ret &lt; 0) {<a name="line.183"></a>
-<span class="sourceLineNo">184</span>        throw new IOException("Premature EOF from inputStream (read returned " + ret<a name="line.184"></a>
-<span class="sourceLineNo">185</span>            + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.185"></a>
-<span class="sourceLineNo">186</span>            + " extra bytes, successfully read " + bytesRead);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      }<a name="line.187"></a>
-<span class="sourceLineNo">188</span>      bytesRead += ret;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>      remain -= ret;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    }<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    return (extraLen &gt; 0) &amp;&amp; (bytesRead == necessaryLen + extraLen);<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  }<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>  /**<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   * Read from an input stream at least &lt;code&gt;necessaryLen&lt;/code&gt; and if possible,<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   * &lt;code&gt;extraLen&lt;/code&gt; also if available. Analogous to<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   * {@link IOUtils#readFully(InputStream, byte[], int, int)}, but uses positional read and<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   * specifies a number of "extra" bytes that would be desirable but not absolutely necessary to<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   * read.<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   * @param buff ByteBuff to read into.<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   * @param dis the input stream to read from<a name="line.201"></a>
-<span class="sourceLineNo">202</span>   * @param position the position within the stream from which to start reading<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   * @param necessaryLen the number of bytes that are absolutely necessary to read<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   * @param extraLen the number of extra bytes that would be nice to read<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   * @return true if and only if extraLen is &gt; 0 and reading those extra bytes was successful<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   * @throws IOException if failed to read the necessary bytes<a name="line.206"></a>
-<span class="sourceLineNo">207</span>   */<a name="line.207"></a>
-<span class="sourceLineNo">208</span>  public static boolean preadWithExtra(ByteBuff buff, FSDataInputStream dis, long position,<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      int necessaryLen, int extraLen) throws IOException {<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    int remain = necessaryLen + extraLen;<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    byte[] buf = new byte[remain];<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    int bytesRead = 0;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    while (bytesRead &lt; necessaryLen) {<a name="line.213"></a>
-<span class="sourceLineNo">214</span>      int ret = dis.read(position + bytesRead, buf, bytesRead, remain);<a name="line.214"></a>
-<span class="sourceLineNo">215</span>      if (ret &lt; 0) {<a name="line.215"></a>
-<span class="sourceLineNo">216</span>        throw new IOException("Premature EOF from inputStream (positional read returned " + ret<a name="line.216"></a>
-<span class="sourceLineNo">217</span>            + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.217"></a>
-<span class="sourceLineNo">218</span>            + " extra bytes, successfully read " + bytesRead);<a name="line.218"></a>
-<span class="sourceLineNo">219</span>      }<a name="line.219"></a>
-<span class="sourceLineNo">220</span>      bytesRead += ret;<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      remain -= ret;<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    }<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    // Copy the bytes from on-heap bytes[] to ByteBuffer[] now, and after resolving HDFS-3246, we<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    // will read the bytes to ByteBuffer[] directly without allocating any on-heap byte[].<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    // TODO I keep the bytes copy here, because I want to abstract the ByteBuffer[]<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    // preadWithExtra method for the upper layer, only need to refactor this method if the<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    // ByteBuffer pread is OK.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    copyToByteBuff(buf, 0, bytesRead, buff);<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    return (extraLen &gt; 0) &amp;&amp; (bytesRead == necessaryLen + extraLen);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>  }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>  private static int copyToByteBuff(byte[] buf, int offset, int len, ByteBuff out)<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      throws IOException {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    if (offset &lt; 0 || len &lt; 0 || offset + len &gt; buf.length) {<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      throw new IOException("Invalid offset=" + offset + " and len=" + len + ", cap=" + buf.length);<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>    ByteBuffer[] buffers = out.nioByteBuffers();<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    int idx = 0, remain = len, copyLen;<a name="line.238"></a>
-<span class="sourceLineNo">239</span>    ByteBuffer cur = buffers[idx];<a name="line.239"></a>
-<span class="sourceLineNo">240</span>    while (remain &gt; 0) {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      while (!cur.hasRemaining()) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>        if (++idx &gt;= buffers.length) {<a name="line.242"></a>
-<span class="sourceLineNo">243</span>          throw new IOException("Not enough ByteBuffers to read the reminding " + remain + "bytes");<a name="line.243"></a>
-<span class="sourceLineNo">244</span>        }<a name="line.244"></a>
-<span class="sourceLineNo">245</span>        cur = buffers[idx];<a name="line.245"></a>
-<span class="sourceLineNo">246</span>      }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      copyLen = Math.min(cur.remaining(), remain);<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      cur.put(buf, offset, copyLen);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      remain -= copyLen;<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      offset += copyLen;<a name="line.250"></a>
-<span class="sourceLineNo">251</span>    }<a name="line.251"></a>
-<span class="sourceLineNo">252</span>    return len;<a name="line.252"></a>
-<span class="sourceLineNo">253</span>  }<a name="line.253"></a>
-<span class="sourceLineNo">254</span>}<a name="line.254"></a>
+<span class="sourceLineNo">051</span>  private static void initByteBufferPositionReadableMethod() {<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    try {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      //long position, ByteBuffer buf<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      byteBufferPositionedReadMethod = FSDataInputStream.class.getMethod("read", long.class,<a name="line.54"></a>
+<span class="sourceLineNo">055</span>        ByteBuffer.class);<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    } catch (NoSuchMethodException e) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      LOG.debug("Unable to find positioned bytebuffer read API of FSDataInputStream. "<a name="line.57"></a>
+<span class="sourceLineNo">058</span>        + "preadWithExtra() will use a temporary on-heap byte array.");<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>  }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>  public static boolean isByteBufferReadable(FSDataInputStream is) {<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    InputStream cur = is.getWrappedStream();<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    for (;;) {<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      if ((cur instanceof FSDataInputStream)) {<a name="line.65"></a>
+<span class="sourceLineNo">066</span>        cur = ((FSDataInputStream) cur).getWrappedStream();<a name="line.66"></a>
+<span class="sourceLineNo">067</span>      } else {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>        break;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>      }<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    }<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    return cur instanceof ByteBufferReadable;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>  }<a name="line.72"></a>
+<span class="sourceLineNo">073</span><a name="line.73"></a>
+<span class="sourceLineNo">074</span>  /**<a name="line.74"></a>
+<span class="sourceLineNo">075</span>   * Read length bytes into ByteBuffers directly.<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   * @param buf the destination {@link ByteBuff}<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   * @param dis the HDFS input stream which implement the ByteBufferReadable interface.<a name="line.77"></a>
+<span class="sourceLineNo">078</span>   * @param length bytes to read.<a name="line.78"></a>
+<span class="sourceLineNo">079</span>   * @throws IOException exception to throw if any error happen<a name="line.79"></a>
+<span class="sourceLineNo">080</span>   */<a name="line.80"></a>
+<span class="sourceLineNo">081</span>  public static void readFully(ByteBuff buf, FSDataInputStream dis, int length) throws IOException {<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    if (!isByteBufferReadable(dis)) {<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      // If InputStream does not support the ByteBuffer read, just read to heap and copy bytes to<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      // the destination ByteBuff.<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      byte[] heapBuf = new byte[length];<a name="line.85"></a>
+<span class="sourceLineNo">086</span>      IOUtils.readFully(dis, heapBuf, 0, length);<a name="line.86"></a>
+<span class="sourceLineNo">087</span>      copyToByteBuff(heapBuf, 0, length, buf);<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      return;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    }<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    ByteBuffer[] buffers = buf.nioByteBuffers();<a name="line.90"></a>
+<span class="sourceLineNo">091</span>    int remain = length;<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    int idx = 0;<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    ByteBuffer cur = buffers[idx];<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    while (remain &gt; 0) {<a name="line.94"></a>
+<span class="sourceLineNo">095</span>      while (!cur.hasRemaining()) {<a name="line.95"></a>
+<span class="sourceLineNo">096</span>        if (++idx &gt;= buffers.length) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>          throw new IOException(<a name="line.97"></a>
+<span class="sourceLineNo">098</span>              "Not enough ByteBuffers to read the reminding " + remain + " " + "bytes");<a name="line.98"></a>
+<span class="sourceLineNo">099</span>        }<a name="line.99"></a>
+<span class="sourceLineNo">100</span>        cur = buffers[idx];<a name="line.100"></a>
+<span class="sourceLineNo">101</span>      }<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      cur.limit(cur.position() + Math.min(remain, cur.remaining()));<a name="line.102"></a>
+<span class="sourceLineNo">103</span>      int bytesRead = dis.read(cur);<a name="line.103"></a>
+<span class="sourceLineNo">104</span>      if (bytesRead &lt; 0) {<a name="line.104"></a>
+<span class="sourceLineNo">105</span>        throw new IOException(<a name="line.105"></a>
+<span class="sourceLineNo">106</span>            "Premature EOF from inputStream, but still need " + remain + " " + "bytes");<a name="line.106"></a>
+<span class="sourceLineNo">107</span>      }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>      remain -= bytesRead;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    }<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  }<a name="line.110"></a>
+<span class="sourceLineNo">111</span><a name="line.111"></a>
+<span class="sourceLineNo">112</span>  /**<a name="line.112"></a>
+<span class="sourceLineNo">113</span>   * Copying bytes from InputStream to {@link ByteBuff} by using an temporary heap byte[] (default<a name="line.113"></a>
+<span class="sourceLineNo">114</span>   * size is 1024 now).<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   * @param in the InputStream to read<a name="line.115"></a>
+<span class="sourceLineNo">116</span>   * @param out the destination {@link ByteBuff}<a name="line.116"></a>
+<span class="sourceLineNo">117</span>   * @param length to read<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   * @throws IOException if any io error encountered.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>   */<a name="line.119"></a>
+<span class="sourceLineNo">120</span>  public static void readFullyWithHeapBuffer(InputStream in, ByteBuff out, int length)<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      throws IOException {<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    byte[] buffer = new byte[1024];<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    if (length &lt; 0) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      throw new IllegalArgumentException("Length must not be negative: " + length);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    }<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    int remain = length, count;<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    while (remain &gt; 0) {<a name="line.127"></a>
+<span class="sourceLineNo">128</span>      count = in.read(buffer, 0, Math.min(remain, buffer.length));<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      if (count &lt; 0) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>        throw new IOException(<a name="line.130"></a>
+<span class="sourceLineNo">131</span>            "Premature EOF from inputStream, but still need " + remain + " bytes");<a name="line.131"></a>
+<span class="sourceLineNo">132</span>      }<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      out.put(buffer, 0, count);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      remain -= count;<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    }<a name="line.135"></a>
+<span class="sourceLineNo">136</span>  }<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>  /**<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   * Read from an input stream at least &lt;code&gt;necessaryLen&lt;/code&gt; and if possible,<a name="line.139"></a>
+<span class="sourceLineNo">140</span>   * &lt;code&gt;extraLen&lt;/code&gt; also if available. Analogous to<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   * {@link IOUtils#readFully(InputStream, byte[], int, int)}, but specifies a number of "extra"<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   * bytes to also optionally read.<a name="line.142"></a>
+<span class="sourceLineNo">143</span>   * @param in the input stream to read from<a name="line.143"></a>
+<span class="sourceLineNo">144</span>   * @param buf the buffer to read into<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   * @param bufOffset the destination offset in the buffer<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   * @param necessaryLen the number of bytes that are absolutely necessary to read<a name="line.146"></a>
+<span class="sourceLineNo">147</span>   * @param extraLen the number of extra bytes that would be nice to read<a name="line.147"></a>
+<span class="sourceLineNo">148</span>   * @return true if succeeded reading the extra bytes<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   * @throws IOException if failed to read the necessary bytes<a name="line.149"></a>
+<span class="sourceLineNo">150</span>   */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  private static boolean readWithExtraOnHeap(InputStream in, byte[] buf, int bufOffset,<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      int necessaryLen, int extraLen) throws IOException {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    int bytesRemaining = necessaryLen + extraLen;<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    while (bytesRemaining &gt; 0) {<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      int ret = in.read(buf, bufOffset, bytesRemaining);<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      if (ret &lt; 0) {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>        if (bytesRemaining &lt;= extraLen) {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>          // We could not read the "extra data", but that is OK.<a name="line.158"></a>
+<span class="sourceLineNo">159</span>          break;<a name="line.159"></a>
+<span class="sourceLineNo">160</span>        }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>        throw new IOException("Premature EOF from inputStream (read " + "returned " + ret<a name="line.161"></a>
+<span class="sourceLineNo">162</span>            + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.162"></a>
+<span class="sourceLineNo">163</span>            + " extra bytes, " + "successfully read " + (necessaryLen + extraLen - bytesRemaining));<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      bufOffset += ret;<a name="line.165"></a>
+<span class="sourceLineNo">166</span>      bytesRemaining -= ret;<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    return bytesRemaining &lt;= 0;<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  }<a name="line.169"></a>
+<span class="sourceLineNo">170</span><a name="line.170"></a>
+<span class="sourceLineNo">171</span>  /**<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   * Read bytes into ByteBuffers directly, those buffers either contains the extraLen bytes or only<a name="line.172"></a>
+<span class="sourceLineNo">173</span>   * contains necessaryLen bytes, which depends on how much bytes do the last time we read.<a name="line.173"></a>
+<span class="sourceLineNo">174</span>   * @param buf the destination {@link ByteBuff}.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>   * @param dis input stream to read.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   * @param necessaryLen bytes which we must read<a name="line.176"></a>
+<span class="sourceLineNo">177</span>   * @param extraLen bytes which we may read<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   * @return if the returned flag is true, then we've finished to read the extraLen into our<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   *         ByteBuffers, otherwise we've not read the extraLen bytes yet.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   * @throws IOException if failed to read the necessary bytes.<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   */<a name="line.181"></a>
+<span class="sourceLineNo">182</span>  public static boolean readWithExtra(ByteBuff buf, FSDataInputStream dis, int necessaryLen,<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      int extraLen) throws IOException {<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    if (!isByteBufferReadable(dis)) {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      // If InputStream does not support the ByteBuffer read, just read to heap and copy bytes to<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      // the destination ByteBuff.<a name="line.186"></a>
+<span class="sourceLineNo">187</span>      byte[] heapBuf = new byte[necessaryLen + extraLen];<a name="line.187"></a>
+<span class="sourceLineNo">188</span>      boolean ret = readWithExtraOnHeap(dis, heapBuf, 0, necessaryLen, extraLen);<a name="line.188"></a>
+<span class="sourceLineNo">189</span>      copyToByteBuff(heapBuf, 0, heapBuf.length, buf);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>      return ret;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    ByteBuffer[] buffers = buf.nioByteBuffers();<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    int bytesRead = 0;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    int remain = necessaryLen + extraLen;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    int idx = 0;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    ByteBuffer cur = buffers[idx];<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    while (bytesRead &lt; necessaryLen) {<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      while (!cur.hasRemaining()) {<a name="line.198"></a>
+<span class="sourceLineNo">199</span>        if (++idx &gt;= buffers.length) {<a name="line.199"></a>
+<span class="sourceLineNo">200</span>          throw new IOException("Not enough ByteBuffers to read the reminding " + remain + "bytes");<a name="line.200"></a>
+<span class="sourceLineNo">201</span>        }<a name="line.201"></a>
+<span class="sourceLineNo">202</span>        cur = buffers[idx];<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      }<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      cur.limit(cur.position() + Math.min(remain, cur.remaining()));<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      int ret = dis.read(cur);<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      if (ret &lt; 0) {<a name="line.206"></a>
+<span class="sourceLineNo">207</span>        throw new IOException("Premature EOF from inputStream (read returned " + ret<a name="line.207"></a>
+<span class="sourceLineNo">208</span>            + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.208"></a>
+<span class="sourceLineNo">209</span>            + " extra bytes, successfully read " + bytesRead);<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      bytesRead += ret;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      remain -= ret;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    }<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    return (extraLen &gt; 0) &amp;&amp; (bytesRead == necessaryLen + extraLen);<a name="line.214"></a>
+<span class="sourceLineNo">215</span>  }<a name="line.215"></a>
+<span class="sourceLineNo">216</span><a name="line.216"></a>
+<span class="sourceLineNo">217</span>  /**<a name="line.217"></a>
+<span class="sourceLineNo">218</span>   * Read from an input stream at least &lt;code&gt;necessaryLen&lt;/code&gt; and if possible,<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   * &lt;code&gt;extraLen&lt;/code&gt; also if available. Analogous to<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   * {@link IOUtils#readFully(InputStream, byte[], int, int)}, but uses positional read and<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   * specifies a number of "extra" bytes that would be desirable but not absolutely necessary to<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   * read.<a name="line.222"></a>
+<span class="sourceLineNo">223</span>   *<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   * If the input stream supports ByteBufferPositionedReadable, it reads to the byte buffer<a name="line.224"></a>
+<span class="sourceLineNo">225</span>   * directly, and does not allocate a temporary byte array.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>   *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   * @param buff ByteBuff to read into.<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   * @param dis the input stream to read from<a name="line.228"></a>
+<span class="sourceLineNo">229</span>   * @param position the position within the stream from which to start reading<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   * @param necessaryLen the number of bytes that are absolutely necessary to read<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   * @param extraLen the number of extra bytes that would be nice to read<a name="line.231"></a>
+<span class="sourceLineNo">232</span>   * @return true if and only if extraLen is &gt; 0 and reading those extra bytes was successful<a name="line.232"></a>
+<span class="sourceLineNo">233</span>   * @throws IOException if failed to read the necessary bytes<a name="line.233"></a>
+<span class="sourceLineNo">234</span>   */<a name="line.234"></a>
+<span class="sourceLineNo">235</span>  public static boolean preadWithExtra(ByteBuff buff, FSDataInputStream dis, long position,<a name="line.235"></a>
+<span class="sourceLineNo">236</span>      int necessaryLen, int extraLen) throws IOException {<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    boolean preadbytebuffer = dis.hasCapability("in:preadbytebuffer");<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>    if (preadbytebuffer) {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>      return preadWithExtraDirectly(buff, dis, position, necessaryLen, extraLen);<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    } else {<a name="line.241"></a>
+<span class="sourceLineNo">242</span>      return preadWithExtraOnHeap(buff, dis, position, necessaryLen, extraLen);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    }<a name="line.243"></a>
+<span class="sourceLineNo">244</span>  }<a name="line.244"></a>
+<span class="sourceLineNo">245</span><a name="line.245"></a>
+<span class="sourceLineNo">246</span>  private static boolean preadWithExtraOnHeap(ByteBuff buff, FSDataInputStream dis, long position,<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    int necessaryLen, int extraLen) throws IOException {<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    int remain = necessaryLen + extraLen;<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    byte[] buf = new byte[remain];<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    int bytesRead = 0;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    while (bytesRead &lt; necessaryLen) {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      int ret = dis.read(position + bytesRead, buf, bytesRead, remain);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>      if (ret &lt; 0) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>        throw new IOException("Premature EOF from inputStream (positional read returned " + ret<a name="line.254"></a>
+<span class="sourceLineNo">255</span>            + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.255"></a>
+<span class="sourceLineNo">256</span>            + " extra bytes, successfully read " + bytesRead);<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      }<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      bytesRead += ret;<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      remain -= ret;<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    }<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    copyToByteBuff(buf, 0, bytesRead, buff);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    return (extraLen &gt; 0) &amp;&amp; (bytesRead == necessaryLen + extraLen);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>  }<a name="line.263"></a>
+<span class="sourceLineNo">264</span><a name="line.264"></a>
+<span class="sourceLineNo">265</span>  private static boolean preadWithExtraDirectly(ByteBuff buff, FSDataInputStream dis, long position,<a name="line.265"></a>
+<span class="sourceLineNo">266</span>    int necessaryLen, int extraLen) throws IOException {<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    int remain = necessaryLen + extraLen, bytesRead = 0, idx = 0;<a name="line.267"></a>
+<span class="sourceLineNo">268</span>    ByteBuffer[] buffers = buff.nioByteBuffers();<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    ByteBuffer cur = buffers[idx];<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    while (bytesRead &lt; necessaryLen) {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      int ret;<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      while (!cur.hasRemaining()) {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>        if (++idx &gt;= buffers.length) {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>          throw new IOException("Not enough ByteBuffers to read the reminding " + remain + "bytes");<a name="line.274"></a>
+<span class="sourceLineNo">275</span>        }<a name="line.275"></a>
+<span class="sourceLineNo">276</span>        cur = buffers[idx];<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      }<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      cur.limit(cur.position() + Math.min(remain, cur.remaining()));<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      try {<a name="line.279"></a>
+<span class="sourceLineNo">280</span>        ret = (Integer) byteBufferPositionedReadMethod.invoke(dis, position + bytesRead, cur);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      } catch (IllegalAccessException e) {<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        throw new IOException("Unable to invoke ByteBuffer positioned read when trying to read "<a name="line.282"></a>
+<span class="sourceLineNo">283</span>          + bytesRead + " bytes from position " + position, e);<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      } catch (InvocationTargetException e) {<a name="line.284"></a>
+<span class="sourceLineNo">285</span>        throw new IOException("Encountered an exception when invoking ByteBuffer positioned read"<a name="line.285"></a>
+<span class="sourceLineNo">286</span>          + " when trying to read " + bytesRead + " bytes from position " + position, e);<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      } catch (NullPointerException e) {<a name="line.287"></a>
+<span class="sourceLineNo">288</span>        throw new IOException("something is null");<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      } catch (Exception e) {<a name="line.289"></a>
+<span class="sourceLineNo">290</span>        throw e;<a name="line.290"></a>
+<span class="sourceLineNo">291</span>      }<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      if (ret &lt; 0) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        throw new IOException("Premature EOF from inputStream (positional read returned " + ret<a name="line.293"></a>
+<span class="sourceLineNo">294</span>          + ", was trying to read " + necessaryLen + " necessary bytes and " + extraLen<a name="line.294"></a>
+<span class="sourceLineNo">295</span>          + " extra bytes, successfully read " + bytesRead);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>      }<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      bytesRead += ret;<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      remain -= ret;<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    }<a name="line.299"></a>
+<span class="sourceLineNo">300</span><a name="line.300"></a>
+<span class="sourceLineNo">301</span>    return (extraLen &gt; 0) &amp;&amp; (bytesRead == necessaryLen + extraLen);<a name="line.301"></a>
+<span class="sourceLineNo">302</span>  }<a name="line.302"></a>
+<span class="sourceLineNo">303</span><a name="line.303"></a>
+<span class="sourceLineNo">304</span>  private static int copyToByteBuff(byte[] buf, int offset, int len, ByteBuff out)<a name="line.304"></a>
+<span class="sourceLineNo">305</span>      throws IOException {<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    if (offset &lt; 0 || len &lt; 0 || offset + len &gt; buf.length) {<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      throw new IOException("Invalid offset=" + offset + " and len=" + len + ", cap=" + buf.length);<a name="line.307"></a>
+<span class="sourceLineNo">308</span>    }<a name="line.308"></a>
+<span class="sourceLineNo">309</span>    ByteBuffer[] buffers = out.nioByteBuffers();<a name="line.309"></a>
+<span class="sourceLineNo">310</span>    int idx = 0, remain = len, copyLen;<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    ByteBuffer cur = buffers[idx];<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    while (remain &gt; 0) {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>      while (!cur.hasRemaining()) {<a name="line.313"></a>
+<span class="sourceLineNo">314</span>        if (++idx &gt;= buffers.length) {<a name="line.314"></a>
+<span class="sourceLineNo">315</span>          throw new IOException("Not enough ByteBuffers to read the reminding " + remain + "bytes");<a name="line.315"></a>
+<span class="sourceLineNo">316</span>        }<a name="line.316"></a>
+<span class="sourceLineNo">317</span>        cur = buffers[idx];<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      }<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      copyLen = Math.min(cur.remaining(), remain);<a name="line.319"></a>
+<span class="sourceLineNo">320</span>      cur.put(buf, offset, copyLen);<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      remain -= copyLen;<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      offset += copyLen;<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    }<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    return len;<a name="line.324"></a>
+<span class="sourceLineNo">325</span>  }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>}<a name="line.326"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html b/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html
index aad88b8..aa5d974 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html
@@ -43,1390 +43,1398 @@
 <span class="sourceLineNo">035</span>import java.util.concurrent.locks.ReentrantLock;<a name="line.35"></a>
 <span class="sourceLineNo">036</span>import org.apache.hadoop.conf.Configuration;<a name="line.36"></a>
 <span class="sourceLineNo">037</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.FSError;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.FileAlreadyExistsException;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.FileStatus;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.fs.FileSystem;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.fs.Path;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.fs.PathFilter;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.HConstants;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.log.HBaseMarkers;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.procedure2.Procedure;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.procedure2.ProcedureExecutor;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.procedure2.store.LeaseRecovery;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStore;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.procedure2.util.ByteSlot;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.procedure2.util.StringUtils;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.ipc.RemoteException;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.slf4j.Logger;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.slf4j.LoggerFactory;<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue;<a name="line.63"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.FSError;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.FileAlreadyExistsException;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.fs.FileStatus;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.apache.hadoop.fs.FileSystem;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.apache.hadoop.fs.Path;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.PathFilter;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.HConstants;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.log.HBaseMarkers;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.procedure2.Procedure;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.procedure2.ProcedureExecutor;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.procedure2.store.LeaseRecovery;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStore;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.procedure2.util.ByteSlot;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.procedure2.util.StringUtils;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hdfs.DistributedFileSystem;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.ipc.RemoteException;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.slf4j.Logger;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.slf4j.LoggerFactory;<a name="line.63"></a>
 <span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureWALHeader;<a name="line.65"></a>
+<span class="sourceLineNo">065</span>import org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue;<a name="line.65"></a>
 <span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>/**<a name="line.67"></a>
-<span class="sourceLineNo">068</span> * WAL implementation of the ProcedureStore.<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;p/&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * When starting, the upper layer will first call {@link #start(int)}, then {@link #recoverLease()},<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * then {@link #load(ProcedureLoader)}.<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * &lt;p/&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * In {@link #recoverLease()}, we will get the lease by closing all the existing wal files(by<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * calling recoverFileLease), and creating a new wal writer. And we will also get the list of all<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * the old wal files.<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;p/&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * FIXME: notice that the current recover lease implementation is problematic, it can not deal with<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * the races if there are two master both wants to acquire the lease...<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;p/&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * In {@link #load(ProcedureLoader)} method, we will load all the active procedures. See the<a name="line.80"></a>
-<span class="sourceLineNo">081</span> * comments of this method for more details.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> * &lt;p/&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> * The actual logging way is a bit like our FileSystem based WAL implementation as RS side. There is<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * a {@link #slots}, which is more like the ring buffer, and in the insert, update and delete<a name="line.84"></a>
-<span class="sourceLineNo">085</span> * methods we will put thing into the {@link #slots} and wait. And there is a background sync<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * thread(see the {@link #syncLoop()} method) which get data from the {@link #slots} and write them<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * to the FileSystem, and notify the caller that we have finished.<a name="line.87"></a>
-<span class="sourceLineNo">088</span> * &lt;p/&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> * TODO: try using disruptor to increase performance and simplify the logic?<a name="line.89"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureWALHeader;<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>/**<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * WAL implementation of the ProcedureStore.<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * &lt;p/&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * When starting, the upper layer will first call {@link #start(int)}, then {@link #recoverLease()},<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * then {@link #load(ProcedureLoader)}.<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p/&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * In {@link #recoverLease()}, we will get the lease by closing all the existing wal files(by<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * calling recoverFileLease), and creating a new wal writer. And we will also get the list of all<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * the old wal files.<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;p/&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * FIXME: notice that the current recover lease implementation is problematic, it can not deal with<a name="line.79"></a>
+<span class="sourceLineNo">080</span> * the races if there are two master both wants to acquire the lease...<a name="line.80"></a>
+<span class="sourceLineNo">081</span> * &lt;p/&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> * In {@link #load(ProcedureLoader)} method, we will load all the active procedures. See the<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * comments of this method for more details.<a name="line.83"></a>
+<span class="sourceLineNo">084</span> * &lt;p/&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * The actual logging way is a bit like our FileSystem based WAL implementation as RS side. There is<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * a {@link #slots}, which is more like the ring buffer, and in the insert, update and delete<a name="line.86"></a>
+<span class="sourceLineNo">087</span> * methods we will put thing into the {@link #slots} and wait. And there is a background sync<a name="line.87"></a>
+<span class="sourceLineNo">088</span> * thread(see the {@link #syncLoop()} method) which get data from the {@link #slots} and write them<a name="line.88"></a>
+<span class="sourceLineNo">089</span> * to the FileSystem, and notify the caller that we have finished.<a name="line.89"></a>
 <span class="sourceLineNo">090</span> * &lt;p/&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> * The {@link #storeTracker} keeps track of the modified procedures in the newest wal file, which is<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * also the one being written currently. And the deleted bits in it are for all the procedures, not<a name="line.92"></a>
-<span class="sourceLineNo">093</span> * only the ones in the newest wal file. And when rolling a log, we will first store it in the<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * trailer of the current wal file, and then reset its modified bits, so that it can start to track<a name="line.94"></a>
-<span class="sourceLineNo">095</span> * the modified procedures for the new wal file.<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;p/&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * The {@link #holdingCleanupTracker} is used to test whether we are safe to delete the oldest wal<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * file. When there are log rolling and there are more than 1 wal files, we will make use of it. It<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * will first be initialized to the oldest file's tracker(which is stored in the trailer), using the<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * method {@link ProcedureStoreTracker#resetTo(ProcedureStoreTracker, boolean)}, and then merge it<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * with the tracker of every newer wal files, using the<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * {@link ProcedureStoreTracker#setDeletedIfModifiedInBoth(ProcedureStoreTracker)}.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> * If we find out<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * that all the modified procedures for the oldest wal file are modified or deleted in newer wal<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * files, then we can delete it. This is because that, every time we call<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@link ProcedureStore#insert(Procedure[])} or {@link ProcedureStore#update(Procedure)}, we will<a name="line.106"></a>
-<span class="sourceLineNo">107</span> * persist the full state of a Procedure, so the earlier wal records for this procedure can all be<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * deleted.<a name="line.108"></a>
-<span class="sourceLineNo">109</span> * @see ProcedureWALPrettyPrinter for printing content of a single WAL.<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * @see #main(String[]) to parse a directory of MasterWALProcs.<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * @deprecated Since 2.3.0, will be removed in 4.0.0. Keep here only for rolling upgrading, now we<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *             use the new region based procedure store.<a name="line.112"></a>
-<span class="sourceLineNo">113</span> */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>@Deprecated<a name="line.114"></a>
-<span class="sourceLineNo">115</span>@InterfaceAudience.Private<a name="line.115"></a>
-<span class="sourceLineNo">116</span>public class WALProcedureStore extends ProcedureStoreBase {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>  private static final Logger LOG = LoggerFactory.getLogger(WALProcedureStore.class);<a name="line.117"></a>
-<span class="sourceLineNo">118</span>  public static final String LOG_PREFIX = "pv2-";<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  /** Used to construct the name of the log directory for master procedures */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>  public static final String MASTER_PROCEDURE_LOGDIR = "MasterProcWALs";<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>  public static final String WAL_COUNT_WARN_THRESHOLD_CONF_KEY =<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    "hbase.procedure.store.wal.warn.threshold";<a name="line.124"></a>
-<span class="sourceLineNo">125</span>  private static final int DEFAULT_WAL_COUNT_WARN_THRESHOLD = 10;<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>  public static final String EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY =<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    "hbase.procedure.store.wal.exec.cleanup.on.load";<a name="line.128"></a>
-<span class="sourceLineNo">129</span>  private static final boolean DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY = true;<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>  public static final String MAX_RETRIES_BEFORE_ROLL_CONF_KEY =<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    "hbase.procedure.store.wal.max.retries.before.roll";<a name="line.132"></a>
-<span class="sourceLineNo">133</span>  private static final int DEFAULT_MAX_RETRIES_BEFORE_ROLL = 3;<a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>  public static final String WAIT_BEFORE_ROLL_CONF_KEY =<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    "hbase.procedure.store.wal.wait.before.roll";<a name="line.136"></a>
-<span class="sourceLineNo">137</span>  private static final int DEFAULT_WAIT_BEFORE_ROLL = 500;<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>  public static final String ROLL_RETRIES_CONF_KEY =<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    "hbase.procedure.store.wal.max.roll.retries";<a name="line.140"></a>
-<span class="sourceLineNo">141</span>  private static final int DEFAULT_ROLL_RETRIES = 3;<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>  public static final String MAX_SYNC_FAILURE_ROLL_CONF_KEY =<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    "hbase.procedure.store.wal.sync.failure.roll.max";<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  private static final int DEFAULT_MAX_SYNC_FAILURE_ROLL = 3;<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  public static final String PERIODIC_ROLL_CONF_KEY =<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    "hbase.procedure.store.wal.periodic.roll.msec";<a name="line.148"></a>
-<span class="sourceLineNo">149</span>  private static final int DEFAULT_PERIODIC_ROLL = 60 * 60 * 1000; // 1h<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>  public static final String SYNC_WAIT_MSEC_CONF_KEY = "hbase.procedure.store.wal.sync.wait.msec";<a name="line.151"></a>
-<span class="sourceLineNo">152</span>  private static final int DEFAULT_SYNC_WAIT_MSEC = 100;<a name="line.152"></a>
-<span class="sourceLineNo">153</span><a name="line.153"></a>
-<span class="sourceLineNo">154</span>  public static final String USE_HSYNC_CONF_KEY = "hbase.procedure.store.wal.use.hsync";<a name="line.154"></a>
-<span class="sourceLineNo">155</span>  private static final boolean DEFAULT_USE_HSYNC = true;<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>  public static final String ROLL_THRESHOLD_CONF_KEY = "hbase.procedure.store.wal.roll.threshold";<a name="line.157"></a>
-<span class="sourceLineNo">158</span>  private static final long DEFAULT_ROLL_THRESHOLD = 32 * 1024 * 1024; // 32M<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>  public static final String STORE_WAL_SYNC_STATS_COUNT =<a name="line.160"></a>
-<span class="sourceLineNo">161</span>      "hbase.procedure.store.wal.sync.stats.count";<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  private static final int DEFAULT_SYNC_STATS_COUNT = 10;<a name="line.162"></a>
-<span class="sourceLineNo">163</span><a name="line.163"></a>
-<span class="sourceLineNo">164</span>  private final LinkedList&lt;ProcedureWALFile&gt; logs = new LinkedList&lt;&gt;();<a name="line.164"></a>
-<span class="sourceLineNo">165</span>  private final ProcedureStoreTracker holdingCleanupTracker = new ProcedureStoreTracker();<a name="line.165"></a>
-<span class="sourceLineNo">166</span>  private final ProcedureStoreTracker storeTracker = new ProcedureStoreTracker();<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  private final ReentrantLock lock = new ReentrantLock();<a name="line.167"></a>
-<span class="sourceLineNo">168</span>  private final Condition waitCond = lock.newCondition();<a name="line.168"></a>
-<span class="sourceLineNo">169</span>  private final Condition slotCond = lock.newCondition();<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  private final Condition syncCond = lock.newCondition();<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>  private final LeaseRecovery leaseRecovery;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>  private final Configuration conf;<a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private final FileSystem fs;<a name="line.174"></a>
-<span class="sourceLineNo">175</span>  private final Path walDir;<a name="line.175"></a>
-<span class="sourceLineNo">176</span>  private final Path walArchiveDir;<a name="line.176"></a>
-<span class="sourceLineNo">177</span>  private final boolean enforceStreamCapability;<a name="line.177"></a>
-<span class="sourceLineNo">178</span><a name="line.178"></a>
-<span class="sourceLineNo">179</span>  private final AtomicReference&lt;Throwable&gt; syncException = new AtomicReference&lt;&gt;();<a name="line.179"></a>
-<span class="sourceLineNo">180</span>  private final AtomicBoolean loading = new AtomicBoolean(true);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>  private final AtomicBoolean inSync = new AtomicBoolean(false);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>  private final AtomicLong totalSynced = new AtomicLong(0);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>  private final AtomicLong lastRollTs = new AtomicLong(0);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>  private final AtomicLong syncId = new AtomicLong(0);<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>  private LinkedTransferQueue&lt;ByteSlot&gt; slotsCache = null;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>  private Set&lt;ProcedureWALFile&gt; corruptedLogs = null;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>  private FSDataOutputStream stream = null;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>  private int runningProcCount = 1;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  private long flushLogId = 0;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>  private int syncMaxSlot = 1;<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  private int slotIndex = 0;<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  private Thread syncThread;<a name="line.193"></a>
-<span class="sourceLineNo">194</span>  private ByteSlot[] slots;<a name="line.194"></a>
-<span class="sourceLineNo">195</span><a name="line.195"></a>
-<span class="sourceLineNo">196</span>  private int walCountWarnThreshold;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  private int maxRetriesBeforeRoll;<a name="line.197"></a>
-<span class="sourceLineNo">198</span>  private int maxSyncFailureRoll;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>  private int waitBeforeRoll;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>  private int rollRetries;<a name="line.200"></a>
-<span class="sourceLineNo">201</span>  private int periodicRollMsec;<a name="line.201"></a>
-<span class="sourceLineNo">202</span>  private long rollThreshold;<a name="line.202"></a>
-<span class="sourceLineNo">203</span>  private boolean useHsync;<a name="line.203"></a>
-<span class="sourceLineNo">204</span>  private int syncWaitMsec;<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>  // Variables used for UI display<a name="line.206"></a>
-<span class="sourceLineNo">207</span>  private CircularFifoQueue&lt;SyncMetrics&gt; syncMetricsQueue;<a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>  public static class SyncMetrics {<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    private long timestamp;<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    private long syncWaitMs;<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    private long totalSyncedBytes;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    private int syncedEntries;<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    private float syncedPerSec;<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>    public long getTimestamp() {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      return timestamp;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    }<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span>    public long getSyncWaitMs() {<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      return syncWaitMs;<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    }<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>    public long getTotalSyncedBytes() {<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      return totalSyncedBytes;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span><a name="line.227"></a>
-<span class="sourceLineNo">228</span>    public long getSyncedEntries() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return syncedEntries;<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>    public float getSyncedPerSec() {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return syncedPerSec;<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
-<span class="sourceLineNo">236</span><a name="line.236"></a>
-<span class="sourceLineNo">237</span>  public WALProcedureStore(Configuration conf, LeaseRecovery leaseRecovery) throws IOException {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    this(conf, new Path(CommonFSUtils.getWALRootDir(conf), MASTER_PROCEDURE_LOGDIR),<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      new Path(CommonFSUtils.getWALRootDir(conf), HConstants.HREGION_OLDLOGDIR_NAME),<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      leaseRecovery);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>  public WALProcedureStore(final Configuration conf, final Path walDir, final Path walArchiveDir,<a name="line.243"></a>
-<span class="sourceLineNo">244</span>      final LeaseRecovery leaseRecovery) throws IOException {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    this.conf = conf;<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    this.leaseRecovery = leaseRecovery;<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    this.walDir = walDir;<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    this.walArchiveDir = walArchiveDir;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    this.fs = CommonFSUtils.getWALFileSystem(conf);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    this.enforceStreamCapability = conf.getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE,<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        true);<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span>    // Create the log directory for the procedure store<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    if (!fs.exists(walDir)) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      if (!fs.mkdirs(walDir)) {<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        throw new IOException("Unable to mkdir " + walDir);<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      }<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    // Now that it exists, set the log policy<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    String storagePolicy =<a name="line.260"></a>
-<span class="sourceLineNo">261</span>        conf.get(HConstants.WAL_STORAGE_POLICY, HConstants.DEFAULT_WAL_STORAGE_POLICY);<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    CommonFSUtils.setStoragePolicy(fs, walDir, storagePolicy);<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>    // Create archive dir up front. Rename won't work w/o it up on HDFS.<a name="line.264"></a>
-<span class="sourceLineNo">265</span>    if (this.walArchiveDir != null &amp;&amp; !this.fs.exists(this.walArchiveDir)) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      if (this.fs.mkdirs(this.walArchiveDir)) {<a name="line.266"></a>
-<span class="sourceLineNo">267</span>        LOG.debug("Created Procedure Store WAL archive dir {}", this.walArchiveDir);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>      } else {<a name="line.268"></a>
-<span class="sourceLineNo">269</span>        LOG.warn("Failed create of {}", this.walArchiveDir);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>      }<a name="line.270"></a>
-<span class="sourceLineNo">271</span>    }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>  }<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>  @Override<a name="line.274"></a>
-<span class="sourceLineNo">275</span>  public void start(int numSlots) throws IOException {<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    if (!setRunning(true)) {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      return;<a name="line.277"></a>
-<span class="sourceLineNo">278</span>    }<a name="line.278"></a>
-<span class="sourceLineNo">279</span><a name="line.279"></a>
-<span class="sourceLineNo">280</span>    // Init buffer slots<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    loading.set(true);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    runningProcCount = numSlots;<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    syncMaxSlot = numSlots;<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    slots = new ByteSlot[numSlots];<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    slotsCache = new LinkedTransferQueue&lt;&gt;();<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    while (slotsCache.size() &lt; numSlots) {<a name="line.286"></a>
-<span class="sourceLineNo">287</span>      slotsCache.offer(new ByteSlot());<a name="line.287"></a>
-<span class="sourceLineNo">288</span>    }<a name="line.288"></a>
-<span class="sourceLineNo">289</span><a name="line.289"></a>
-<span class="sourceLineNo">290</span>    // Tunings<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    walCountWarnThreshold =<a name="line.291"></a>
-<span class="sourceLineNo">292</span>      conf.getInt(WAL_COUNT_WARN_THRESHOLD_CONF_KEY, DEFAULT_WAL_COUNT_WARN_THRESHOLD);<a name="line.292"></a>
-<span class="sourceLineNo">293</span>    maxRetriesBeforeRoll =<a name="line.293"></a>
-<span class="sourceLineNo">294</span>      conf.getInt(MAX_RETRIES_BEFORE_ROLL_CONF_KEY, DEFAULT_MAX_RETRIES_BEFORE_ROLL);<a name="line.294"></a>
-<span class="sourceLineNo">295</span>    maxSyncFailureRoll = conf.getInt(MAX_SYNC_FAILURE_ROLL_CONF_KEY, DEFAULT_MAX_SYNC_FAILURE_ROLL);<a name="line.295"></a>
-<span class="sourceLineNo">296</span>    waitBeforeRoll = conf.getInt(WAIT_BEFORE_ROLL_CONF_KEY, DEFAULT_WAIT_BEFORE_ROLL);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>    rollRetries = conf.getInt(ROLL_RETRIES_CONF_KEY, DEFAULT_ROLL_RETRIES);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    rollThreshold = conf.getLong(ROLL_THRESHOLD_CONF_KEY, DEFAULT_ROLL_THRESHOLD);<a name="line.298"></a>
-<span class="sourceLineNo">299</span>    periodicRollMsec = conf.getInt(PERIODIC_ROLL_CONF_KEY, DEFAULT_PERIODIC_ROLL);<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    syncWaitMsec = conf.getInt(SYNC_WAIT_MSEC_CONF_KEY, DEFAULT_SYNC_WAIT_MSEC);<a name="line.300"></a>
-<span class="sourceLineNo">301</span>    useHsync = conf.getBoolean(USE_HSYNC_CONF_KEY, DEFAULT_USE_HSYNC);<a name="line.301"></a>
-<span class="sourceLineNo">302</span><a name="line.302"></a>
-<span class="sourceLineNo">303</span>    // WebUI<a name="line.303"></a>
-<span class="sourceLineNo">304</span>    syncMetricsQueue = new CircularFifoQueue&lt;&gt;(<a name="line.304"></a>
-<span class="sourceLineNo">305</span>      conf.getInt(STORE_WAL_SYNC_STATS_COUNT, DEFAULT_SYNC_STATS_COUNT));<a name="line.305"></a>
-<span class="sourceLineNo">306</span><a name="line.306"></a>
-<span class="sourceLineNo">307</span>    // Init sync thread<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    syncThread = new Thread("WALProcedureStoreSyncThread") {<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      @Override<a name="line.309"></a>
-<span class="sourceLineNo">310</span>      public void run() {<a name="line.310"></a>
-<span class="sourceLineNo">311</span>        try {<a name="line.311"></a>
-<span class="sourceLineNo">312</span>          syncLoop();<a name="line.312"></a>
-<span class="sourceLineNo">313</span>        } catch (Throwable e) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>          LOG.error("Got an exception from the sync-loop", e);<a name="line.314"></a>
-<span class="sourceLineNo">315</span>          if (!isSyncAborted()) {<a name="line.315"></a>
-<span class="sourceLineNo">316</span>            sendAbortProcessSignal();<a name="line.316"></a>
-<span class="sourceLineNo">317</span>          }<a name="line.317"></a>
-<span class="sourceLineNo">318</span>        }<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      }<a name="line.319"></a>
-<span class="sourceLineNo">320</span>    };<a name="line.320"></a>
-<span class="sourceLineNo">321</span>    syncThread.start();<a name="line.321"></a>
-<span class="sourceLineNo">322</span>  }<a name="line.322"></a>
-<span class="sourceLineNo">323</span><a name="line.323"></a>
-<span class="sourceLineNo">324</span>  @Override<a name="line.324"></a>
-<span class="sourceLineNo">325</span>  public void stop(final boolean abort) {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    if (!setRunning(false)) {<a name="line.326"></a>
-<span class="sourceLineNo">327</span>      return;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>    }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>    LOG.info("Stopping the WAL Procedure Store, isAbort=" + abort +<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      (isSyncAborted() ? " (self aborting)" : ""));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>    sendStopSignal();<a name="line.332"></a>
-<span class="sourceLineNo">333</span>    if (!isSyncAborted()) {<a name="line.333"></a>
-<span class="sourceLineNo">334</span>      try {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>        while (syncThread.isAlive()) {<a name="line.335"></a>
-<span class="sourceLineNo">336</span>          sendStopSignal();<a name="line.336"></a>
-<span class="sourceLineNo">337</span>          syncThread.join(250);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>        }<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      } catch (InterruptedException e) {<a name="line.339"></a>
-<span class="sourceLineNo">340</span>        LOG.warn("join interrupted", e);<a name="line.340"></a>
-<span class="sourceLineNo">341</span>        Thread.currentThread().interrupt();<a name="line.341"></a>
-<span class="sourceLineNo">342</span>      }<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    }<a name="line.343"></a>
-<span class="sourceLineNo">344</span><a name="line.344"></a>
-<span class="sourceLineNo">345</span>    // Close the writer<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    closeCurrentLogStream(abort);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    // Close the old logs<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    // they should be already closed, this is just in case the load fails<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    // and we call start() and then stop()<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    for (ProcedureWALFile log: logs) {<a name="line.351"></a>
-<span class="sourceLineNo">352</span>      log.close();<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    }<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    logs.clear();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    loading.set(true);<a name="line.355"></a>
-<span class="sourceLineNo">356</span>  }<a name="line.356"></a>
-<span class="sourceLineNo">357</span><a name="line.357"></a>
-<span class="sourceLineNo">358</span>  private void sendStopSignal() {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    if (lock.tryLock()) {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>      try {<a name="line.360"></a>
-<span class="sourceLineNo">361</span>        waitCond.signalAll();<a name="line.361"></a>
-<span class="sourceLineNo">362</span>        syncCond.signalAll();<a name="line.362"></a>
-<span class="sourceLineNo">363</span>      } finally {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>        lock.unlock();<a name="line.364"></a>
-<span class="sourceLineNo">365</span>      }<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    }<a name="line.366"></a>
-<span class="sourceLineNo">367</span>  }<a name="line.367"></a>
-<span class="sourceLineNo">368</span><a name="line.368"></a>
-<span class="sourceLineNo">369</span>  @Override<a name="line.369"></a>
-<span class="sourceLineNo">370</span>  public int getNumThreads() {<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    return slots == null ? 0 : slots.length;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  }<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  @Override<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  public int setRunningProcedureCount(final int count) {<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    this.runningProcCount = count &gt; 0 ? Math.min(count, slots.length) : slots.length;<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    return this.runningProcCount;<a name="line.377"></a>
-<span class="sourceLineNo">378</span>  }<a name="line.378"></a>
-<span class="sourceLineNo">379</span><a name="line.379"></a>
-<span class="sourceLineNo">380</span>  public ProcedureStoreTracker getStoreTracker() {<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    return storeTracker;<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  }<a name="line.382"></a>
-<span class="sourceLineNo">383</span><a name="line.383"></a>
-<span class="sourceLineNo">384</span>  public ArrayList&lt;ProcedureWALFile&gt; getActiveLogs() {<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    lock.lock();<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    try {<a name="line.386"></a>
-<span class="sourceLineNo">387</span>      return new ArrayList&lt;&gt;(logs);<a name="line.387"></a>
-<span class="sourceLineNo">388</span>    } finally {<a name="line.388"></a>
-<span class="sourceLineNo">389</span>      lock.unlock();<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    }<a name="line.390"></a>
-<span class="sourceLineNo">391</span>  }<a name="line.391"></a>
-<span class="sourceLineNo">392</span><a name="line.392"></a>
-<span class="sourceLineNo">393</span>  public Set&lt;ProcedureWALFile&gt; getCorruptedLogs() {<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    return corruptedLogs;<a name="line.394"></a>
-<span class="sourceLineNo">395</span>  }<a name="line.395"></a>
-<span class="sourceLineNo">396</span><a name="line.396"></a>
-<span class="sourceLineNo">397</span>  @Override<a name="line.397"></a>
-<span class="sourceLineNo">398</span>  public void recoverLease() throws IOException {<a name="line.398"></a>
-<span class="sourceLineNo">399</span>    lock.lock();<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    try {<a name="line.400"></a>
-<span class="sourceLineNo">401</span>      LOG.debug("Starting WAL Procedure Store lease recovery");<a name="line.401"></a>
-<span class="sourceLineNo">402</span>      boolean afterFirstAttempt = false;<a name="line.402"></a>
-<span class="sourceLineNo">403</span>      while (isRunning()) {<a name="line.403"></a>
-<span class="sourceLineNo">404</span>        // Don't sleep before first attempt<a name="line.404"></a>
-<span class="sourceLineNo">405</span>        if (afterFirstAttempt) {<a name="line.405"></a>
-<span class="sourceLineNo">406</span>          LOG.trace("Sleep {} ms after first lease recovery attempt.",<a name="line.406"></a>
-<span class="sourceLineNo">407</span>              waitBeforeRoll);<a name="line.407"></a>
-<span class="sourceLineNo">408</span>          Threads.sleepWithoutInterrupt(waitBeforeRoll);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>        } else {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>          afterFirstAttempt = true;<a name="line.410"></a>
-<span class="sourceLineNo">411</span>        }<a name="line.411"></a>
-<span class="sourceLineNo">412</span>        FileStatus[] oldLogs = getLogFiles();<a name="line.412"></a>
-<span class="sourceLineNo">413</span>        // Get Log-MaxID and recover lease on old logs<a name="line.413"></a>
-<span class="sourceLineNo">414</span>        try {<a name="line.414"></a>
-<span class="sourceLineNo">415</span>          flushLogId = initOldLogs(oldLogs);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>        } catch (FileNotFoundException e) {<a name="line.416"></a>
-<span class="sourceLineNo">417</span>          LOG.warn("Someone else is active and deleted logs. retrying.", e);<a name="line.417"></a>
-<span class="sourceLineNo">418</span>          continue;<a name="line.418"></a>
-<span class="sourceLineNo">419</span>        }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>        // Create new state-log<a name="line.421"></a>
-<span class="sourceLineNo">422</span>        if (!rollWriter(flushLogId + 1)) {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>          // someone else has already created this log<a name="line.423"></a>
-<span class="sourceLineNo">424</span>          LOG.debug("Someone else has already created log {}. Retrying.", flushLogId);<a name="line.424"></a>
-<span class="sourceLineNo">425</span>          continue;<a name="line.425"></a>
-<span class="sourceLineNo">426</span>        }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>        // We have the lease on the log<a name="line.428"></a>
-<span class="sourceLineNo">429</span>        oldLogs = getLogFiles();<a name="line.429"></a>
-<span class="sourceLineNo">430</span>        if (getMaxLogId(oldLogs) &gt; flushLogId) {<a name="line.430"></a>
-<span class="sourceLineNo">431</span>          LOG.debug("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>          logs.getLast().removeFile(this.walArchiveDir);<a name="line.432"></a>
-<span class="sourceLineNo">433</span>          continue;<a name="line.433"></a>
-<span class="sourceLineNo">434</span>        }<a name="line.434"></a>
-<span class="sourceLineNo">435</span><a name="line.435"></a>
-<span class="sourceLineNo">436</span>        LOG.debug("Lease acquired for flushLogId={}", flushLogId);<a name="line.436"></a>
-<span class="sourceLineNo">437</span>        break;<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      }<a name="line.438"></a>
-<span class="sourceLineNo">439</span>    } finally {<a name="line.439"></a>
-<span class="sourceLineNo">440</span>      lock.unlock();<a name="line.440"></a>
-<span class="sourceLineNo">441</span>    }<a name="line.441"></a>
-<span class="sourceLineNo">442</span>  }<a name="line.442"></a>
-<span class="sourceLineNo">443</span><a name="line.443"></a>
-<span class="sourceLineNo">444</span>  @Override<a name="line.444"></a>
-<span class="sourceLineNo">445</span>  public void load(ProcedureLoader loader) throws IOException {<a name="line.445"></a>
-<span class="sourceLineNo">446</span>    lock.lock();<a name="line.446"></a>
-<span class="sourceLineNo">447</span>    try {<a name="line.447"></a>
-<span class="sourceLineNo">448</span>      if (logs.isEmpty()) {<a name="line.448"></a>
-<span class="sourceLineNo">449</span>        throw new IllegalStateException("recoverLease() must be called before loading data");<a name="line.449"></a>
-<span class="sourceLineNo">450</span>      }<a name="line.450"></a>
-<span class="sourceLineNo">451</span><a name="line.451"></a>
-<span class="sourceLineNo">452</span>      // Nothing to do, If we have only the current log.<a name="line.452"></a>
-<span class="sourceLineNo">453</span>      if (logs.size() == 1) {<a name="line.453"></a>
-<span class="sourceLineNo">454</span>        LOG.debug("No state logs to replay.");<a name="line.454"></a>
-<span class="sourceLineNo">455</span>        loader.setMaxProcId(0);<a name="line.455"></a>
-<span class="sourceLineNo">456</span>        loading.set(false);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>        return;<a name="line.457"></a>
-<span class="sourceLineNo">458</span>      }<a name="line.458"></a>
-<span class="sourceLineNo">459</span><a name="line.459"></a>
-<span class="sourceLineNo">460</span>      // Load the old logs<a name="line.460"></a>
-<span class="sourceLineNo">461</span>      Iterator&lt;ProcedureWALFile&gt; it = logs.descendingIterator();<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      it.next(); // Skip the current log<a name="line.462"></a>
-<span class="sourceLineNo">463</span><a name="line.463"></a>
-<span class="sourceLineNo">464</span>      ProcedureWALFormat.load(it, storeTracker, new ProcedureWALFormat.Loader() {<a name="line.464"></a>
+<span class="sourceLineNo">091</span> * TODO: try using disruptor to increase performance and simplify the logic?<a name="line.91"></a>
+<span class="sourceLineNo">092</span> * &lt;p/&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * The {@link #storeTracker} keeps track of the modified procedures in the newest wal file, which is<a name="line.93"></a>
+<span class="sourceLineNo">094</span> * also the one being written currently. And the deleted bits in it are for all the procedures, not<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * only the ones in the newest wal file. And when rolling a log, we will first store it in the<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * trailer of the current wal file, and then reset its modified bits, so that it can start to track<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * the modified procedures for the new wal file.<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p/&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * The {@link #holdingCleanupTracker} is used to test whether we are safe to delete the oldest wal<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * file. When there are log rolling and there are more than 1 wal files, we will make use of it. It<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * will first be initialized to the oldest file's tracker(which is stored in the trailer), using the<a name="line.101"></a>
+<span class="sourceLineNo">102</span> * method {@link ProcedureStoreTracker#resetTo(ProcedureStoreTracker, boolean)}, and then merge it<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * with the tracker of every newer wal files, using the<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * {@link ProcedureStoreTracker#setDeletedIfModifiedInBoth(ProcedureStoreTracker)}.<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * If we find out<a name="line.105"></a>
+<span class="sourceLineNo">106</span> * that all the modified procedures for the oldest wal file are modified or deleted in newer wal<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * files, then we can delete it. This is because that, every time we call<a name="line.107"></a>
+<span class="sourceLineNo">108</span> * {@link ProcedureStore#insert(Procedure[])} or {@link ProcedureStore#update(Procedure)}, we will<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * persist the full state of a Procedure, so the earlier wal records for this procedure can all be<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * deleted.<a name="line.110"></a>
+<span class="sourceLineNo">111</span> * @see ProcedureWALPrettyPrinter for printing content of a single WAL.<a name="line.111"></a>
+<span class="sourceLineNo">112</span> * @see #main(String[]) to parse a directory of MasterWALProcs.<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * @deprecated Since 2.3.0, will be removed in 4.0.0. Keep here only for rolling upgrading, now we<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *             use the new region based procedure store.<a name="line.114"></a>
+<span class="sourceLineNo">115</span> */<a name="line.115"></a>
+<span class="sourceLineNo">116</span>@Deprecated<a name="line.116"></a>
+<span class="sourceLineNo">117</span>@InterfaceAudience.Private<a name="line.117"></a>
+<span class="sourceLineNo">118</span>public class WALProcedureStore extends ProcedureStoreBase {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>  private static final Logger LOG = LoggerFactory.getLogger(WALProcedureStore.class);<a name="line.119"></a>
+<span class="sourceLineNo">120</span>  public static final String LOG_PREFIX = "pv2-";<a name="line.120"></a>
+<span class="sourceLineNo">121</span>  /** Used to construct the name of the log directory for master procedures */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>  public static final String MASTER_PROCEDURE_LOGDIR = "MasterProcWALs";<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>  public static final String WAL_COUNT_WARN_THRESHOLD_CONF_KEY =<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    "hbase.procedure.store.wal.warn.threshold";<a name="line.126"></a>
+<span class="sourceLineNo">127</span>  private static final int DEFAULT_WAL_COUNT_WARN_THRESHOLD = 10;<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>  public static final String EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY =<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    "hbase.procedure.store.wal.exec.cleanup.on.load";<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  private static final boolean DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY = true;<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  public static final String MAX_RETRIES_BEFORE_ROLL_CONF_KEY =<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    "hbase.procedure.store.wal.max.retries.before.roll";<a name="line.134"></a>
+<span class="sourceLineNo">135</span>  private static final int DEFAULT_MAX_RETRIES_BEFORE_ROLL = 3;<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public static final String WAIT_BEFORE_ROLL_CONF_KEY =<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    "hbase.procedure.store.wal.wait.before.roll";<a name="line.138"></a>
+<span class="sourceLineNo">139</span>  private static final int DEFAULT_WAIT_BEFORE_ROLL = 500;<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>  public static final String ROLL_RETRIES_CONF_KEY =<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    "hbase.procedure.store.wal.max.roll.retries";<a name="line.142"></a>
+<span class="sourceLineNo">143</span>  private static final int DEFAULT_ROLL_RETRIES = 3;<a name="line.143"></a>
+<span class="sourceLineNo">144</span><a name="line.144"></a>
+<span class="sourceLineNo">145</span>  public static final String MAX_SYNC_FAILURE_ROLL_CONF_KEY =<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    "hbase.procedure.store.wal.sync.failure.roll.max";<a name="line.146"></a>
+<span class="sourceLineNo">147</span>  private static final int DEFAULT_MAX_SYNC_FAILURE_ROLL = 3;<a name="line.147"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>  public static final String PERIODIC_ROLL_CONF_KEY =<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    "hbase.procedure.store.wal.periodic.roll.msec";<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  private static final int DEFAULT_PERIODIC_ROLL = 60 * 60 * 1000; // 1h<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>  public static final String SYNC_WAIT_MSEC_CONF_KEY = "hbase.procedure.store.wal.sync.wait.msec";<a name="line.153"></a>
+<span class="sourceLineNo">154</span>  private static final int DEFAULT_SYNC_WAIT_MSEC = 100;<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>  public static final String USE_HSYNC_CONF_KEY = "hbase.procedure.store.wal.use.hsync";<a name="line.156"></a>
+<span class="sourceLineNo">157</span>  private static final boolean DEFAULT_USE_HSYNC = true;<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>  public static final String ROLL_THRESHOLD_CONF_KEY = "hbase.procedure.store.wal.roll.threshold";<a name="line.159"></a>
+<span class="sourceLineNo">160</span>  private static final long DEFAULT_ROLL_THRESHOLD = 32 * 1024 * 1024; // 32M<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>  public static final String STORE_WAL_SYNC_STATS_COUNT =<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      "hbase.procedure.store.wal.sync.stats.count";<a name="line.163"></a>
+<span class="sourceLineNo">164</span>  private static final int DEFAULT_SYNC_STATS_COUNT = 10;<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>  private final LinkedList&lt;ProcedureWALFile&gt; logs = new LinkedList&lt;&gt;();<a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private final ProcedureStoreTracker holdingCleanupTracker = new ProcedureStoreTracker();<a name="line.167"></a>
+<span class="sourceLineNo">168</span>  private final ProcedureStoreTracker storeTracker = new ProcedureStoreTracker();<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  private final ReentrantLock lock = new ReentrantLock();<a name="line.169"></a>
+<span class="sourceLineNo">170</span>  private final Condition waitCond = lock.newCondition();<a name="line.170"></a>
+<span class="sourceLineNo">171</span>  private final Condition slotCond = lock.newCondition();<a name="line.171"></a>
+<span class="sourceLineNo">172</span>  private final Condition syncCond = lock.newCondition();<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>  private final LeaseRecovery leaseRecovery;<a name="line.174"></a>
+<span class="sourceLineNo">175</span>  private final Configuration conf;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  private final FileSystem fs;<a name="line.176"></a>
+<span class="sourceLineNo">177</span>  private final Path walDir;<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  private final Path walArchiveDir;<a name="line.178"></a>
+<span class="sourceLineNo">179</span>  private final boolean enforceStreamCapability;<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>  private final AtomicReference&lt;Throwable&gt; syncException = new AtomicReference&lt;&gt;();<a name="line.181"></a>
+<span class="sourceLineNo">182</span>  private final AtomicBoolean loading = new AtomicBoolean(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>  private final AtomicBoolean inSync = new AtomicBoolean(false);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>  private final AtomicLong totalSynced = new AtomicLong(0);<a name="line.184"></a>
+<span class="sourceLineNo">185</span>  private final AtomicLong lastRollTs = new AtomicLong(0);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>  private final AtomicLong syncId = new AtomicLong(0);<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>  private LinkedTransferQueue&lt;ByteSlot&gt; slotsCache = null;<a name="line.188"></a>
+<span class="sourceLineNo">189</span>  private Set&lt;ProcedureWALFile&gt; corruptedLogs = null;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>  private FSDataOutputStream stream = null;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>  private int runningProcCount = 1;<a name="line.191"></a>
+<span class="sourceLineNo">192</span>  private long flushLogId = 0;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>  private int syncMaxSlot = 1;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>  private int slotIndex = 0;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>  private Thread syncThread;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  private ByteSlot[] slots;<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  private int walCountWarnThreshold;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  private int maxRetriesBeforeRoll;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>  private int maxSyncFailureRoll;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>  private int waitBeforeRoll;<a name="line.201"></a>
+<span class="sourceLineNo">202</span>  private int rollRetries;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>  private int periodicRollMsec;<a name="line.203"></a>
+<span class="sourceLineNo">204</span>  private long rollThreshold;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>  private boolean useHsync;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>  private int syncWaitMsec;<a name="line.206"></a>
+<span class="sourceLineNo">207</span><a name="line.207"></a>
+<span class="sourceLineNo">208</span>  // Variables used for UI display<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  private CircularFifoQueue&lt;SyncMetrics&gt; syncMetricsQueue;<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  public static class SyncMetrics {<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    private long timestamp;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    private long syncWaitMs;<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    private long totalSyncedBytes;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    private int syncedEntries;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    private float syncedPerSec;<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>    public long getTimestamp() {<a name="line.218"></a>
+<span class="sourceLineNo">219</span>      return timestamp;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    }<a name="line.220"></a>
+<span class="sourceLineNo">221</span><a name="line.221"></a>
+<span class="sourceLineNo">222</span>    public long getSyncWaitMs() {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      return syncWaitMs;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>    public long getTotalSyncedBytes() {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>      return totalSyncedBytes;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    }<a name="line.228"></a>
+<span class="sourceLineNo">229</span><a name="line.229"></a>
+<span class="sourceLineNo">230</span>    public long getSyncedEntries() {<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      return syncedEntries;<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span><a name="line.233"></a>
+<span class="sourceLineNo">234</span>    public float getSyncedPerSec() {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>      return syncedPerSec;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
+<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public WALProcedureStore(Configuration conf, LeaseRecovery leaseRecovery) throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    this(conf, new Path(CommonFSUtils.getWALRootDir(conf), MASTER_PROCEDURE_LOGDIR),<a name="line.240"></a>
+<span class="sourceLineNo">241</span>      new Path(CommonFSUtils.getWALRootDir(conf), HConstants.HREGION_OLDLOGDIR_NAME),<a name="line.241"></a>
+<span class="sourceLineNo">242</span>      leaseRecovery);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>  }<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>  public WALProcedureStore(final Configuration conf, final Path walDir, final Path walArchiveDir,<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      final LeaseRecovery leaseRecovery) throws IOException {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    this.conf = conf;<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    this.leaseRecovery = leaseRecovery;<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    this.walDir = walDir;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    this.walArchiveDir = walArchiveDir;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    this.fs = CommonFSUtils.getWALFileSystem(conf);<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    this.enforceStreamCapability = conf.getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE,<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        true);<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>    // Create the log directory for the procedure store<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    if (!fs.exists(walDir)) {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      if (!fs.mkdirs(walDir)) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        throw new IOException("Unable to mkdir " + walDir);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    }<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    // Now that it exists, set the log policy<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    String storagePolicy =<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        conf.get(HConstants.WAL_STORAGE_POLICY, HConstants.DEFAULT_WAL_STORAGE_POLICY);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    CommonFSUtils.setStoragePolicy(fs, walDir, storagePolicy);<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>    // Create archive dir up front. Rename won't work w/o it up on HDFS.<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    if (this.walArchiveDir != null &amp;&amp; !this.fs.exists(this.walArchiveDir)) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      if (this.fs.mkdirs(this.walArchiveDir)) {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>        LOG.debug("Created Procedure Store WAL archive dir {}", this.walArchiveDir);<a name="line.269"></a>
+<span class="sourceLineNo">270</span>      } else {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>        LOG.warn("Failed create of {}", this.walArchiveDir);<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    }<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public void start(int numSlots) throws IOException {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    if (!setRunning(true)) {<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      return;<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    }<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>    // Init buffer slots<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    loading.set(true);<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    runningProcCount = numSlots;<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    syncMaxSlot = numSlots;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    slots = new ByteSlot[numSlots];<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    slotsCache = new LinkedTransferQueue&lt;&gt;();<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    while (slotsCache.size() &lt; numSlots) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      slotsCache.offer(new ByteSlot());<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    }<a name="line.290"></a>
+<span class="sourceLineNo">291</span><a name="line.291"></a>
+<span class="sourceLineNo">292</span>    // Tunings<a name="line.292"></a>
+<span class="sourceLineNo">293</span>    walCountWarnThreshold =<a name="line.293"></a>
+<span class="sourceLineNo">294</span>      conf.getInt(WAL_COUNT_WARN_THRESHOLD_CONF_KEY, DEFAULT_WAL_COUNT_WARN_THRESHOLD);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    maxRetriesBeforeRoll =<a name="line.295"></a>
+<span class="sourceLineNo">296</span>      conf.getInt(MAX_RETRIES_BEFORE_ROLL_CONF_KEY, DEFAULT_MAX_RETRIES_BEFORE_ROLL);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    maxSyncFailureRoll = conf.getInt(MAX_SYNC_FAILURE_ROLL_CONF_KEY, DEFAULT_MAX_SYNC_FAILURE_ROLL);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    waitBeforeRoll = conf.getInt(WAIT_BEFORE_ROLL_CONF_KEY, DEFAULT_WAIT_BEFORE_ROLL);<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    rollRetries = conf.getInt(ROLL_RETRIES_CONF_KEY, DEFAULT_ROLL_RETRIES);<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    rollThreshold = conf.getLong(ROLL_THRESHOLD_CONF_KEY, DEFAULT_ROLL_THRESHOLD);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    periodicRollMsec = conf.getInt(PERIODIC_ROLL_CONF_KEY, DEFAULT_PERIODIC_ROLL);<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    syncWaitMsec = conf.getInt(SYNC_WAIT_MSEC_CONF_KEY, DEFAULT_SYNC_WAIT_MSEC);<a name="line.302"></a>
+<span class="sourceLineNo">303</span>    useHsync = conf.getBoolean(USE_HSYNC_CONF_KEY, DEFAULT_USE_HSYNC);<a name="line.303"></a>
+<span class="sourceLineNo">304</span><a name="line.304"></a>
+<span class="sourceLineNo">305</span>    // WebUI<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    syncMetricsQueue = new CircularFifoQueue&lt;&gt;(<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      conf.getInt(STORE_WAL_SYNC_STATS_COUNT, DEFAULT_SYNC_STATS_COUNT));<a name="line.307"></a>
+<span class="sourceLineNo">308</span><a name="line.308"></a>
+<span class="sourceLineNo">309</span>    // Init sync thread<a name="line.309"></a>
+<span class="sourceLineNo">310</span>    syncThread = new Thread("WALProcedureStoreSyncThread") {<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      @Override<a name="line.311"></a>
+<span class="sourceLineNo">312</span>      public void run() {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>        try {<a name="line.313"></a>
+<span class="sourceLineNo">314</span>          syncLoop();<a name="line.314"></a>
+<span class="sourceLineNo">315</span>        } catch (Throwable e) {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>          LOG.error("Got an exception from the sync-loop", e);<a name="line.316"></a>
+<span class="sourceLineNo">317</span>          if (!isSyncAborted()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>            sendAbortProcessSignal();<a name="line.318"></a>
+<span class="sourceLineNo">319</span>          }<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        }<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    };<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    syncThread.start();<a name="line.323"></a>
+<span class="sourceLineNo">324</span>  }<a name="line.324"></a>
+<span class="sourceLineNo">325</span><a name="line.325"></a>
+<span class="sourceLineNo">326</span>  @Override<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  public void stop(final boolean abort) {<a name="line.327"></a>
+<span class="sourceLineNo">328</span>    if (!setRunning(false)) {<a name="line.328"></a>
+<span class="sourceLineNo">329</span>      return;<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    }<a name="line.330"></a>
+<span class="sourceLineNo">331</span><a name="line.331"></a>
+<span class="sourceLineNo">332</span>    LOG.info("Stopping the WAL Procedure Store, isAbort=" + abort +<a name="line.332"></a>
+<span class="sourceLineNo">333</span>      (isSyncAborted() ? " (self aborting)" : ""));<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    sendStopSignal();<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    if (!isSyncAborted()) {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>      try {<a name="line.336"></a>
+<span class="sourceLineNo">337</span>        while (syncThread.isAlive()) {<a name="line.337"></a>
+<span class="sourceLineNo">338</span>          sendStopSignal();<a name="line.338"></a>
+<span class="sourceLineNo">339</span>          syncThread.join(250);<a name="line.339"></a>
+<span class="sourceLineNo">340</span>        }<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      } catch (InterruptedException e) {<a name="line.341"></a>
+<span class="sourceLineNo">342</span>        LOG.warn("join interrupted", e);<a name="line.342"></a>
+<span class="sourceLineNo">343</span>        Thread.currentThread().interrupt();<a name="line.343"></a>
+<span class="sourceLineNo">344</span>      }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    // Close the writer<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    closeCurrentLogStream(abort);<a name="line.348"></a>
+<span class="sourceLineNo">349</span><a name="line.349"></a>
+<span class="sourceLineNo">350</span>    // Close the old logs<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    // they should be already closed, this is just in case the load fails<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // and we call start() and then stop()<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    for (ProcedureWALFile log: logs) {<a name="line.353"></a>
+<span class="sourceLineNo">354</span>      log.close();<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    }<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    logs.clear();<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    loading.set(true);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>  private void sendStopSignal() {<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    if (lock.tryLock()) {<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      try {<a name="line.362"></a>
+<span class="sourceLineNo">363</span>        waitCond.signalAll();<a name="line.363"></a>
+<span class="sourceLineNo">364</span>        syncCond.signalAll();<a name="line.364"></a>
+<span class="sourceLineNo">365</span>      } finally {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>        lock.unlock();<a name="line.366"></a>
+<span class="sourceLineNo">367</span>      }<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    }<a name="line.368"></a>
+<span class="sourceLineNo">369</span>  }<a name="line.369"></a>
+<span class="sourceLineNo">370</span><a name="line.370"></a>
+<span class="sourceLineNo">371</span>  @Override<a name="line.371"></a>
+<span class="sourceLineNo">372</span>  public int getNumThreads() {<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    return slots == null ? 0 : slots.length;<a name="line.373"></a>
+<span class="sourceLineNo">374</span>  }<a name="line.374"></a>
+<span class="sourceLineNo">375</span><a name="line.375"></a>
+<span class="sourceLineNo">376</span>  @Override<a name="line.376"></a>
+<span class="sourceLineNo">377</span>  public int setRunningProcedureCount(final int count) {<a name="line.377"></a>
+<span class="sourceLineNo">378</span>    this.runningProcCount = count &gt; 0 ? Math.min(count, slots.length) : slots.length;<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    return this.runningProcCount;<a name="line.379"></a>
+<span class="sourceLineNo">380</span>  }<a name="line.380"></a>
+<span class="sourceLineNo">381</span><a name="line.381"></a>
+<span class="sourceLineNo">382</span>  public ProcedureStoreTracker getStoreTracker() {<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    return storeTracker;<a name="line.383"></a>
+<span class="sourceLineNo">384</span>  }<a name="line.384"></a>
+<span class="sourceLineNo">385</span><a name="line.385"></a>
+<span class="sourceLineNo">386</span>  public ArrayList&lt;ProcedureWALFile&gt; getActiveLogs() {<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    lock.lock();<a name="line.387"></a>
+<span class="sourceLineNo">388</span>    try {<a name="line.388"></a>
+<span class="sourceLineNo">389</span>      return new ArrayList&lt;&gt;(logs);<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    } finally {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>      lock.unlock();<a name="line.391"></a>
+<span class="sourceLineNo">392</span>    }<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  public Set&lt;ProcedureWALFile&gt; getCorruptedLogs() {<a name="line.395"></a>
+<span class="sourceLineNo">396</span>    return corruptedLogs;<a name="line.396"></a>
+<span class="sourceLineNo">397</span>  }<a name="line.397"></a>
+<span class="sourceLineNo">398</span><a name="line.398"></a>
+<span class="sourceLineNo">399</span>  @Override<a name="line.399"></a>
+<span class="sourceLineNo">400</span>  public void recoverLease() throws IOException {<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    lock.lock();<a name="line.401"></a>
+<span class="sourceLineNo">402</span>    try {<a name="line.402"></a>
+<span class="sourceLineNo">403</span>      LOG.debug("Starting WAL Procedure Store lease recovery");<a name="line.403"></a>
+<span class="sourceLineNo">404</span>      boolean afterFirstAttempt = false;<a name="line.404"></a>
+<span class="sourceLineNo">405</span>      while (isRunning()) {<a name="line.405"></a>
+<span class="sourceLineNo">406</span>        // Don't sleep before first attempt<a name="line.406"></a>
+<span class="sourceLineNo">407</span>        if (afterFirstAttempt) {<a name="line.407"></a>
+<span class="sourceLineNo">408</span>          LOG.trace("Sleep {} ms after first lease recovery attempt.",<a name="line.408"></a>
+<span class="sourceLineNo">409</span>              waitBeforeRoll);<a name="line.409"></a>
+<span class="sourceLineNo">410</span>          Threads.sleepWithoutInterrupt(waitBeforeRoll);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>        } else {<a name="line.411"></a>
+<span class="sourceLineNo">412</span>          afterFirstAttempt = true;<a name="line.412"></a>
+<span class="sourceLineNo">413</span>        }<a name="line.413"></a>
+<span class="sourceLineNo">414</span>        FileStatus[] oldLogs = getLogFiles();<a name="line.414"></a>
+<span class="sourceLineNo">415</span>        // Get Log-MaxID and recover lease on old logs<a name="line.415"></a>
+<span class="sourceLineNo">416</span>        try {<a name="line.416"></a>
+<span class="sourceLineNo">417</span>          flushLogId = initOldLogs(oldLogs);<a name="line.417"></a>
+<span class="sourceLineNo">418</span>        } catch (FileNotFoundException e) {<a name="line.418"></a>
+<span class="sourceLineNo">419</span>          LOG.warn("Someone else is active and deleted logs. retrying.", e);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>          continue;<a name="line.420"></a>
+<span class="sourceLineNo">421</span>        }<a name="line.421"></a>
+<span class="sourceLineNo">422</span><a name="line.422"></a>
+<span class="sourceLineNo">423</span>        // Create new state-log<a name="line.423"></a>
+<span class="sourceLineNo">424</span>        if (!rollWriter(flushLogId + 1)) {<a name="line.424"></a>
+<span class="sourceLineNo">425</span>          // someone else has already created this log<a name="line.425"></a>
+<span class="sourceLineNo">426</span>          LOG.debug("Someone else has already created log {}. Retrying.", flushLogId);<a name="line.426"></a>
+<span class="sourceLineNo">427</span>          continue;<a name="line.427"></a>
+<span class="sourceLineNo">428</span>        }<a name="line.428"></a>
+<span class="sourceLineNo">429</span><a name="line.429"></a>
+<span class="sourceLineNo">430</span>        // We have the lease on the log<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        oldLogs = getLogFiles();<a name="line.431"></a>
+<span class="sourceLineNo">432</span>        if (getMaxLogId(oldLogs) &gt; flushLogId) {<a name="line.432"></a>
+<span class="sourceLineNo">433</span>          LOG.debug("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>          logs.getLast().removeFile(this.walArchiveDir);<a name="line.434"></a>
+<span class="sourceLineNo">435</span>          continue;<a name="line.435"></a>
+<span class="sourceLineNo">436</span>        }<a name="line.436"></a>
+<span class="sourceLineNo">437</span><a name="line.437"></a>
+<span class="sourceLineNo">438</span>        LOG.debug("Lease acquired for flushLogId={}", flushLogId);<a name="line.438"></a>
+<span class="sourceLineNo">439</span>        break;<a name="line.439"></a>
+<span class="sourceLineNo">440</span>      }<a name="line.440"></a>
+<span class="sourceLineNo">441</span>    } finally {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>      lock.unlock();<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    }<a name="line.443"></a>
+<span class="sourceLineNo">444</span>  }<a name="line.444"></a>
+<span class="sourceLineNo">445</span><a name="line.445"></a>
+<span class="sourceLineNo">446</span>  @Override<a name="line.446"></a>
+<span class="sourceLineNo">447</span>  public void load(ProcedureLoader loader) throws IOException {<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    lock.lock();<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    try {<a name="line.449"></a>
+<span class="sourceLineNo">450</span>      if (logs.isEmpty()) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>        throw new IllegalStateException("recoverLease() must be called before loading data");<a name="line.451"></a>
+<span class="sourceLineNo">452</span>      }<a name="line.452"></a>
+<span class="sourceLineNo">453</span><a name="line.453"></a>
+<span class="sourceLineNo">454</span>      // Nothing to do, If we have only the current log.<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      if (logs.size() == 1) {<a name="line.455"></a>
+<span class="sourceLineNo">456</span>        LOG.debug("No state logs to replay.");<a name="line.456"></a>
+<span class="sourceLineNo">457</span>        loader.setMaxProcId(0);<a name="line.457"></a>
+<span class="sourceLineNo">458</span>        loading.set(false);<a name="line.458"></a>
+<span class="sourceLineNo">459</span>        return;<a name="line.459"></a>
+<span class="sourceLineNo">460</span>      }<a name="line.460"></a>
+<span class="sourceLineNo">461</span><a name="line.461"></a>
+<span class="sourceLineNo">462</span>      // Load the old logs<a name="line.462"></a>
+<span class="sourceLineNo">463</span>      Iterator&lt;ProcedureWALFile&gt; it = logs.descendingIterator();<a name="line.463"></a>
+<span class="sourceLineNo">464</span>      it.next(); // Skip the current log<a name="line.464"></a>
 <span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>        @Override<a name="line.466"></a>
-<span class="sourceLineNo">467</span>        public void setMaxProcId(long maxProcId) {<a name="line.467"></a>
-<span class="sourceLineNo">468</span>          loader.setMaxProcId(maxProcId);<a name="line.468"></a>
-<span class="sourceLineNo">469</span>        }<a name="line.469"></a>
-<span class="sourceLineNo">470</span><a name="line.470"></a>
-<span class="sourceLineNo">471</span>        @Override<a name="line.471"></a>
-<span class="sourceLineNo">472</span>        public void load(ProcedureIterator procIter) throws IOException {<a name="line.472"></a>
-<span class="sourceLineNo">473</span>          loader.load(procIter);<a name="line.473"></a>
-<span class="sourceLineNo">474</span>        }<a name="line.474"></a>
-<span class="sourceLineNo">475</span><a name="line.475"></a>
-<span class="sourceLineNo">476</span>        @Override<a name="line.476"></a>
-<span class="sourceLineNo">477</span>        public void handleCorrupted(ProcedureIterator procIter) throws IOException {<a name="line.477"></a>
-<span class="sourceLineNo">478</span>          loader.handleCorrupted(procIter);<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        }<a name="line.479"></a>
-<span class="sourceLineNo">480</span><a name="line.480"></a>
-<span class="sourceLineNo">481</span>        @Override<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        public void markCorruptedWAL(ProcedureWALFile log, IOException e) {<a name="line.482"></a>
-<span class="sourceLineNo">483</span>          if (corruptedLogs == null) {<a name="line.483"></a>
-<span class="sourceLineNo">484</span>            corruptedLogs = new HashSet&lt;&gt;();<a name="line.484"></a>
-<span class="sourceLineNo">485</span>          }<a name="line.485"></a>
-<span class="sourceLineNo">486</span>          corruptedLogs.add(log);<a name="line.486"></a>
-<span class="sourceLineNo">487</span>          // TODO: sideline corrupted log<a name="line.487"></a>
-<span class="sourceLineNo">488</span>        }<a name="line.488"></a>
-<span class="sourceLineNo">489</span>      });<a name="line.489"></a>
-<span class="sourceLineNo">490</span>      // if we fail when loading, we should prevent persisting the storeTracker later in the stop<a name="line.490"></a>
-<span class="sourceLineNo">491</span>      // method. As it may happen that, we have finished constructing the modified and deleted bits,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>      // but before we call resetModified, we fail, then if we persist the storeTracker then when<a name="line.492"></a>
-<span class="sourceLineNo">493</span>      // restarting, we will consider that all procedures have been included in this file and delete<a name="line.493"></a>
-<span class="sourceLineNo">494</span>      // all the previous files. Obviously this not correct. So here we will only set loading to<a name="line.494"></a>
-<span class="sourceLineNo">495</span>      // false when we successfully loaded all the procedures, and when closing we will skip<a name="line.495"></a>
-<span class="sourceLineNo">496</span>      // persisting the store tracker. And also, this will prevent the sync thread to do<a name="line.496"></a>
-<span class="sourceLineNo">497</span>      // periodicRoll, where we may also clean old logs.<a name="line.497"></a>
-<span class="sourceLineNo">498</span>      loading.set(false);<a name="line.498"></a>
-<span class="sourceLineNo">499</span>      // try to cleanup inactive wals and complete the operation<a name="line.499"></a>
-<span class="sourceLineNo">500</span>      buildHoldingCleanupTracker();<a name="line.500"></a>
-<span class="sourceLineNo">501</span>      tryCleanupLogsOnLoad();<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    } finally {<a name="line.502"></a>
-<span class="sourceLineNo">503</span>      lock.unlock();<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    }<a name="line.504"></a>
-<span class="sourceLineNo">505</span>  }<a name="line.505"></a>
-<span class="sourceLineNo">506</span><a name="line.506"></a>
-<span class="sourceLineNo">507</span>  private void tryCleanupLogsOnLoad() {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>    // nothing to cleanup.<a name="line.508"></a>
-<span class="sourceLineNo">509</span>    if (logs.size() &lt;= 1) {<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      return;<a name="line.510"></a>
-<span class="sourceLineNo">511</span>    }<a name="line.511"></a>
-<span class="sourceLineNo">512</span><a name="line.512"></a>
-<span class="sourceLineNo">513</span>    // the config says to not cleanup wals on load.<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    if (!conf.getBoolean(EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY,<a name="line.514"></a>
-<span class="sourceLineNo">515</span>      DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY)) {<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      LOG.debug("WALs cleanup on load is not enabled: " + getActiveLogs());<a name="line.516"></a>
-<span class="sourceLineNo">517</span>      return;<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    }<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    try {<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      periodicRoll();<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } catch (IOException e) {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      LOG.warn("Unable to cleanup logs on load: " + e.getMessage(), e);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  @Override<a name="line.527"></a>
-<span class="sourceLineNo">528</span>  public void insert(Procedure&lt;?&gt; proc, Procedure&lt;?&gt;[] subprocs) {<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    if (LOG.isTraceEnabled()) {<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      LOG.trace("Insert " + proc + ", subproc=" + Arrays.toString(subprocs));<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    }<a name="line.531"></a>
-<span class="sourceLineNo">532</span><a name="line.532"></a>
-<span class="sourceLineNo">533</span>    ByteSlot slot = acquireSlot();<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    try {<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      // Serialize the insert<a name="line.535"></a>
-<span class="sourceLineNo">536</span>      long[] subProcIds = null;<a name="line.536"></a>
-<span class="sourceLineNo">537</span>      if (subprocs != null) {<a name="line.537"></a>
-<span class="sourceLineNo">538</span>        ProcedureWALFormat.writeInsert(slot, proc, subprocs);<a name="line.538"></a>
-<span class="sourceLineNo">539</span>        subProcIds = new long[subprocs.length];<a name="line.539"></a>
-<span class="sourceLineNo">540</span>        for (int i = 0; i &lt; subprocs.length; ++i) {<a name="line.540"></a>
-<span class="sourceLineNo">541</span>          subProcIds[i] = subprocs[i].getProcId();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>        }<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      } else {<a name="line.543"></a>
-<span class="sourceLineNo">544</span>        assert !proc.hasParent();<a name="line.544"></a>
-<span class="sourceLineNo">545</span>        ProcedureWALFormat.writeInsert(slot, proc);<a name="line.545"></a>
-<span class="sourceLineNo">546</span>      }<a name="line.546"></a>
-<span class="sourceLineNo">547</span><a name="line.547"></a>
-<span class="sourceLineNo">548</span>      // Push the transaction data and wait until it is persisted<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      pushData(PushType.INSERT, slot, proc.getProcId(), subProcIds);<a name="line.549"></a>
-<span class="sourceLineNo">550</span>    } catch (IOException e) {<a name="line.550"></a>
-<span class="sourceLineNo">551</span>      // We are not able to serialize the procedure.<a name="line.551"></a>
-<span class="sourceLineNo">552</span>      // this is a code error, and we are not able to go on.<a name="line.552"></a>
-<span class="sourceLineNo">553</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: proc=" +<a name="line.553"></a>
-<span class="sourceLineNo">554</span>          proc + ", subprocs=" + Arrays.toString(subprocs), e);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>      throw new RuntimeException(e);<a name="line.555"></a>
-<span class="sourceLineNo">556</span>    } finally {<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      releaseSlot(slot);<a name="line.557"></a>
-<span class="sourceLineNo">558</span>    }<a name="line.558"></a>
-<span class="sourceLineNo">559</span>  }<a name="line.559"></a>
-<span class="sourceLineNo">560</span><a name="line.560"></a>
-<span class="sourceLineNo">561</span>  @Override<a name="line.561"></a>
-<span class="sourceLineNo">562</span>  public void insert(Procedure&lt;?&gt;[] procs) {<a name="line.562"></a>
-<span class="sourceLineNo">563</span>    if (LOG.isTraceEnabled()) {<a name="line.563"></a>
-<span class="sourceLineNo">564</span>      LOG.trace("Insert " + Arrays.toString(procs));<a name="line.564"></a>
-<span class="sourceLineNo">565</span>    }<a name="line.565"></a>
-<span class="sourceLineNo">566</span><a name="line.566"></a>
-<span class="sourceLineNo">567</span>    ByteSlot slot = acquireSlot();<a name="line.567"></a>
-<span class="sourceLineNo">568</span>    try {<a name="line.568"></a>
-<span class="sourceLineNo">569</span>      // Serialize the insert<a name="line.569"></a>
-<span class="sourceLineNo">570</span>      long[] procIds = new long[procs.length];<a name="line.570"></a>
-<span class="sourceLineNo">571</span>      for (int i = 0; i &lt; procs.length; ++i) {<a name="line.571"></a>
-<span class="sourceLineNo">572</span>        assert !procs[i].hasParent();<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        procIds[i] = procs[i].getProcId();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        ProcedureWALFormat.writeInsert(slot, procs[i]);<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      // Push the transaction data and wait until it is persisted<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      pushData(PushType.INSERT, slot, Procedure.NO_PROC_ID, procIds);<a name="line.578"></a>
-<span class="sourceLineNo">579</span>    } catch (IOException e) {<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      // We are not able to serialize the procedure.<a name="line.580"></a>
-<span class="sourceLineNo">581</span>      // this is a code error, and we are not able to go on.<a name="line.581"></a>
-<span class="sourceLineNo">582</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: " +<a name="line.582"></a>
-<span class="sourceLineNo">583</span>          Arrays.toString(procs), e);<a name="line.583"></a>
-<span class="sourceLineNo">584</span>      throw new RuntimeException(e);<a name="line.584"></a>
-<span class="sourceLineNo">585</span>    } finally {<a name="line.585"></a>
-<span class="sourceLineNo">586</span>      releaseSlot(slot);<a name="line.586"></a>
-<span class="sourceLineNo">587</span>    }<a name="line.587"></a>
-<span class="sourceLineNo">588</span>  }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>  @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>  public void update(Procedure&lt;?&gt; proc) {<a name="line.591"></a>
-<span class="sourceLineNo">592</span>    if (LOG.isTraceEnabled()) {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>      LOG.trace("Update " + proc);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>    }<a name="line.594"></a>
-<span class="sourceLineNo">595</span><a name="line.595"></a>
-<span class="sourceLineNo">596</span>    ByteSlot slot = acquireSlot();<a name="line.596"></a>
-<span class="sourceLineNo">597</span>    try {<a name="line.597"></a>
-<span class="sourceLineNo">598</span>      // Serialize the update<a name="line.598"></a>
-<span class="sourceLineNo">599</span>      ProcedureWALFormat.writeUpdate(slot, proc);<a name="line.599"></a>
-<span class="sourceLineNo">600</span><a name="line.600"></a>
-<span class="sourceLineNo">601</span>      // Push the transaction data and wait until it is persisted<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      pushData(PushType.UPDATE, slot, proc.getProcId(), null);<a name="line.602"></a>
-<span class="sourceLineNo">603</span>    } catch (IOException e) {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>      // We are not able to serialize the procedure.<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      // this is a code error, and we are not able to go on.<a name="line.605"></a>
-<span class="sourceLineNo">606</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      throw new RuntimeException(e);<a name="line.607"></a>
-<span class="sourceLineNo">608</span>    } finally {<a name="line.608"></a>
-<span class="sourceLineNo">609</span>      releaseSlot(slot);<a name="line.609"></a>
-<span class="sourceLineNo">610</span>    }<a name="line.610"></a>
-<span class="sourceLineNo">611</span>  }<a name="line.611"></a>
-<span class="sourceLineNo">612</span><a name="line.612"></a>
-<span class="sourceLineNo">613</span>  @Override<a name="line.613"></a>
-<span class="sourceLineNo">614</span>  public void delete(long procId) {<a name="line.614"></a>
-<span class="sourceLineNo">615</span>    LOG.trace("Delete {}", procId);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    ByteSlot slot = acquireSlot();<a name="line.616"></a>
-<span class="sourceLineNo">617</span>    try {<a name="line.617"></a>
-<span class="sourceLineNo">618</span>      // Serialize the delete<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      ProcedureWALFormat.writeDelete(slot, procId);<a name="line.619"></a>
-<span class="sourceLineNo">620</span><a name="line.620"></a>
-<span class="sourceLineNo">621</span>      // Push the transaction data and wait until it is persisted<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      pushData(PushType.DELETE, slot, procId, null);<a name="line.622"></a>
-<span class="sourceLineNo">623</span>    } catch (IOException e) {<a name="line.623"></a>
-<span class="sourceLineNo">624</span>      // We are not able to serialize the procedure.<a name="line.624"></a>
-<span class="sourceLineNo">625</span>      // this is a code error, and we are not able to go on.<a name="line.625"></a>
-<span class="sourceLineNo">626</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + procId, e);<a name="line.626"></a>
-<span class="sourceLineNo">627</span>      throw new RuntimeException(e);<a name="line.627"></a>
-<span class="sourceLineNo">628</span>    } finally {<a name="line.628"></a>
-<span class="sourceLineNo">629</span>      releaseSlot(slot);<a name="line.629"></a>
-<span class="sourceLineNo">630</span>    }<a name="line.630"></a>
-<span class="sourceLineNo">631</span>  }<a name="line.631"></a>
-<span class="sourceLineNo">632</span><a name="line.632"></a>
-<span class="sourceLineNo">633</span>  @Override<a name="line.633"></a>
-<span class="sourceLineNo">634</span>  public void delete(Procedure&lt;?&gt; proc, long[] subProcIds) {<a name="line.634"></a>
-<span class="sourceLineNo">635</span>    assert proc != null : "expected a non-null procedure";<a name="line.635"></a>
-<span class="sourceLineNo">636</span>    assert subProcIds != null &amp;&amp; subProcIds.length &gt; 0 : "expected subProcIds";<a name="line.636"></a>
-<span class="sourceLineNo">637</span>    if (LOG.isTraceEnabled()) {<a name="line.637"></a>
-<span class="sourceLineNo">638</span>      LOG.trace("Update " + proc + " and Delete " + Arrays.toString(subProcIds));<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    }<a name="line.639"></a>
-<span class="sourceLineNo">640</span><a name="line.640"></a>
-<span class="sourceLineNo">641</span>    ByteSlot slot = acquireSlot();<a name="line.641"></a>
-<span class="sourceLineNo">642</span>    try {<a name="line.642"></a>
-<span class="sourceLineNo">643</span>      // Serialize the delete<a name="line.643"></a>
-<span class="sourceLineNo">644</span>      ProcedureWALFormat.writeDelete(slot, proc, subProcIds);<a name="line.644"></a>
-<span class="sourceLineNo">645</span><a name="line.645"></a>
-<span class="sourceLineNo">646</span>      // Push the transaction data and wait until it is persisted<a name="line.646"></a>
-<span class="sourceLineNo">647</span>      pushData(PushType.DELETE, slot, proc.getProcId(), subProcIds);<a name="line.647"></a>
-<span class="sourceLineNo">648</span>    } catch (IOException e) {<a name="line.648"></a>
-<span class="sourceLineNo">649</span>      // We are not able to serialize the procedure.<a name="line.649"></a>
-<span class="sourceLineNo">650</span>      // this is a code error, and we are not able to go on.<a name="line.650"></a>
-<span class="sourceLineNo">651</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.651"></a>
-<span class="sourceLineNo">652</span>      throw new RuntimeException(e);<a name="line.652"></a>
-<span class="sourceLineNo">653</span>    } finally {<a name="line.653"></a>
-<span class="sourceLineNo">654</span>      releaseSlot(slot);<a name="line.654"></a>
-<span class="sourceLineNo">655</span>    }<a name="line.655"></a>
-<span class="sourceLineNo">656</span>  }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>  @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>  public void delete(final long[] procIds, final int offset, final int count) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>    if (count == 0) {<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      return;<a name="line.661"></a>
-<span class="sourceLineNo">662</span>    }<a name="line.662"></a>
-<span class="sourceLineNo">663</span><a name="line.663"></a>
-<span class="sourceLineNo">664</span>    if (offset == 0 &amp;&amp; count == procIds.length) {<a name="line.664"></a>
-<span class="sourceLineNo">665</span>      delete(procIds);<a name="line.665"></a>
-<span class="sourceLineNo">666</span>    } else if (count == 1) {<a name="line.666"></a>
-<span class="sourceLineNo">667</span>      delete(procIds[offset]);<a name="line.667"></a>
-<span class="sourceLineNo">668</span>    } else {<a name="line.668"></a>
-<span class="sourceLineNo">669</span>      delete(Arrays.copyOfRange(procIds, offset, offset + count));<a name="line.669"></a>
-<span class="sourceLineNo">670</span>    }<a name="line.670"></a>
-<span class="sourceLineNo">671</span>  }<a name="line.671"></a>
-<span class="sourceLineNo">672</span><a name="line.672"></a>
-<span class="sourceLineNo">673</span>  private void delete(long[] procIds) {<a name="line.673"></a>
-<span class="sourceLineNo">674</span>    if (LOG.isTraceEnabled()) {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>      LOG.trace("Delete " + Arrays.toString(procIds));<a name="line.675"></a>
-<span class="sourceLineNo">676</span>    }<a name="line.676"></a>
-<span class="sourceLineNo">677</span><a name="line.677"></a>
-<span class="sourceLineNo">678</span>    final ByteSlot slot = acquireSlot();<a name="line.678"></a>
-<span class="sourceLineNo">679</span>    try {<a name="line.679"></a>
-<span class="sourceLineNo">680</span>      // Serialize the delete<a name="line.680"></a>
-<span class="sourceLineNo">681</span>      for (int i = 0; i &lt; procIds.length; ++i) {<a name="line.681"></a>
-<span class="sourceLineNo">682</span>        ProcedureWALFormat.writeDelete(slot, procIds[i]);<a name="line.682"></a>
-<span class="sourceLineNo">683</span>      }<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>      // Push the transaction data and wait until it is persisted<a name="line.685"></a>
-<span class="sourceLineNo">686</span>      pushData(PushType.DELETE, slot, Procedure.NO_PROC_ID, procIds);<a name="line.686"></a>
-<span class="sourceLineNo">687</span>    } catch (IOException e) {<a name="line.687"></a>
-<span class="sourceLineNo">688</span>      // We are not able to serialize the procedure.<a name="line.688"></a>
-<span class="sourceLineNo">689</span>      // this is a code error, and we are not able to go on.<a name="line.689"></a>
-<span class="sourceLineNo">690</span>      LOG.error("Unable to serialize the procedures: " + Arrays.toString(procIds), e);<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      throw new RuntimeException(e);<a name="line.691"></a>
-<span class="sourceLineNo">692</span>    } finally {<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      releaseSlot(slot);<a name="line.693"></a>
-<span class="sourceLineNo">694</span>    }<a name="line.694"></a>
-<span class="sourceLineNo">695</span>  }<a name="line.695"></a>
-<span class="sourceLineNo">696</span><a name="line.696"></a>
-<span class="sourceLineNo">697</span>  private ByteSlot acquireSlot() {<a name="line.697"></a>
-<span class="sourceLineNo">698</span>    ByteSlot slot = slotsCache.poll();<a name="line.698"></a>
-<span class="sourceLineNo">699</span>    return slot != null ? slot : new ByteSlot();<a name="line.699"></a>
-<span class="sourceLineNo">700</span>  }<a name="line.700"></a>
-<span class="sourceLineNo">701</span><a name="line.701"></a>
-<span class="sourceLineNo">702</span>  private void releaseSlot(final ByteSlot slot) {<a name="line.702"></a>
-<span class="sourceLineNo">703</span>    slot.reset();<a name="line.703"></a>
-<span class="sourceLineNo">704</span>    slotsCache.offer(slot);<a name="line.704"></a>
-<span class="sourceLineNo">705</span>  }<a name="line.705"></a>
-<span class="sourceLineNo">706</span><a name="line.706"></a>
-<span class="sourceLineNo">707</span>  private enum PushType { INSERT, UPDATE, DELETE }<a name="line.707"></a>
+<span class="sourceLineNo">466</span>      ProcedureWALFormat.load(it, storeTracker, new ProcedureWALFormat.Loader() {<a name="line.466"></a>
+<span class="sourceLineNo">467</span><a name="line.467"></a>
+<span class="sourceLineNo">468</span>        @Override<a name="line.468"></a>
+<span class="sourceLineNo">469</span>        public void setMaxProcId(long maxProcId) {<a name="line.469"></a>
+<span class="sourceLineNo">470</span>          loader.setMaxProcId(maxProcId);<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        }<a name="line.471"></a>
+<span class="sourceLineNo">472</span><a name="line.472"></a>
+<span class="sourceLineNo">473</span>        @Override<a name="line.473"></a>
+<span class="sourceLineNo">474</span>        public void load(ProcedureIterator procIter) throws IOException {<a name="line.474"></a>
+<span class="sourceLineNo">475</span>          loader.load(procIter);<a name="line.475"></a>
+<span class="sourceLineNo">476</span>        }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>        @Override<a name="line.478"></a>
+<span class="sourceLineNo">479</span>        public void handleCorrupted(ProcedureIterator procIter) throws IOException {<a name="line.479"></a>
+<span class="sourceLineNo">480</span>          loader.handleCorrupted(procIter);<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        }<a name="line.481"></a>
+<span class="sourceLineNo">482</span><a name="line.482"></a>
+<span class="sourceLineNo">483</span>        @Override<a name="line.483"></a>
+<span class="sourceLineNo">484</span>        public void markCorruptedWAL(ProcedureWALFile log, IOException e) {<a name="line.484"></a>
+<span class="sourceLineNo">485</span>          if (corruptedLogs == null) {<a name="line.485"></a>
+<span class="sourceLineNo">486</span>            corruptedLogs = new HashSet&lt;&gt;();<a name="line.486"></a>
+<span class="sourceLineNo">487</span>          }<a name="line.487"></a>
+<span class="sourceLineNo">488</span>          corruptedLogs.add(log);<a name="line.488"></a>
+<span class="sourceLineNo">489</span>          // TODO: sideline corrupted log<a name="line.489"></a>
+<span class="sourceLineNo">490</span>        }<a name="line.490"></a>
+<span class="sourceLineNo">491</span>      });<a name="line.491"></a>
+<span class="sourceLineNo">492</span>      // if we fail when loading, we should prevent persisting the storeTracker later in the stop<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      // method. As it may happen that, we have finished constructing the modified and deleted bits,<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      // but before we call resetModified, we fail, then if we persist the storeTracker then when<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      // restarting, we will consider that all procedures have been included in this file and delete<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      // all the previous files. Obviously this not correct. So here we will only set loading to<a name="line.496"></a>
+<span class="sourceLineNo">497</span>      // false when we successfully loaded all the procedures, and when closing we will skip<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      // persisting the store tracker. And also, this will prevent the sync thread to do<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      // periodicRoll, where we may also clean old logs.<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loading.set(false);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      // try to cleanup inactive wals and complete the operation<a name="line.501"></a>
+<span class="sourceLineNo">502</span>      buildHoldingCleanupTracker();<a name="line.502"></a>
+<span class="sourceLineNo">503</span>      tryCleanupLogsOnLoad();<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    } finally {<a name="line.504"></a>
+<span class="sourceLineNo">505</span>      lock.unlock();<a name="line.505"></a>
+<span class="sourceLineNo">506</span>    }<a name="line.506"></a>
+<span class="sourceLineNo">507</span>  }<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>  private void tryCleanupLogsOnLoad() {<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    // nothing to cleanup.<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    if (logs.size() &lt;= 1) {<a name="line.511"></a>
+<span class="sourceLineNo">512</span>      return;<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
+<span class="sourceLineNo">514</span><a name="line.514"></a>
+<span class="sourceLineNo">515</span>    // the config says to not cleanup wals on load.<a name="line.515"></a>
+<span class="sourceLineNo">516</span>    if (!conf.getBoolean(EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY,<a name="line.516"></a>
+<span class="sourceLineNo">517</span>      DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY)) {<a name="line.517"></a>
+<span class="sourceLineNo">518</span>      LOG.debug("WALs cleanup on load is not enabled: " + getActiveLogs());<a name="line.518"></a>
+<span class="sourceLineNo">519</span>      return;<a name="line.519"></a>
+<span class="sourceLineNo">520</span>    }<a name="line.520"></a>
+<span class="sourceLineNo">521</span><a name="line.521"></a>
+<span class="sourceLineNo">522</span>    try {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>      periodicRoll();<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    } catch (IOException e) {<a name="line.524"></a>
+<span class="sourceLineNo">525</span>      LOG.warn("Unable to cleanup logs on load: " + e.getMessage(), e);<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    }<a name="line.526"></a>
+<span class="sourceLineNo">527</span>  }<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>  @Override<a name="line.529"></a>
+<span class="sourceLineNo">530</span>  public void insert(Procedure&lt;?&gt; proc, Procedure&lt;?&gt;[] subprocs) {<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    if (LOG.isTraceEnabled()) {<a name="line.531"></a>
+<span class="sourceLineNo">532</span>      LOG.trace("Insert " + proc + ", subproc=" + Arrays.toString(subprocs));<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    }<a name="line.533"></a>
+<span class="sourceLineNo">534</span><a name="line.534"></a>
+<span class="sourceLineNo">535</span>    ByteSlot slot = acquireSlot();<a name="line.535"></a>
+<span class="sourceLineNo">536</span>    try {<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      // Serialize the insert<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      long[] subProcIds = null;<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      if (subprocs != null) {<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        ProcedureWALFormat.writeInsert(slot, proc, subprocs);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>        subProcIds = new long[subprocs.length];<a name="line.541"></a>
+<span class="sourceLineNo">542</span>        for (int i = 0; i &lt; subprocs.length; ++i) {<a name="line.542"></a>
+<span class="sourceLineNo">543</span>          subProcIds[i] = subprocs[i].getProcId();<a name="line.543"></a>
+<span class="sourceLineNo">544</span>        }<a name="line.544"></a>
+<span class="sourceLineNo">545</span>      } else {<a name="line.545"></a>
+<span class="sourceLineNo">546</span>        assert !proc.hasParent();<a name="line.546"></a>
+<span class="sourceLineNo">547</span>        ProcedureWALFormat.writeInsert(slot, proc);<a name="line.547"></a>
+<span class="sourceLineNo">548</span>      }<a name="line.548"></a>
+<span class="sourceLineNo">549</span><a name="line.549"></a>
+<span class="sourceLineNo">550</span>      // Push the transaction data and wait until it is persisted<a name="line.550"></a>
+<span class="sourceLineNo">551</span>      pushData(PushType.INSERT, slot, proc.getProcId(), subProcIds);<a name="line.551"></a>
+<span class="sourceLineNo">552</span>    } catch (IOException e) {<a name="line.552"></a>
+<span class="sourceLineNo">553</span>      // We are not able to serialize the procedure.<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      // this is a code error, and we are not able to go on.<a name="line.554"></a>
+<span class="sourceLineNo">555</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: proc=" +<a name="line.555"></a>
+<span class="sourceLineNo">556</span>          proc + ", subprocs=" + Arrays.toString(subprocs), e);<a name="line.556"></a>
+<span class="sourceLineNo">557</span>      throw new RuntimeException(e);<a name="line.557"></a>
+<span class="sourceLineNo">558</span>    } finally {<a name="line.558"></a>
+<span class="sourceLineNo">559</span>      releaseSlot(slot);<a name="line.559"></a>
+<span class="sourceLineNo">560</span>    }<a name="line.560"></a>
+<span class="sourceLineNo">561</span>  }<a name="line.561"></a>
+<span class="sourceLineNo">562</span><a name="line.562"></a>
+<span class="sourceLineNo">563</span>  @Override<a name="line.563"></a>
+<span class="sourceLineNo">564</span>  public void insert(Procedure&lt;?&gt;[] procs) {<a name="line.564"></a>
+<span class="sourceLineNo">565</span>    if (LOG.isTraceEnabled()) {<a name="line.565"></a>
+<span class="sourceLineNo">566</span>      LOG.trace("Insert " + Arrays.toString(procs));<a name="line.566"></a>
+<span class="sourceLineNo">567</span>    }<a name="line.567"></a>
+<span class="sourceLineNo">568</span><a name="line.568"></a>
+<span class="sourceLineNo">569</span>    ByteSlot slot = acquireSlot();<a name="line.569"></a>
+<span class="sourceLineNo">570</span>    try {<a name="line.570"></a>
+<span class="sourceLineNo">571</span>      // Serialize the insert<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      long[] procIds = new long[procs.length];<a name="line.572"></a>
+<span class="sourceLineNo">573</span>      for (int i = 0; i &lt; procs.length; ++i) {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        assert !procs[i].hasParent();<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        procIds[i] = procs[i].getProcId();<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        ProcedureWALFormat.writeInsert(slot, procs[i]);<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      // Push the transaction data and wait until it is persisted<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      pushData(PushType.INSERT, slot, Procedure.NO_PROC_ID, procIds);<a name="line.580"></a>
+<span class="sourceLineNo">581</span>    } catch (IOException e) {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>      // We are not able to serialize the procedure.<a name="line.582"></a>
+<span class="sourceLineNo">583</span>      // this is a code error, and we are not able to go on.<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: " +<a name="line.584"></a>
+<span class="sourceLineNo">585</span>          Arrays.toString(procs), e);<a name="line.585"></a>
+<span class="sourceLineNo">586</span>      throw new RuntimeException(e);<a name="line.586"></a>
+<span class="sourceLineNo">587</span>    } finally {<a name="line.587"></a>
+<span class="sourceLineNo">588</span>      releaseSlot(slot);<a name="line.588"></a>
+<span class="sourceLineNo">589</span>    }<a name="line.589"></a>
+<span class="sourceLineNo">590</span>  }<a name="line.590"></a>
+<span class="sourceLineNo">591</span><a name="line.591"></a>
+<span class="sourceLineNo">592</span>  @Override<a name="line.592"></a>
+<span class="sourceLineNo">593</span>  public void update(Procedure&lt;?&gt; proc) {<a name="line.593"></a>
+<span class="sourceLineNo">594</span>    if (LOG.isTraceEnabled()) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>      LOG.trace("Update " + proc);<a name="line.595"></a>
+<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
+<span class="sourceLineNo">597</span><a name="line.597"></a>
+<span class="sourceLineNo">598</span>    ByteSlot slot = acquireSlot();<a name="line.598"></a>
+<span class="sourceLineNo">599</span>    try {<a name="line.599"></a>
+<span class="sourceLineNo">600</span>      // Serialize the update<a name="line.600"></a>
+<span class="sourceLineNo">601</span>      ProcedureWALFormat.writeUpdate(slot, proc);<a name="line.601"></a>
+<span class="sourceLineNo">602</span><a name="line.602"></a>
+<span class="sourceLineNo">603</span>      // Push the transaction data and wait until it is persisted<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      pushData(PushType.UPDATE, slot, proc.getProcId(), null);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    } catch (IOException e) {<a name="line.605"></a>
+<span class="sourceLineNo">606</span>      // We are not able to serialize the procedure.<a name="line.606"></a>
+<span class="sourceLineNo">607</span>      // this is a code error, and we are not able to go on.<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      throw new RuntimeException(e);<a name="line.609"></a>
+<span class="sourceLineNo">610</span>    } finally {<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      releaseSlot(slot);<a name="line.611"></a>
+<span class="sourceLineNo">612</span>    }<a name="line.612"></a>
+<span class="sourceLineNo">613</span>  }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>  @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>  public void delete(long procId) {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>    LOG.trace("Delete {}", procId);<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    ByteSlot slot = acquireSlot();<a name="line.618"></a>
+<span class="sourceLineNo">619</span>    try {<a name="line.619"></a>
+<span class="sourceLineNo">620</span>      // Serialize the delete<a name="line.620"></a>
+<span class="sourceLineNo">621</span>      ProcedureWALFormat.writeDelete(slot, procId);<a name="line.621"></a>
+<span class="sourceLineNo">622</span><a name="line.622"></a>
+<span class="sourceLineNo">623</span>      // Push the transaction data and wait until it is persisted<a name="line.623"></a>
+<span class="sourceLineNo">624</span>      pushData(PushType.DELETE, slot, procId, null);<a name="line.624"></a>
+<span class="sourceLineNo">625</span>    } catch (IOException e) {<a name="line.625"></a>
+<span class="sourceLineNo">626</span>      // We are not able to serialize the procedure.<a name="line.626"></a>
+<span class="sourceLineNo">627</span>      // this is a code error, and we are not able to go on.<a name="line.627"></a>
+<span class="sourceLineNo">628</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + procId, e);<a name="line.628"></a>
+<span class="sourceLineNo">629</span>      throw new RuntimeException(e);<a name="line.629"></a>
+<span class="sourceLineNo">630</span>    } finally {<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      releaseSlot(slot);<a name="line.631"></a>
+<span class="sourceLineNo">632</span>    }<a name="line.632"></a>
+<span class="sourceLineNo">633</span>  }<a name="line.633"></a>
+<span class="sourceLineNo">634</span><a name="line.634"></a>
+<span class="sourceLineNo">635</span>  @Override<a name="line.635"></a>
+<span class="sourceLineNo">636</span>  public void delete(Procedure&lt;?&gt; proc, long[] subProcIds) {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>    assert proc != null : "expected a non-null procedure";<a name="line.637"></a>
+<span class="sourceLineNo">638</span>    assert subProcIds != null &amp;&amp; subProcIds.length &gt; 0 : "expected subProcIds";<a name="line.638"></a>
+<span class="sourceLineNo">639</span>    if (LOG.isTraceEnabled()) {<a name="line.639"></a>
+<span class="sourceLineNo">640</span>      LOG.trace("Update " + proc + " and Delete " + Arrays.toString(subProcIds));<a name="line.640"></a>
+<span class="sourceLineNo">641</span>    }<a name="line.641"></a>
+<span class="sourceLineNo">642</span><a name="line.642"></a>
+<span class="sourceLineNo">643</span>    ByteSlot slot = acquireSlot();<a name="line.643"></a>
+<span class="sourceLineNo">644</span>    try {<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      // Serialize the delete<a name="line.645"></a>
+<span class="sourceLineNo">646</span>      ProcedureWALFormat.writeDelete(slot, proc, subProcIds);<a name="line.646"></a>
+<span class="sourceLineNo">647</span><a name="line.647"></a>
+<span class="sourceLineNo">648</span>      // Push the transaction data and wait until it is persisted<a name="line.648"></a>
+<span class="sourceLineNo">649</span>      pushData(PushType.DELETE, slot, proc.getProcId(), subProcIds);<a name="line.649"></a>
+<span class="sourceLineNo">650</span>    } catch (IOException e) {<a name="line.650"></a>
+<span class="sourceLineNo">651</span>      // We are not able to serialize the procedure.<a name="line.651"></a>
+<span class="sourceLineNo">652</span>      // this is a code error, and we are not able to go on.<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.653"></a>
+<span class="sourceLineNo">654</span>      throw new RuntimeException(e);<a name="line.654"></a>
+<span class="sourceLineNo">655</span>    } finally {<a name="line.655"></a>
+<span class="sourceLineNo">656</span>      releaseSlot(slot);<a name="line.656"></a>
+<span class="sourceLineNo">657</span>    }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>  }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>  @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>  public void delete(final long[] procIds, final int offset, final int count) {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>    if (count == 0) {<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      return;<a name="line.663"></a>
+<span class="sourceLineNo">664</span>    }<a name="line.664"></a>
+<span class="sourceLineNo">665</span><a name="line.665"></a>
+<span class="sourceLineNo">666</span>    if (offset == 0 &amp;&amp; count == procIds.length) {<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      delete(procIds);<a name="line.667"></a>
+<span class="sourceLineNo">668</span>    } else if (count == 1) {<a name="line.668"></a>
+<span class="sourceLineNo">669</span>      delete(procIds[offset]);<a name="line.669"></a>
+<span class="sourceLineNo">670</span>    } else {<a name="line.670"></a>
+<span class="sourceLineNo">671</span>      delete(Arrays.copyOfRange(procIds, offset, offset + count));<a name="line.671"></a>
+<span class="sourceLineNo">672</span>    }<a name="line.672"></a>
+<span class="sourceLineNo">673</span>  }<a name="line.673"></a>
+<span class="sourceLineNo">674</span><a name="line.674"></a>
+<span class="sourceLineNo">675</span>  private void delete(long[] procIds) {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>    if (LOG.isTraceEnabled()) {<a name="line.676"></a>
+<span class="sourceLineNo">677</span>      LOG.trace("Delete " + Arrays.toString(procIds));<a name="line.677"></a>
+<span class="sourceLineNo">678</span>    }<a name="line.678"></a>
+<span class="sourceLineNo">679</span><a name="line.679"></a>
+<span class="sourceLineNo">680</span>    final ByteSlot slot = acquireSlot();<a name="line.680"></a>
+<span class="sourceLineNo">681</span>    try {<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      // Serialize the delete<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      for (int i = 0; i &lt; procIds.length; ++i) {<a name="line.683"></a>
+<span class="sourceLineNo">684</span>        ProcedureWALFormat.writeDelete(slot, procIds[i]);<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      }<a name="line.685"></a>
+<span class="sourceLineNo">686</span><a name="line.686"></a>
+<span class="sourceLineNo">687</span>      // Push the transaction data and wait until it is persisted<a name="line.687"></a>
+<span class="sourceLineNo">688</span>      pushData(PushType.DELETE, slot, Procedure.NO_PROC_ID, procIds);<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    } catch (IOException e) {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      // We are not able to serialize the procedure.<a name="line.690"></a>
+<span class="sourceLineNo">691</span>      // this is a code error, and we are not able to go on.<a name="line.691"></a>
+<span class="sourceLineNo">692</span>      LOG.error("Unable to serialize the procedures: " + Arrays.toString(procIds), e);<a name="line.692"></a>
+<span class="sourceLineNo">693</span>      throw new RuntimeException(e);<a name="line.693"></a>
+<span class="sourceLineNo">694</span>    } finally {<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      releaseSlot(slot);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>    }<a name="line.696"></a>
+<span class="sourceLineNo">697</span>  }<a name="line.697"></a>
+<span class="sourceLineNo">698</span><a name="line.698"></a>
+<span class="sourceLineNo">699</span>  private ByteSlot acquireSlot() {<a name="line.699"></a>
+<span class="sourceLineNo">700</span>    ByteSlot slot = slotsCache.poll();<a name="line.700"></a>
+<span class="sourceLineNo">701</span>    return slot != null ? slot : new ByteSlot();<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  }<a name="line.702"></a>
+<span class="sourceLineNo">703</span><a name="line.703"></a>
+<span class="sourceLineNo">704</span>  private void releaseSlot(final ByteSlot slot) {<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    slot.reset();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    slotsCache.offer(slot);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>  }<a name="line.707"></a>
 <span class="sourceLineNo">708</span><a name="line.708"></a>
-<span class="sourceLineNo">709</span>  private long pushData(final PushType type, final ByteSlot slot,<a name="line.709"></a>
-<span class="sourceLineNo">710</span>      final long procId, final long[] subProcIds) {<a name="line.710"></a>
-<span class="sourceLineNo">711</span>    if (!isRunning()) {<a name="line.711"></a>
-<span class="sourceLineNo">712</span>      throw new RuntimeException("the store must be running before inserting data");<a name="line.712"></a>
-<span class="sourceLineNo">713</span>    }<a name="line.713"></a>
-<span class="sourceLineNo">714</span>    if (logs.isEmpty()) {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>      throw new RuntimeException("recoverLease() must be called before inserting data");<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    }<a name="line.716"></a>
-<span class="sourceLineNo">717</span><a name="line.717"></a>
-<span class="sourceLineNo">718</span>    long logId = -1;<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    lock.lock();<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    try {<a name="line.720"></a>
-<span class="sourceLineNo">721</span>      // Wait for the sync to be completed<a name="line.721"></a>
-<span class="sourceLineNo">722</span>      while (true) {<a name="line.722"></a>
-<span class="sourceLineNo">723</span>        if (!isRunning()) {<a name="line.723"></a>
-<span class="sourceLineNo">724</span>          throw new RuntimeException("store no longer running");<a name="line.724"></a>
-<span class="sourceLineNo">725</span>        } else if (isSyncAborted()) {<a name="line.725"></a>
-<span class="sourceLineNo">726</span>          throw new RuntimeException("sync aborted", syncException.get());<a name="line.726"></a>
-<span class="sourceLineNo">727</span>        } else if (inSync.get()) {<a name="line.727"></a>
-<span class="sourceLineNo">728</span>          syncCond.await();<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        } else if (slotIndex &gt;= syncMaxSlot) {<a name="line.729"></a>
-<span class="sourceLineNo">730</span>          slotCond.signal();<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          syncCond.await();<a name="line.731"></a>
-<span class="sourceLineNo">732</span>        } else {<a name="line.732"></a>
-<span class="sourceLineNo">733</span>          break;<a name="line.733"></a>
-<span class="sourceLineNo">734</span>        }<a name="line.734"></a>
-<span class="sourceLineNo">735</span>      }<a name="line.735"></a>
-<span class="sourceLineNo">736</span><a name="line.736"></a>
-<span class="sourceLineNo">737</span>      final long pushSyncId = syncId.get();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>      updateStoreTracker(type, procId, subProcIds);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>      slots[slotIndex++] = slot;<a name="line.739"></a>
-<span class="sourceLineNo">740</span>      logId = flushLogId;<a name="line.740"></a>
-<span class="sourceLineNo">741</span><a name="line.741"></a>
-<span class="sourceLineNo">742</span>      // Notify that there is new data<a name="line.742"></a>
-<span class="sourceLineNo">743</span>      if (slotIndex == 1) {<a name="line.743"></a>
-<span class="sourceLineNo">744</span>        waitCond.signal();<a name="line.744"></a>
-<span class="sourceLineNo">745</span>      }<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>      // Notify that the slots are full<a name="line.747"></a>
-<span class="sourceLineNo">748</span>      if (slotIndex == syncMaxSlot) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>        waitCond.signal();<a name="line.749"></a>
-<span class="sourceLineNo">750</span>        slotCond.signal();<a name="line.750"></a>
-<span class="sourceLineNo">751</span>      }<a name="line.751"></a>
-<span class="sourceLineNo">752</span><a name="line.752"></a>
-<span class="sourceLineNo">753</span>      while (pushSyncId == syncId.get() &amp;&amp; isRunning()) {<a name="line.753"></a>
-<span class="sourceLineNo">754</span>        syncCond.await();<a name="line.754"></a>
-<span class="sourceLineNo">755</span>      }<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    } catch (InterruptedException e) {<a name="line.756"></a>
-<span class="sourceLineNo">757</span>      Thread.currentThread().interrupt();<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sendAbortProcessSignal();<a name="line.758"></a>
-<span class="sourceLineNo">759</span>      throw new RuntimeException(e);<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    } finally {<a name="line.760"></a>
-<span class="sourceLineNo">761</span>      lock.unlock();<a name="line.761"></a>
-<span class="sourceLineNo">762</span>      if (isSyncAborted()) {<a name="line.762"></a>
-<span class="sourceLineNo">763</span>        throw new RuntimeException("sync aborted", syncException.get());<a name="line.763"></a>
-<span class="sourceLineNo">764</span>      }<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    }<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    return logId;<a name="line.766"></a>
-<span class="sourceLineNo">767</span>  }<a name="line.767"></a>
-<span class="sourceLineNo">768</span><a name="line.768"></a>
-<span class="sourceLineNo">769</span>  private void updateStoreTracker(final PushType type,<a name="line.769"></a>
-<span class="sourceLineNo">770</span>      final long procId, final long[] subProcIds) {<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    switch (type) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      case INSERT:<a name="line.772"></a>
-<span class="sourceLineNo">773</span>        if (subProcIds == null) {<a name="line.773"></a>
-<span class="sourceLineNo">774</span>          storeTracker.insert(procId);<a name="line.774"></a>
-<span class="sourceLineNo">775</span>        } else if (procId == Procedure.NO_PROC_ID) {<a name="line.775"></a>
-<span class="sourceLineNo">776</span>          storeTracker.insert(subProcIds);<a name="line.776"></a>
-<span class="sourceLineNo">777</span>        } else {<a name="line.777"></a>
-<span class="sourceLineNo">778</span>          storeTracker.insert(procId, subProcIds);<a name="line.778"></a>
-<span class="sourceLineNo">779</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.779"></a>
-<span class="sourceLineNo">780</span>        }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>        break;<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      case UPDATE:<a name="line.782"></a>
-<span class="sourceLineNo">783</span>        storeTracker.update(procId);<a name="line.783"></a>
-<span class="sourceLineNo">784</span>        holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.784"></a>
-<span class="sourceLineNo">785</span>        break;<a name="line.785"></a>
-<span class="sourceLineNo">786</span>      case DELETE:<a name="line.786"></a>
-<span class="sourceLineNo">787</span>        if (subProcIds != null &amp;&amp; subProcIds.length &gt; 0) {<a name="line.787"></a>
-<span class="sourceLineNo">788</span>          storeTracker.delete(subProcIds);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>          holdingCleanupTracker.setDeletedIfModified(subProcIds);<a name="line.789"></a>
-<span class="sourceLineNo">790</span>        } else {<a name="line.790"></a>
-<span class="sourceLineNo">791</span>          storeTracker.delete(procId);<a name="line.791"></a>
-<span class="sourceLineNo">792</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.792"></a>
-<span class="sourceLineNo">793</span>        }<a name="line.793"></a>
-<span class="sourceLineNo">794</span>        break;<a name="line.794"></a>
-<span class="sourceLineNo">795</span>      default:<a name="line.795"></a>
-<span class="sourceLineNo">796</span>        throw new RuntimeException("invalid push type " + type);<a name="line.796"></a>
-<span class="sourceLineNo">797</span>    }<a name="line.797"></a>
-<span class="sourceLineNo">798</span>  }<a name="line.798"></a>
-<span class="sourceLineNo">799</span><a name="line.799"></a>
-<span class="sourceLineNo">800</span>  private boolean isSyncAborted() {<a name="line.800"></a>
-<span class="sourceLineNo">801</span>    return syncException.get() != null;<a name="line.801"></a>
-<span class="sourceLineNo">802</span>  }<a name="line.802"></a>
-<span class="sourceLineNo">803</span><a name="line.803"></a>
-<span class="sourceLineNo">804</span>  private void syncLoop() throws Throwable {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    long totalSyncedToStore = 0;<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    inSync.set(false);<a name="line.806"></a>
-<span class="sourceLineNo">807</span>    lock.lock();<a name="line.807"></a>
-<span class="sourceLineNo">808</span>    try {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>      while (isRunning()) {<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        try {<a name="line.810"></a>
-<span class="sourceLineNo">811</span>          // Wait until new data is available<a name="line.811"></a>
-<span class="sourceLineNo">812</span>          if (slotIndex == 0) {<a name="line.812"></a>
-<span class="sourceLineNo">813</span>            if (!loading.get()) {<a name="line.813"></a>
-<span class="sourceLineNo">814</span>              periodicRoll();<a name="line.814"></a>
-<span class="sourceLineNo">815</span>            }<a name="line.815"></a>
-<span class="sourceLineNo">816</span><a name="line.816"></a>
-<span class="sourceLineNo">817</span>            if (LOG.isTraceEnabled()) {<a name="line.817"></a>
-<span class="sourceLineNo">818</span>              float rollTsSec = getMillisFromLastRoll() / 1000.0f;<a name="line.818"></a>
-<span class="sourceLineNo">819</span>              LOG.trace(String.format("Waiting for data. flushed=%s (%s/sec)",<a name="line.819"></a>
-<span class="sourceLineNo">820</span>                        StringUtils.humanSize(totalSynced.get()),<a name="line.820"></a>
-<span class="sourceLineNo">821</span>                        StringUtils.humanSize(totalSynced.get() / rollTsSec)));<a name="line.821"></a>
-<span class="sourceLineNo">822</span>            }<a name="line.822"></a>
-<span class="sourceLineNo">823</span><a name="line.823"></a>
-<span class="sourceLineNo">824</span>            waitCond.await(getMillisToNextPeriodicRoll(), TimeUnit.MILLISECONDS);<a name="line.824"></a>
-<span class="sourceLineNo">825</span>            if (slotIndex == 0) {<a name="line.825"></a>
-<span class="sourceLineNo">826</span>              // no data.. probably a stop() or a periodic roll<a name="line.826"></a>
-<span class="sourceLineNo">827</span>              continue;<a name="line.827"></a>
-<span class="sourceLineNo">828</span>            }<a name="line.828"></a>
-<span class="sourceLineNo">829</span>          }<a name="line.829"></a>
-<span class="sourceLineNo">830</span>          // Wait SYNC_WAIT_MSEC or the signal of "slots full" before flushing<a name="line.830"></a>
-<span class="sourceLineNo">831</span>          syncMaxSlot = runningProcCount;<a name="line.831"></a>
-<span class="sourceLineNo">832</span>          assert syncMaxSlot &gt; 0 : "unexpected syncMaxSlot=" + syncMaxSlot;<a name="line.832"></a>
-<span class="sourceLineNo">833</span>          final long syncWaitSt = EnvironmentEdgeManager.currentTime();<a name="line.833"></a>
-<span class="sourceLineNo">834</span>          if (slotIndex != syncMaxSlot) {<a name="line.834"></a>
-<span class="sourceLineNo">835</span>            slotCond.await(syncWaitMsec, TimeUnit.MILLISECONDS);<a name="line.835"></a>
-<span class="sourceLineNo">836</span>          }<a name="line.836"></a>
-<span class="sourceLineNo">837</span><a name="line.837"></a>
-<span class="sourceLineNo">838</span>          final long currentTs = EnvironmentEdgeManager.currentTime();<a name="line.838"></a>
-<span class="sourceLineNo">839</span>          final long syncWaitMs = currentTs - syncWaitSt;<a name="line.839"></a>
-<span class="sourceLineNo">840</span>          final float rollSec = getMillisFromLastRoll() / 1000.0f;<a name="line.840"></a>
-<span class="sourceLineNo">841</span>          final float syncedPerSec = totalSyncedToStore / rollSec;<a name="line.841"></a>
-<span class="sourceLineNo">842</span>          if (LOG.isTraceEnabled() &amp;&amp; (syncWaitMs &gt; 10 || slotIndex &lt; syncMaxSlot)) {<a name="line.842"></a>
-<span class="sourceLineNo">843</span>            LOG.trace(String.format("Sync wait %s, slotIndex=%s , totalSynced=%s (%s/sec)",<a name="line.843"></a>
-<span class="sourceLineNo">844</span>                      StringUtils.humanTimeDiff(syncWaitMs), slotIndex,<a name="line.844"></a>
-<span class="sourceLineNo">845</span>                      StringUtils.humanSize(totalSyncedToStore),<a name="line.845"></a>
-<span class="sourceLineNo">846</span>                      StringUtils.humanSize(syncedPerSec)));<a name="line.846"></a>
-<span class="sourceLineNo">847</span>          }<a name="line.847"></a>
-<span class="sourceLineNo">848</span><a name="line.848"></a>
-<span class="sourceLineNo">849</span>          // update webui circular buffers (TODO: get rid of allocations)<a name="line.849"></a>
-<span class="sourceLineNo">850</span>          final SyncMetrics syncMetrics = new SyncMetrics();<a name="line.850"></a>
-<span class="sourceLineNo">851</span>          syncMetrics.timestamp = currentTs;<a name="line.851"></a>
-<span class="sourceLineNo">852</span>          syncMetrics.syncWaitMs = syncWaitMs;<a name="line.852"></a>
-<span class="sourceLineNo">853</span>          syncMetrics.syncedEntries = slotIndex;<a name="line.853"></a>
-<span class="sourceLineNo">854</span>          syncMetrics.totalSyncedBytes = totalSyncedToStore;<a name="line.854"></a>
-<span class="sourceLineNo">855</span>          syncMetrics.syncedPerSec = syncedPerSec;<a name="line.855"></a>
-<span class="sourceLineNo">856</span>          syncMetricsQueue.add(syncMetrics);<a name="line.856"></a>
-<span class="sourceLineNo">857</span><a name="line.857"></a>
-<span class="sourceLineNo">858</span>          // sync<a name="line.858"></a>
-<span class="sourceLineNo">859</span>          inSync.set(true);<a name="line.859"></a>
-<span class="sourceLineNo">860</span>          long slotSize = syncSlots();<a name="line.860"></a>
-<span class="sourceLineNo">861</span>          logs.getLast().addToSize(slotSize);<a name="line.861"></a>
-<span class="sourceLineNo">862</span>          totalSyncedToStore = totalSynced.addAndGet(slotSize);<a name="line.862"></a>
-<span class="sourceLineNo">863</span>          slotIndex = 0;<a name="line.863"></a>
-<span class="sourceLineNo">864</span>          inSync.set(false);<a name="line.864"></a>
-<span class="sourceLineNo">865</span>          syncId.incrementAndGet();<a name="line.865"></a>
-<span class="sourceLineNo">866</span>        } catch (InterruptedException e) {<a name="line.866"></a>
-<span class="sourceLineNo">867</span>          Thread.currentThread().interrupt();<a name="line.867"></a>
-<span class="sourceLineNo">868</span>          syncException.compareAndSet(null, e);<a name="line.868"></a>
-<span class="sourceLineNo">869</span>          sendAbortProcessSignal();<a name="line.869"></a>
-<span class="sourceLineNo">870</span>          throw e;<a name="line.870"></a>
-<span class="sourceLineNo">871</span>        } catch (Throwable t) {<a name="line.871"></a>
-<span class="sourceLineNo">872</span>          syncException.compareAndSet(null, t);<a name="line.872"></a>
-<span class="sourceLineNo">873</span>          sendAbortProcessSignal();<a name="line.873"></a>
-<span class="sourceLineNo">874</span>          throw t;<a name="line.874"></a>
-<span class="sourceLineNo">875</span>        } finally {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>          syncCond.signalAll();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>        }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>      }<a name="line.878"></a>
-<span class="sourceLineNo">879</span>    } finally {<a name="line.879"></a>
-<span class="sourceLineNo">880</span>      lock.unlock();<a name="line.880"></a>
-<span class="sourceLineNo">881</span>    }<a name="line.881"></a>
-<span class="sourceLineNo">882</span>  }<a name="line.882"></a>
-<span class="sourceLineNo">883</span><a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public ArrayList&lt;SyncMetrics&gt; getSyncMetrics() {<a name="line.884"></a>
-<span class="sourceLineNo">885</span>    lock.lock();<a name="line.885"></a>
-<span class="sourceLineNo">886</span>    try {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>      return new ArrayList&lt;&gt;(syncMetricsQueue);<a name="line.887"></a>
-<span class="sourceLineNo">888</span>    } finally {<a name="line.888"></a>
-<span class="sourceLineNo">889</span>      lock.unlock();<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    }<a name="line.890"></a>
-<span class="sourceLineNo">891</span>  }<a name="line.891"></a>
-<span class="sourceLineNo">892</span><a name="line.892"></a>
-<span class="sourceLineNo">893</span>  private long syncSlots() throws Throwable {<a name="line.893"></a>
-<span class="sourceLineNo">894</span>    int retry = 0;<a name="line.894"></a>
-<span class="sourceLineNo">895</span>    int logRolled = 0;<a name="line.895"></a>
-<span class="sourceLineNo">896</span>    long totalSynced = 0;<a name="line.896"></a>
-<span class="sourceLineNo">897</span>    do {<a name="line.897"></a>
-<span class="sourceLineNo">898</span>      try {<a name="line.898"></a>
-<span class="sourceLineNo">899</span>        totalSynced = syncSlots(stream, slots, 0, slotIndex);<a name="line.899"></a>
-<span class="sourceLineNo">900</span>        break;<a name="line.900"></a>
-<span class="sourceLineNo">901</span>      } catch (Throwable e) {<a name="line.901"></a>
-<span class="sourceLineNo">902</span>        LOG.warn("unable to sync slots, retry=" + retry);<a name="line.902"></a>
-<span class="sourceLineNo">903</span>        if (++retry &gt;= maxRetriesBeforeRoll) {<a name="line.903"></a>
-<span class="sourceLineNo">904</span>          if (logRolled &gt;= maxSyncFailureRoll &amp;&amp; isRunning()) {<a name="line.904"></a>
-<span class="sourceLineNo">905</span>            LOG.error("Sync slots after log roll failed, abort.", e);<a name="line.905"></a>
-<span class="sourceLineNo">906</span>            throw e;<a name="line.906"></a>
-<span class="sourceLineNo">907</span>          }<a name="line.907"></a>
-<span class="sourceLineNo">908</span><a name="line.908"></a>
-<span class="sourceLineNo">909</span>          if (!rollWriterWithRetries()) {<a name="line.909"></a>
-<span class="sourceLineNo">910</span>            throw e;<a name="line.910"></a>
-<span class="sourceLineNo">911</span>          }<a name="line.911"></a>
-<span class="sourceLineNo">912</span><a name="line.912"></a>
-<span class="sourceLineNo">913</span>          logRolled++;<a name="line.913"></a>
-<span class="sourceLineNo">914</span>          retry = 0;<a name="line.914"></a>
-<span class="sourceLineNo">915</span>        }<a name="line.915"></a>
-<span class="sourceLineNo">916</span>      }<a name="line.916"></a>
-<span class="sourceLineNo">917</span>    } while (isRunning());<a name="line.917"></a>
-<span class="sourceLineNo">918</span>    return totalSynced;<a name="line.918"></a>
-<span class="sourceLineNo">919</span>  }<a name="line.919"></a>
-<span class="sourceLineNo">920</span><a name="line.920"></a>
-<span class="sourceLineNo">921</span>  protected long syncSlots(final FSDataOutputStream stream, final ByteSlot[] slots,<a name="line.921"></a>
-<span class="sourceLineNo">922</span>      final int offset, final int count) throws IOException {<a name="line.922"></a>
-<span class="sourceLineNo">923</span>    long totalSynced = 0;<a name="line.923"></a>
-<span class="sourceLineNo">924</span>    for (int i = 0; i &lt; count; ++i) {<a name="line.924"></a>
-<span class="sourceLineNo">925</span>      final ByteSlot data = slots[offset + i];<a name="line.925"></a>
-<span class="sourceLineNo">926</span>      data.writeTo(stream);<a name="line.926"></a>
-<span class="sourceLineNo">927</span>      totalSynced += data.size();<a name="line.927"></a>
-<span class="sourceLineNo">928</span>    }<a name="line.928"></a>
-<span class="sourceLineNo">929</span><a name="line.929"></a>
-<span class="sourceLineNo">930</span>    syncStream(stream);<a name="line.930"></a>
-<span class="sourceLineNo">931</span>    sendPostSyncSignal();<a name="line.931"></a>
-<span class="sourceLineNo">932</span><a name="line.932"></a>
-<span class="sourceLineNo">933</span>    if (LOG.isTraceEnabled()) {<a name="line.933"></a>
-<span class="sourceLineNo">934</span>      LOG.trace("Sync slots=" + count + '/' + syncMaxSlot +<a name="line.934"></a>
-<span class="sourceLineNo">935</span>                ", flushed=" + StringUtils.humanSize(totalSynced));<a name="line.935"></a>
-<span class="sourceLineNo">936</span>    }<a name="line.936"></a>
-<span class="sourceLineNo">937</span>    return totalSynced;<a name="line.937"></a>
-<span class="sourceLineNo">938</span>  }<a name="line.938"></a>
-<span class="sourceLineNo">939</span><a name="line.939"></a>
-<span class="sourceLineNo">940</span>  protected void syncStream(final FSDataOutputStream stream) throws IOException {<a name="line.940"></a>
-<span class="sourceLineNo">941</span>    if (useHsync) {<a name="line.941"></a>
-<span class="sourceLineNo">942</span>      stream.hsync();<a name="line.942"></a>
-<span class="sourceLineNo">943</span>    } else {<a name="line.943"></a>
-<span class="sourceLineNo">944</span>      stream.hflush();<a name="line.944"></a>
-<span class="sourceLineNo">945</span>    }<a name="line.945"></a>
-<span class="sourceLineNo">946</span>  }<a name="line.946"></a>
-<span class="sourceLineNo">947</span><a name="line.947"></a>
-<span class="sourceLineNo">948</span>  private boolean rollWriterWithRetries() {<a name="line.948"></a>
-<span class="sourceLineNo">949</span>    for (int i = 0; i &lt; rollRetries &amp;&amp; isRunning(); ++i) {<a name="line.949"></a>
-<span class="sourceLineNo">950</span>      if (i &gt; 0) {<a name="line.950"></a>
-<span class="sourceLineNo">951</span>        Threads.sleepWithoutInterrupt(waitBeforeRoll * i);<a name="line.951"></a>
-<span class="sourceLineNo">952</span>      }<a name="line.952"></a>
-<span class="sourceLineNo">953</span><a name="line.953"></a>
-<span class="sourceLineNo">954</span>      try {<a name="line.954"></a>
-<span class="sourceLineNo">955</span>        if (rollWriter()) {<a name="line.955"></a>
-<span class="sourceLineNo">956</span>          return true;<a name="line.956"></a>
-<span class="sourceLineNo">957</span>        }<a name="line.957"></a>
-<span class="sourceLineNo">958</span>      } catch (IOException e) {<a name="line.958"></a>
-<span class="sourceLineNo">959</span>        LOG.warn("Unable to roll the log, attempt=" + (i + 1), e);<a name="line.959"></a>
-<span class="sourceLineNo">960</span>      }<a name="line.960"></a>
-<span class="sourceLineNo">961</span>    }<a name="line.961"></a>
-<span class="sourceLineNo">962</span>    LOG.error(HBaseMarkers.FATAL, "Unable to roll the log");<a name="line.962"></a>
-<span class="sourceLineNo">963</span>    return false;<a name="line.963"></a>
-<span class="sourceLineNo">964</span>  }<a name="line.964"></a>
-<span class="sourceLineNo">965</span><a name="line.965"></a>
-<span class="sourceLineNo">966</span>  private boolean tryRollWriter() {<a name="line.966"></a>
-<span class="sourceLineNo">967</span>    try {<a name="line.967"></a>
-<span class="sourceLineNo">968</span>      return rollWriter();<a name="line.968"></a>
-<span class="sourceLineNo">969</span>    } catch (IOException e) {<a name="line.969"></a>
-<span class="sourceLineNo">970</span>      LOG.warn("Unable to roll the log", e);<a name="line.970"></a>
-<span class="sourceLineNo">971</span>      return false;<a name="line.971"></a>
-<span class="sourceLineNo">972</span>    }<a name="line.972"></a>
-<span class="sourceLineNo">973</span>  }<a name="line.973"></a>
-<span class="sourceLineNo">974</span><a name="line.974"></a>
-<span class="sourceLineNo">975</span>  public long getMillisToNextPeriodicRoll() {<a name="line.975"></a>
-<span class="sourceLineNo">976</span>    if (lastRollTs.get() &gt; 0 &amp;&amp; periodicRollMsec &gt; 0) {<a name="line.976"></a>
-<span class="sourceLineNo">977</span>      return periodicRollMsec - getMillisFromLastRoll();<a name="line.977"></a>
-<span class="sourceLineNo">978</span>    }<a name="line.978"></a>
-<span class="sourceLineNo">979</span>    return Long.MAX_VALUE;<a name="line.979"></a>
-<span class="sourceLineNo">980</span>  }<a name="line.980"></a>
-<span class="sourceLineNo">981</span><a name="line.981"></a>
-<span class="sourceLineNo">982</span>  public long getMillisFromLastRoll() {<a name="line.982"></a>
-<span class="sourceLineNo">983</span>    return (EnvironmentEdgeManager.currentTime() - lastRollTs.get());<a name="line.983"></a>
-<span class="sourceLineNo">984</span>  }<a name="line.984"></a>
-<span class="sourceLineNo">985</span><a name="line.985"></a>
-<span class="sourceLineNo">986</span>  void periodicRollForTesting() throws IOException {<a name="line.986"></a>
-<span class="sourceLineNo">987</span>    lock.lock();<a name="line.987"></a>
-<span class="sourceLineNo">988</span>    try {<a name="line.988"></a>
-<span class="sourceLineNo">989</span>      periodicRoll();<a name="line.989"></a>
-<span class="sourceLineNo">990</span>    } finally {<a name="line.990"></a>
-<span class="sourceLineNo">991</span>      lock.unlock();<a name="line.991"></a>
-<span class="sourceLineNo">992</span>    }<a name="line.992"></a>
-<span class="sourceLineNo">993</span>  }<a name="line.993"></a>
-<span class="sourceLineNo">994</span><a name="line.994"></a>
-<span class="sourceLineNo">995</span>  public boolean rollWriterForTesting() throws IOException {<a name="line.995"></a>
-<span class="sourceLineNo">996</span>    lock.lock();<a name="line.996"></a>
-<span class="sourceLineNo">997</span>    try {<a name="line.997"></a>
-<span class="sourceLineNo">998</span>      return rollWriter();<a name="line.998"></a>
-<span class="sourceLineNo">999</span>    } finally {<a name="line.999"></a>
-<span class="sourceLineNo">1000</span>      lock.unlock();<a name="line.1000"></a>
-<span class="sourceLineNo">1001</span>    }<a name="line.1001"></a>
-<span class="sourceLineNo">1002</span>  }<a name="line.1002"></a>
-<span class="sourceLineNo">1003</span><a name="line.1003"></a>
-<span class="sourceLineNo">1004</span>  void removeInactiveLogsForTesting() throws Exception {<a name="line.1004"></a>
-<span class="sourceLineNo">1005</span>    lock.lock();<a name="line.1005"></a>
-<span class="sourceLineNo">1006</span>    try {<a name="line.1006"></a>
-<span class="sourceLineNo">1007</span>      removeInactiveLogs();<a name="line.1007"></a>
-<span class="sourceLineNo">1008</span>    } finally  {<a name="line.1008"></a>
-<span class="sourceLineNo">1009</span>      lock.unlock();<a name="line.1009"></a>
-<span class="sourceLineNo">1010</span>    }<a name="line.1010"></a>
-<span class="sourceLineNo">1011</span>  }<a name="line.1011"></a>
-<span class="sourceLineNo">1012</span><a name="line.1012"></a>
-<span class="sourceLineNo">1013</span>  private void periodicRoll() throws IOException {<a name="line.1013"></a>
-<span class="sourceLineNo">1014</span>    if (storeTracker.isEmpty()) {<a name="line.1014"></a>
-<span class="sourceLineNo">1015</span>      LOG.trace("no active procedures");<a name="line.1015"></a>
-<span class="sourceLineNo">1016</span>      tryRollWriter();<a name="line.1016"></a>
-<span class="sourceLineNo">1017</span>      removeAllLogs(flushLogId - 1, "no active procedures");<a name="line.1017"></a>
-<span class="sourceLineNo">1018</span>    } else {<a name="line.1018"></a>
-<span class="sourceLineNo">1019</span>      if (storeTracker.isAllModified()) {<a name="line.1019"></a>
-<span class="sourceLineNo">1020</span>        LOG.trace("all the active procedures are in the latest log");<a name="line.1020"></a>
-<span class="sourceLineNo">1021</span>        removeAllLogs(flushLogId - 1, "all the active procedures are in the latest log");<a name="line.1021"></a>
-<span class="sourceLineNo">1022</span>      }<a name="line.1022"></a>
-<span class="sourceLineNo">1023</span><a name="line.1023"></a>
-<span class="sourceLineNo">1024</span>      // if the log size has exceeded the roll threshold<a name="line.1024"></a>
-<span class="sourceLineNo">1025</span>      // or the periodic roll timeout is expired, try to roll the wal.<a name="line.1025"></a>
-<span class="sourceLineNo">1026</span>      if (totalSynced.get() &gt; rollThreshold || getMillisToNextPeriodicRoll() &lt;= 0) {<a name="line.1026"></a>
-<span class="sourceLineNo">1027</span>        tryRollWriter();<a name="line.1027"></a>
-<span class="sourceLineNo">1028</span>      }<a name="line.1028"></a>
-<span class="sourceLineNo">1029</span><a name="line.1029"></a>
-<span class="sourceLineNo">1030</span>      removeInactiveLogs();<a name="line.1030"></a>
-<span class="sourceLineNo">1031</span>    }<a name="line.1031"></a>
-<span class="sourceLineNo">1032</span>  }<a name="line.1032"></a>
-<span class="sourceLineNo">1033</span><a name="line.1033"></a>
-<span class="sourceLineNo">1034</span>  private boolean rollWriter() throws IOException {<a name="line.1034"></a>
-<span class="sourceLineNo">1035</span>    if (!isRunning()) {<a name="line.1035"></a>
-<span class="sourceLineNo">1036</span>      return false;<a name="line.1036"></a>
-<span class="sourceLineNo">1037</span>    }<a name="line.1037"></a>
-<span class="sourceLineNo">1038</span><a name="line.1038"></a>
-<span class="sourceLineNo">1039</span>    // Create new state-log<a name="line.1039"></a>
-<span class="sourceLineNo">1040</span>    if (!rollWriter(flushLogId + 1)) {<a name="line.1040"></a>
-<span class="sourceLineNo">1041</span>      LOG.warn("someone else has already created log {}", flushLogId);<a name="line.1041"></a>
-<span class="sourceLineNo">1042</span>      return false;<a name="line.1042"></a>
-<span class="sourceLineNo">1043</span>    }<a name="line.1043"></a>
-<span class="sourceLineNo">1044</span><a name="line.1044"></a>
-<span class="sourceLineNo">1045</span>    // We have the lease on the log,<a name="line.1045"></a>
-<span class="sourceLineNo">1046</span>    // but we should check if someone else has created new files<a name="line.1046"></a>
-<span class="sourceLineNo">1047</span>    if (getMaxLogId(getLogFiles()) &gt; flushLogId) {<a name="line.1047"></a>
-<span class="sourceLineNo">1048</span>      LOG.warn("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.1048"></a>
-<span class="sourceLineNo">1049</span>      logs.getLast().removeFile(this.walArchiveDir);<a name="line.1049"></a>
-<span class="sourceLineNo">1050</span>      return false;<a name="line.1050"></a>
-<span class="sourceLineNo">1051</span>    }<a name="line.1051"></a>
-<span class="sourceLineNo">1052</span><a name="line.1052"></a>
-<span class="sourceLineNo">1053</span>    // We have the lease on the log<a name="line.1053"></a>
-<span class="sourceLineNo">1054</span>    return true;<a name="line.1054"></a>
-<span class="sourceLineNo">1055</span>  }<a name="line.1055"></a>
-<span class="sourceLineNo">1056</span><a name="line.1056"></a>
-<span class="sourceLineNo">1057</span>  boolean rollWriter(long logId) throws IOException {<a name="line.1057"></a>
-<span class="sourceLineNo">1058</span>    assert logId &gt; flushLogId : "logId=" + logId + " flushLogId=" + flushLogId;<a name="line.1058"></a>
-<span class="sourceLineNo">1059</span>    assert lock.isHeldByCurrentThread() : "expected to be the lock owner. " + lock.isLocked();<a name="line.1059"></a>
-<span class="sourceLineNo">1060</span><a name="line.1060"></a>
-<span class="sourceLineNo">1061</span>    ProcedureWALHeader header = ProcedureWALHeader.newBuilder()<a name="line.1061"></a>
-<span class="sourceLineNo">1062</span>      .setVersion(ProcedureWALFormat.HEADER_VERSION)<a name="line.1062"></a>
-<span class="sourceLineNo">1063</span>      .setType(ProcedureWALFormat.LOG_TYPE_STREAM)<a name="line.1063"></a>
-<span class="sourceLineNo">1064</span>      .setMinProcId(storeTracker.getActiveMinProcId())<a name="line.1064"></a>
-<span class="sourceLineNo">1065</span>      .setLogId(logId)<a name="line.1065"></a>
-<span class="sourceLineNo">1066</span>      .build();<a name="line.1066"></a>
-<span class="sourceLineNo">1067</span><a name="line.1067"></a>
-<span class="sourceLineNo">1068</span>    FSDataOutputStream newStream = null;<a name="line.1068"></a>
-<span class="sourceLineNo">1069</span>    Path newLogFile = null;<a name="line.1069"></a>
-<span class="sourceLineNo">1070</span>    long startPos = -1;<a name="line.1070"></a>
-<span class="sourceLineNo">1071</span>    newLogFile = getLogFilePath(logId);<a name="line.1071"></a>
-<span class="sourceLineNo">1072</span>    try {<a name="line.1072"></a>
-<span class="sourceLineNo">1073</span>      newStream = CommonFSUtils.createForWal(fs, newLogFile, false);<a name="line.1073"></a>
-<span class="sourceLineNo">1074</span>    } catch (FileAlreadyExistsException e) {<a name="line.1074"></a>
-<span class="sourceLineNo">1075</span>      LOG.error("Log file with id={} already exists", logId, e);<a name="line.1075"></a>
-<span class="sourceLineNo">1076</span>      return false;<a name="line.1076"></a>
-<span class="sourceLineNo">1077</span>    } catch (RemoteException re) {<a name="line.1077"></a>
-<span class="sourceLineNo">1078</span>      LOG.warn("failed to create log file with id={}", logId, re);<a name="line.1078"></a>
-<span class="sourceLineNo">1079</span>      return false;<a name="line.1079"></a>
-<span class="sourceLineNo">1080</span>    }<a name="line.1080"></a>
-<span class="sourceLineNo">1081</span>    // After we create the stream but before we attempt to use it at all<a name="line.1081"></a>
-<span class="sourceLineNo">1082</span>    // ensure that we can provide the level of data safety we're configured<a name="line.1082"></a>
-<span class="sourceLineNo">1083</span>    // to provide.<a name="line.1083"></a>
-<span class="sourceLineNo">1084</span>    final String durability = useHsync ? StreamCapabilities.HSYNC : StreamCapabilities.HFLUSH;<a name="line.1084"></a>
-<span class="sourceLineNo">1085</span>    if (enforceStreamCapability &amp;&amp; !newStream.hasCapability(durability)) {<a name="line.1085"></a>
-<span class="sourceLineNo">1086</span>      throw new IllegalStateException("The procedure WAL relies on the ability to " + durability +<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>          " for proper operation during component failures, but the underlying filesystem does " +<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span>          "not support doing so. Please check the config value of '" + USE_HSYNC_CONF_KEY +<a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>          "' to set the desired level of robustness and ensure the config value of '" +<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span>          CommonFSUtils.HBASE_WAL_DIR + "' points to a FileSystem mount that can provide it.");<a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>    }<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>    try {<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>      ProcedureWALFormat.writeHeader(newStream, header);<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span>      startPos = newStream.getPos();<a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>    } catch (IOException ioe) {<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>      LOG.warn("Encountered exception writing header", ioe);<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span>      newStream.close();<a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>      return false;<a name="line.1098"></a>
+<span class="sourceLineNo">709</span>  private enum PushType { INSERT, UPDATE, DELETE }<a name="line.709"></a>
+<span class="sourceLineNo">710</span><a name="line.710"></a>
+<span class="sourceLineNo">711</span>  private long pushData(final PushType type, final ByteSlot slot,<a name="line.711"></a>
+<span class="sourceLineNo">712</span>      final long procId, final long[] subProcIds) {<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    if (!isRunning()) {<a name="line.713"></a>
+<span class="sourceLineNo">714</span>      throw new RuntimeException("the store must be running before inserting data");<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    }<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    if (logs.isEmpty()) {<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      throw new RuntimeException("recoverLease() must be called before inserting data");<a name="line.717"></a>
+<span class="sourceLineNo">718</span>    }<a name="line.718"></a>
+<span class="sourceLineNo">719</span><a name="line.719"></a>
+<span class="sourceLineNo">720</span>    long logId = -1;<a name="line.720"></a>
+<span class="sourceLineNo">721</span>    lock.lock();<a name="line.721"></a>
+<span class="sourceLineNo">722</span>    try {<a name="line.722"></a>
+<span class="sourceLineNo">723</span>      // Wait for the sync to be completed<a name="line.723"></a>
+<span class="sourceLineNo">724</span>      while (true) {<a name="line.724"></a>
+<span class="sourceLineNo">725</span>        if (!isRunning()) {<a name="line.725"></a>
+<span class="sourceLineNo">726</span>          throw new RuntimeException("store no longer running");<a name="line.726"></a>
+<span class="sourceLineNo">727</span>        } else if (isSyncAborted()) {<a name="line.727"></a>
+<span class="sourceLineNo">728</span>          throw new RuntimeException("sync aborted", syncException.get());<a name="line.728"></a>
+<span class="sourceLineNo">729</span>        } else if (inSync.get()) {<a name="line.729"></a>
+<span class="sourceLineNo">730</span>          syncCond.await();<a name="line.730"></a>
+<span class="sourceLineNo">731</span>        } else if (slotIndex &gt;= syncMaxSlot) {<a name="line.731"></a>
+<span class="sourceLineNo">732</span>          slotCond.signal();<a name="line.732"></a>
+<span class="sourceLineNo">733</span>          syncCond.await();<a name="line.733"></a>
+<span class="sourceLineNo">734</span>        } else {<a name="line.734"></a>
+<span class="sourceLineNo">735</span>          break;<a name="line.735"></a>
+<span class="sourceLineNo">736</span>        }<a name="line.736"></a>
+<span class="sourceLineNo">737</span>      }<a name="line.737"></a>
+<span class="sourceLineNo">738</span><a name="line.738"></a>
+<span class="sourceLineNo">739</span>      final long pushSyncId = syncId.get();<a name="line.739"></a>
+<span class="sourceLineNo">740</span>      updateStoreTracker(type, procId, subProcIds);<a name="line.740"></a>
+<span class="sourceLineNo">741</span>      slots[slotIndex++] = slot;<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      logId = flushLogId;<a name="line.742"></a>
+<span class="sourceLineNo">743</span><a name="line.743"></a>
+<span class="sourceLineNo">744</span>      // Notify that there is new data<a name="line.744"></a>
+<span class="sourceLineNo">745</span>      if (slotIndex == 1) {<a name="line.745"></a>
+<span class="sourceLineNo">746</span>        waitCond.signal();<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      }<a name="line.747"></a>
+<span class="sourceLineNo">748</span><a name="line.748"></a>
+<span class="sourceLineNo">749</span>      // Notify that the slots are full<a name="line.749"></a>
+<span class="sourceLineNo">750</span>      if (slotIndex == syncMaxSlot) {<a name="line.750"></a>
+<span class="sourceLineNo">751</span>        waitCond.signal();<a name="line.751"></a>
+<span class="sourceLineNo">752</span>        slotCond.signal();<a name="line.752"></a>
+<span class="sourceLineNo">753</span>      }<a name="line.753"></a>
+<span class="sourceLineNo">754</span><a name="line.754"></a>
+<span class="sourceLineNo">755</span>      while (pushSyncId == syncId.get() &amp;&amp; isRunning()) {<a name="line.755"></a>
+<span class="sourceLineNo">756</span>        syncCond.await();<a name="line.756"></a>
+<span class="sourceLineNo">757</span>      }<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    } catch (InterruptedException e) {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      Thread.currentThread().interrupt();<a name="line.759"></a>
+<span class="sourceLineNo">760</span>      sendAbortProcessSignal();<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      throw new RuntimeException(e);<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    } finally {<a name="line.762"></a>
+<span class="sourceLineNo">763</span>      lock.unlock();<a name="line.763"></a>
+<span class="sourceLineNo">764</span>      if (isSyncAborted()) {<a name="line.764"></a>
+<span class="sourceLineNo">765</span>        throw new RuntimeException("sync aborted", syncException.get());<a name="line.765"></a>
+<span class="sourceLineNo">766</span>      }<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    }<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    return logId;<a name="line.768"></a>
+<span class="sourceLineNo">769</span>  }<a name="line.769"></a>
+<span class="sourceLineNo">770</span><a name="line.770"></a>
+<span class="sourceLineNo">771</span>  private void updateStoreTracker(final PushType type,<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      final long procId, final long[] subProcIds) {<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    switch (type) {<a name="line.773"></a>
+<span class="sourceLineNo">774</span>      case INSERT:<a name="line.774"></a>
+<span class="sourceLineNo">775</span>        if (subProcIds == null) {<a name="line.775"></a>
+<span class="sourceLineNo">776</span>          storeTracker.insert(procId);<a name="line.776"></a>
+<span class="sourceLineNo">777</span>        } else if (procId == Procedure.NO_PROC_ID) {<a name="line.777"></a>
+<span class="sourceLineNo">778</span>          storeTracker.insert(subProcIds);<a name="line.778"></a>
+<span class="sourceLineNo">779</span>        } else {<a name="line.779"></a>
+<span class="sourceLineNo">780</span>          storeTracker.insert(procId, subProcIds);<a name="line.780"></a>
+<span class="sourceLineNo">781</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.781"></a>
+<span class="sourceLineNo">782</span>        }<a name="line.782"></a>
+<span class="sourceLineNo">783</span>        break;<a name="line.783"></a>
+<span class="sourceLineNo">784</span>      case UPDATE:<a name="line.784"></a>
+<span class="sourceLineNo">785</span>        storeTracker.update(procId);<a name="line.785"></a>
+<span class="sourceLineNo">786</span>        holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.786"></a>
+<span class="sourceLineNo">787</span>        break;<a name="line.787"></a>
+<span class="sourceLineNo">788</span>      case DELETE:<a name="line.788"></a>
+<span class="sourceLineNo">789</span>        if (subProcIds != null &amp;&amp; subProcIds.length &gt; 0) {<a name="line.789"></a>
+<span class="sourceLineNo">790</span>          storeTracker.delete(subProcIds);<a name="line.790"></a>
+<span class="sourceLineNo">791</span>          holdingCleanupTracker.setDeletedIfModified(subProcIds);<a name="line.791"></a>
+<span class="sourceLineNo">792</span>        } else {<a name="line.792"></a>
+<span class="sourceLineNo">793</span>          storeTracker.delete(procId);<a name="line.793"></a>
+<span class="sourceLineNo">794</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.794"></a>
+<span class="sourceLineNo">795</span>        }<a name="line.795"></a>
+<span class="sourceLineNo">796</span>        break;<a name="line.796"></a>
+<span class="sourceLineNo">797</span>      default:<a name="line.797"></a>
+<span class="sourceLineNo">798</span>        throw new RuntimeException("invalid push type " + type);<a name="line.798"></a>
+<span class="sourceLineNo">799</span>    }<a name="line.799"></a>
+<span class="sourceLineNo">800</span>  }<a name="line.800"></a>
+<span class="sourceLineNo">801</span><a name="line.801"></a>
+<span class="sourceLineNo">802</span>  private boolean isSyncAborted() {<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    return syncException.get() != null;<a name="line.803"></a>
+<span class="sourceLineNo">804</span>  }<a name="line.804"></a>
+<span class="sourceLineNo">805</span><a name="line.805"></a>
+<span class="sourceLineNo">806</span>  private void syncLoop() throws Throwable {<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    long totalSyncedToStore = 0;<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    inSync.set(false);<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    lock.lock();<a name="line.809"></a>
+<span class="sourceLineNo">810</span>    try {<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      while (isRunning()) {<a name="line.811"></a>
+<span class="sourceLineNo">812</span>        try {<a name="line.812"></a>
+<span class="sourceLineNo">813</span>          // Wait until new data is available<a name="line.813"></a>
+<span class="sourceLineNo">814</span>          if (slotIndex == 0) {<a name="line.814"></a>
+<span class="sourceLineNo">815</span>            if (!loading.get()) {<a name="line.815"></a>
+<span class="sourceLineNo">816</span>              periodicRoll();<a name="line.816"></a>
+<span class="sourceLineNo">817</span>            }<a name="line.817"></a>
+<span class="sourceLineNo">818</span><a name="line.818"></a>
+<span class="sourceLineNo">819</span>            if (LOG.isTraceEnabled()) {<a name="line.819"></a>
+<span class="sourceLineNo">820</span>              float rollTsSec = getMillisFromLastRoll() / 1000.0f;<a name="line.820"></a>
+<span class="sourceLineNo">821</span>              LOG.trace(String.format("Waiting for data. flushed=%s (%s/sec)",<a name="line.821"></a>
+<span class="sourceLineNo">822</span>                        StringUtils.humanSize(totalSynced.get()),<a name="line.822"></a>
+<span class="sourceLineNo">823</span>                        StringUtils.humanSize(totalSynced.get() / rollTsSec)));<a name="line.823"></a>
+<span class="sourceLineNo">824</span>            }<a name="line.824"></a>
+<span class="sourceLineNo">825</span><a name="line.825"></a>
+<span class="sourceLineNo">826</span>            waitCond.await(getMillisToNextPeriodicRoll(), TimeUnit.MILLISECONDS);<a name="line.826"></a>
+<span class="sourceLineNo">827</span>            if (slotIndex == 0) {<a name="line.827"></a>
+<span class="sourceLineNo">828</span>              // no data.. probably a stop() or a periodic roll<a name="line.828"></a>
+<span class="sourceLineNo">829</span>              continue;<a name="line.829"></a>
+<span class="sourceLineNo">830</span>            }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>          }<a name="line.831"></a>
+<span class="sourceLineNo">832</span>          // Wait SYNC_WAIT_MSEC or the signal of "slots full" before flushing<a name="line.832"></a>
+<span class="sourceLineNo">833</span>          syncMaxSlot = runningProcCount;<a name="line.833"></a>
+<span class="sourceLineNo">834</span>          assert syncMaxSlot &gt; 0 : "unexpected syncMaxSlot=" + syncMaxSlot;<a name="line.834"></a>
+<span class="sourceLineNo">835</span>          final long syncWaitSt = EnvironmentEdgeManager.currentTime();<a name="line.835"></a>
+<span class="sourceLineNo">836</span>          if (slotIndex != syncMaxSlot) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>            slotCond.await(syncWaitMsec, TimeUnit.MILLISECONDS);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>          }<a name="line.838"></a>
+<span class="sourceLineNo">839</span><a name="line.839"></a>
+<span class="sourceLineNo">840</span>          final long currentTs = EnvironmentEdgeManager.currentTime();<a name="line.840"></a>
+<span class="sourceLineNo">841</span>          final long syncWaitMs = currentTs - syncWaitSt;<a name="line.841"></a>
+<span class="sourceLineNo">842</span>          final float rollSec = getMillisFromLastRoll() / 1000.0f;<a name="line.842"></a>
+<span class="sourceLineNo">843</span>          final float syncedPerSec = totalSyncedToStore / rollSec;<a name="line.843"></a>
+<span class="sourceLineNo">844</span>          if (LOG.isTraceEnabled() &amp;&amp; (syncWaitMs &gt; 10 || slotIndex &lt; syncMaxSlot)) {<a name="line.844"></a>
+<span class="sourceLineNo">845</span>            LOG.trace(String.format("Sync wait %s, slotIndex=%s , totalSynced=%s (%s/sec)",<a name="line.845"></a>
+<span class="sourceLineNo">846</span>                      StringUtils.humanTimeDiff(syncWaitMs), slotIndex,<a name="line.846"></a>
+<span class="sourceLineNo">847</span>                      StringUtils.humanSize(totalSyncedToStore),<a name="line.847"></a>
+<span class="sourceLineNo">848</span>                      StringUtils.humanSize(syncedPerSec)));<a name="line.848"></a>
+<span class="sourceLineNo">849</span>          }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>          // update webui circular buffers (TODO: get rid of allocations)<a name="line.851"></a>
+<span class="sourceLineNo">852</span>          final SyncMetrics syncMetrics = new SyncMetrics();<a name="line.852"></a>
+<span class="sourceLineNo">853</span>          syncMetrics.timestamp = currentTs;<a name="line.853"></a>
+<span class="sourceLineNo">854</span>          syncMetrics.syncWaitMs = syncWaitMs;<a name="line.854"></a>
+<span class="sourceLineNo">855</span>          syncMetrics.syncedEntries = slotIndex;<a name="line.855"></a>
+<span class="sourceLineNo">856</span>          syncMetrics.totalSyncedBytes = totalSyncedToStore;<a name="line.856"></a>
+<span class="sourceLineNo">857</span>          syncMetrics.syncedPerSec = syncedPerSec;<a name="line.857"></a>
+<span class="sourceLineNo">858</span>          syncMetricsQueue.add(syncMetrics);<a name="line.858"></a>
+<span class="sourceLineNo">859</span><a name="line.859"></a>
+<span class="sourceLineNo">860</span>          // sync<a name="line.860"></a>
+<span class="sourceLineNo">861</span>          inSync.set(true);<a name="line.861"></a>
+<span class="sourceLineNo">862</span>          long slotSize = syncSlots();<a name="line.862"></a>
+<span class="sourceLineNo">863</span>          logs.getLast().addToSize(slotSize);<a name="line.863"></a>
+<span class="sourceLineNo">864</span>          totalSyncedToStore = totalSynced.addAndGet(slotSize);<a name="line.864"></a>
+<span class="sourceLineNo">865</span>          slotIndex = 0;<a name="line.865"></a>
+<span class="sourceLineNo">866</span>          inSync.set(false);<a name="line.866"></a>
+<span class="sourceLineNo">867</span>          syncId.incrementAndGet();<a name="line.867"></a>
+<span class="sourceLineNo">868</span>        } catch (InterruptedException e) {<a name="line.868"></a>
+<span class="sourceLineNo">869</span>          Thread.currentThread().interrupt();<a name="line.869"></a>
+<span class="sourceLineNo">870</span>          syncException.compareAndSet(null, e);<a name="line.870"></a>
+<span class="sourceLineNo">871</span>          sendAbortProcessSignal();<a name="line.871"></a>
+<span class="sourceLineNo">872</span>          throw e;<a name="line.872"></a>
+<span class="sourceLineNo">873</span>        } catch (Throwable t) {<a name="line.873"></a>
+<span class="sourceLineNo">874</span>          syncException.compareAndSet(null, t);<a name="line.874"></a>
+<span class="sourceLineNo">875</span>          sendAbortProcessSignal();<a name="line.875"></a>
+<span class="sourceLineNo">876</span>          throw t;<a name="line.876"></a>
+<span class="sourceLineNo">877</span>        } finally {<a name="line.877"></a>
+<span class="sourceLineNo">878</span>          syncCond.signalAll();<a name="line.878"></a>
+<span class="sourceLineNo">879</span>        }<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      }<a name="line.880"></a>
+<span class="sourceLineNo">881</span>    } finally {<a name="line.881"></a>
+<span class="sourceLineNo">882</span>      lock.unlock();<a name="line.882"></a>
+<span class="sourceLineNo">883</span>    }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>  }<a name="line.884"></a>
+<span class="sourceLineNo">885</span><a name="line.885"></a>
+<span class="sourceLineNo">886</span>  public ArrayList&lt;SyncMetrics&gt; getSyncMetrics() {<a name="line.886"></a>
+<span class="sourceLineNo">887</span>    lock.lock();<a name="line.887"></a>
+<span class="sourceLineNo">888</span>    try {<a name="line.888"></a>
+<span class="sourceLineNo">889</span>      return new ArrayList&lt;&gt;(syncMetricsQueue);<a name="line.889"></a>
+<span class="sourceLineNo">890</span>    } finally {<a name="line.890"></a>
+<span class="sourceLineNo">891</span>      lock.unlock();<a name="line.891"></a>
+<span class="sourceLineNo">892</span>    }<a name="line.892"></a>
+<span class="sourceLineNo">893</span>  }<a name="line.893"></a>
+<span class="sourceLineNo">894</span><a name="line.894"></a>
+<span class="sourceLineNo">895</span>  private long syncSlots() throws Throwable {<a name="line.895"></a>
+<span class="sourceLineNo">896</span>    int retry = 0;<a name="line.896"></a>
+<span class="sourceLineNo">897</span>    int logRolled = 0;<a name="line.897"></a>
+<span class="sourceLineNo">898</span>    long totalSynced = 0;<a name="line.898"></a>
+<span class="sourceLineNo">899</span>    do {<a name="line.899"></a>
+<span class="sourceLineNo">900</span>      try {<a name="line.900"></a>
+<span class="sourceLineNo">901</span>        totalSynced = syncSlots(stream, slots, 0, slotIndex);<a name="line.901"></a>
+<span class="sourceLineNo">902</span>        break;<a name="line.902"></a>
+<span class="sourceLineNo">903</span>      } catch (Throwable e) {<a name="line.903"></a>
+<span class="sourceLineNo">904</span>        LOG.warn("unable to sync slots, retry=" + retry);<a name="line.904"></a>
+<span class="sourceLineNo">905</span>        if (++retry &gt;= maxRetriesBeforeRoll) {<a name="line.905"></a>
+<span class="sourceLineNo">906</span>          if (logRolled &gt;= maxSyncFailureRoll &amp;&amp; isRunning()) {<a name="line.906"></a>
+<span class="sourceLineNo">907</span>            LOG.error("Sync slots after log roll failed, abort.", e);<a name="line.907"></a>
+<span class="sourceLineNo">908</span>            throw e;<a name="line.908"></a>
+<span class="sourceLineNo">909</span>          }<a name="line.909"></a>
+<span class="sourceLineNo">910</span><a name="line.910"></a>
+<span class="sourceLineNo">911</span>          if (!rollWriterWithRetries()) {<a name="line.911"></a>
+<span class="sourceLineNo">912</span>            throw e;<a name="line.912"></a>
+<span class="sourceLineNo">913</span>          }<a name="line.913"></a>
+<span class="sourceLineNo">914</span><a name="line.914"></a>
+<span class="sourceLineNo">915</span>          logRolled++;<a name="line.915"></a>
+<span class="sourceLineNo">916</span>          retry = 0;<a name="line.916"></a>
+<span class="sourceLineNo">917</span>        }<a name="line.917"></a>
+<span class="sourceLineNo">918</span>      }<a name="line.918"></a>
+<span class="sourceLineNo">919</span>    } while (isRunning());<a name="line.919"></a>
+<span class="sourceLineNo">920</span>    return totalSynced;<a name="line.920"></a>
+<span class="sourceLineNo">921</span>  }<a name="line.921"></a>
+<span class="sourceLineNo">922</span><a name="line.922"></a>
+<span class="sourceLineNo">923</span>  protected long syncSlots(final FSDataOutputStream stream, final ByteSlot[] slots,<a name="line.923"></a>
+<span class="sourceLineNo">924</span>      final int offset, final int count) throws IOException {<a name="line.924"></a>
+<span class="sourceLineNo">925</span>    long totalSynced = 0;<a name="line.925"></a>
+<span class="sourceLineNo">926</span>    for (int i = 0; i &lt; count; ++i) {<a name="line.926"></a>
+<span class="sourceLineNo">927</span>      final ByteSlot data = slots[offset + i];<a name="line.927"></a>
+<span class="sourceLineNo">928</span>      data.writeTo(stream);<a name="line.928"></a>
+<span class="sourceLineNo">929</span>      totalSynced += data.size();<a name="line.929"></a>
+<span class="sourceLineNo">930</span>    }<a name="line.930"></a>
+<span class="sourceLineNo">931</span><a name="line.931"></a>
+<span class="sourceLineNo">932</span>    syncStream(stream);<a name="line.932"></a>
+<span class="sourceLineNo">933</span>    sendPostSyncSignal();<a name="line.933"></a>
+<span class="sourceLineNo">934</span><a name="line.934"></a>
+<span class="sourceLineNo">935</span>    if (LOG.isTraceEnabled()) {<a name="line.935"></a>
+<span class="sourceLineNo">936</span>      LOG.trace("Sync slots=" + count + '/' + syncMaxSlot +<a name="line.936"></a>
+<span class="sourceLineNo">937</span>                ", flushed=" + StringUtils.humanSize(totalSynced));<a name="line.937"></a>
+<span class="sourceLineNo">938</span>    }<a name="line.938"></a>
+<span class="sourceLineNo">939</span>    return totalSynced;<a name="line.939"></a>
+<span class="sourceLineNo">940</span>  }<a name="line.940"></a>
+<span class="sourceLineNo">941</span><a name="line.941"></a>
+<span class="sourceLineNo">942</span>  protected void syncStream(final FSDataOutputStream stream) throws IOException {<a name="line.942"></a>
+<span class="sourceLineNo">943</span>    if (useHsync) {<a name="line.943"></a>
+<span class="sourceLineNo">944</span>      stream.hsync();<a name="line.944"></a>
+<span class="sourceLineNo">945</span>    } else {<a name="line.945"></a>
+<span class="sourceLineNo">946</span>      stream.hflush();<a name="line.946"></a>
+<span class="sourceLineNo">947</span>    }<a name="line.947"></a>
+<span class="sourceLineNo">948</span>  }<a name="line.948"></a>
+<span class="sourceLineNo">949</span><a name="line.949"></a>
+<span class="sourceLineNo">950</span>  private boolean rollWriterWithRetries() {<a name="line.950"></a>
+<span class="sourceLineNo">951</span>    for (int i = 0; i &lt; rollRetries &amp;&amp; isRunning(); ++i) {<a name="line.951"></a>
+<span class="sourceLineNo">952</span>      if (i &gt; 0) {<a name="line.952"></a>
+<span class="sourceLineNo">953</span>        Threads.sleepWithoutInterrupt(waitBeforeRoll * i);<a name="line.953"></a>
+<span class="sourceLineNo">954</span>      }<a name="line.954"></a>
+<span class="sourceLineNo">955</span><a name="line.955"></a>
+<span class="sourceLineNo">956</span>      try {<a name="line.956"></a>
+<span class="sourceLineNo">957</span>        if (rollWriter()) {<a name="line.957"></a>
+<span class="sourceLineNo">958</span>          return true;<a name="line.958"></a>
+<span class="sourceLineNo">959</span>        }<a name="line.959"></a>
+<span class="sourceLineNo">960</span>      } catch (IOException e) {<a name="line.960"></a>
+<span class="sourceLineNo">961</span>        LOG.warn("Unable to roll the log, attempt=" + (i + 1), e);<a name="line.961"></a>
+<span class="sourceLineNo">962</span>      }<a name="line.962"></a>
+<span class="sourceLineNo">963</span>    }<a name="line.963"></a>
+<span class="sourceLineNo">964</span>    LOG.error(HBaseMarkers.FATAL, "Unable to roll the log");<a name="line.964"></a>
+<span class="sourceLineNo">965</span>    return false;<a name="line.965"></a>
+<span class="sourceLineNo">966</span>  }<a name="line.966"></a>
+<span class="sourceLineNo">967</span><a name="line.967"></a>
+<span class="sourceLineNo">968</span>  private boolean tryRollWriter() {<a name="line.968"></a>
+<span class="sourceLineNo">969</span>    try {<a name="line.969"></a>
+<span class="sourceLineNo">970</span>      return rollWriter();<a name="line.970"></a>
+<span class="sourceLineNo">971</span>    } catch (IOException e) {<a name="line.971"></a>
+<span class="sourceLineNo">972</span>      LOG.warn("Unable to roll the log", e);<a name="line.972"></a>
+<span class="sourceLineNo">973</span>      return false;<a name="line.973"></a>
+<span class="sourceLineNo">974</span>    }<a name="line.974"></a>
+<span class="sourceLineNo">975</span>  }<a name="line.975"></a>
+<span class="sourceLineNo">976</span><a name="line.976"></a>
+<span class="sourceLineNo">977</span>  public long getMillisToNextPeriodicRoll() {<a name="line.977"></a>
+<span class="sourceLineNo">978</span>    if (lastRollTs.get() &gt; 0 &amp;&amp; periodicRollMsec &gt; 0) {<a name="line.978"></a>
+<span class="sourceLineNo">979</span>      return periodicRollMsec - getMillisFromLastRoll();<a name="line.979"></a>
+<span class="sourceLineNo">980</span>    }<a name="line.980"></a>
+<span class="sourceLineNo">981</span>    return Long.MAX_VALUE;<a name="line.981"></a>
+<span class="sourceLineNo">982</span>  }<a name="line.982"></a>
+<span class="sourceLineNo">983</span><a name="line.983"></a>
+<span class="sourceLineNo">984</span>  public long getMillisFromLastRoll() {<a name="line.984"></a>
+<span class="sourceLineNo">985</span>    return (EnvironmentEdgeManager.currentTime() - lastRollTs.get());<a name="line.985"></a>
+<span class="sourceLineNo">986</span>  }<a name="line.986"></a>
+<span class="sourceLineNo">987</span><a name="line.987"></a>
+<span class="sourceLineNo">988</span>  void periodicRollForTesting() throws IOException {<a name="line.988"></a>
+<span class="sourceLineNo">989</span>    lock.lock();<a name="line.989"></a>
+<span class="sourceLineNo">990</span>    try {<a name="line.990"></a>
+<span class="sourceLineNo">991</span>      periodicRoll();<a name="line.991"></a>
+<span class="sourceLineNo">992</span>    } finally {<a name="line.992"></a>
+<span class="sourceLineNo">993</span>      lock.unlock();<a name="line.993"></a>
+<span class="sourceLineNo">994</span>    }<a name="line.994"></a>
+<span class="sourceLineNo">995</span>  }<a name="line.995"></a>
+<span class="sourceLineNo">996</span><a name="line.996"></a>
+<span class="sourceLineNo">997</span>  public boolean rollWriterForTesting() throws IOException {<a name="line.997"></a>
+<span class="sourceLineNo">998</span>    lock.lock();<a name="line.998"></a>
+<span class="sourceLineNo">999</span>    try {<a name="line.999"></a>
+<span class="sourceLineNo">1000</span>      return rollWriter();<a name="line.1000"></a>
+<span class="sourceLineNo">1001</span>    } finally {<a name="line.1001"></a>
+<span class="sourceLineNo">1002</span>      lock.unlock();<a name="line.1002"></a>
+<span class="sourceLineNo">1003</span>    }<a name="line.1003"></a>
+<span class="sourceLineNo">1004</span>  }<a name="line.1004"></a>
+<span class="sourceLineNo">1005</span><a name="line.1005"></a>
+<span class="sourceLineNo">1006</span>  void removeInactiveLogsForTesting() throws Exception {<a name="line.1006"></a>
+<span class="sourceLineNo">1007</span>    lock.lock();<a name="line.1007"></a>
+<span class="sourceLineNo">1008</span>    try {<a name="line.1008"></a>
+<span class="sourceLineNo">1009</span>      removeInactiveLogs();<a name="line.1009"></a>
+<span class="sourceLineNo">1010</span>    } finally  {<a name="line.1010"></a>
+<span class="sourceLineNo">1011</span>      lock.unlock();<a name="line.1011"></a>
+<span class="sourceLineNo">1012</span>    }<a name="line.1012"></a>
+<span class="sourceLineNo">1013</span>  }<a name="line.1013"></a>
+<span class="sourceLineNo">1014</span><a name="line.1014"></a>
+<span class="sourceLineNo">1015</span>  private void periodicRoll() throws IOException {<a name="line.1015"></a>
+<span class="sourceLineNo">1016</span>    if (storeTracker.isEmpty()) {<a name="line.1016"></a>
+<span class="sourceLineNo">1017</span>      LOG.trace("no active procedures");<a name="line.1017"></a>
+<span class="sourceLineNo">1018</span>      tryRollWriter();<a name="line.1018"></a>
+<span class="sourceLineNo">1019</span>      removeAllLogs(flushLogId - 1, "no active procedures");<a name="line.1019"></a>
+<span class="sourceLineNo">1020</span>    } else {<a name="line.1020"></a>
+<span class="sourceLineNo">1021</span>      if (storeTracker.isAllModified()) {<a name="line.1021"></a>
+<span class="sourceLineNo">1022</span>        LOG.trace("all the active procedures are in the latest log");<a name="line.1022"></a>
+<span class="sourceLineNo">1023</span>        removeAllLogs(flushLogId - 1, "all the active procedures are in the latest log");<a name="line.1023"></a>
+<span class="sourceLineNo">1024</span>      }<a name="line.1024"></a>
+<span class="sourceLineNo">1025</span><a name="line.1025"></a>
+<span class="sourceLineNo">1026</span>      // if the log size has exceeded the roll threshold<a name="line.1026"></a>
+<span class="sourceLineNo">1027</span>      // or the periodic roll timeout is expired, try to roll the wal.<a name="line.1027"></a>
+<span class="sourceLineNo">1028</span>      if (totalSynced.get() &gt; rollThreshold || getMillisToNextPeriodicRoll() &lt;= 0) {<a name="line.1028"></a>
+<span class="sourceLineNo">1029</span>        tryRollWriter();<a name="line.1029"></a>
+<span class="sourceLineNo">1030</span>      }<a name="line.1030"></a>
+<span class="sourceLineNo">1031</span><a name="line.1031"></a>
+<span class="sourceLineNo">1032</span>      removeInactiveLogs();<a name="line.1032"></a>
+<span class="sourceLineNo">1033</span>    }<a name="line.1033"></a>
+<span class="sourceLineNo">1034</span>  }<a name="line.1034"></a>
+<span class="sourceLineNo">1035</span><a name="line.1035"></a>
+<span class="sourceLineNo">1036</span>  private boolean rollWriter() throws IOException {<a name="line.1036"></a>
+<span class="sourceLineNo">1037</span>    if (!isRunning()) {<a name="line.1037"></a>
+<span class="sourceLineNo">1038</span>      return false;<a name="line.1038"></a>
+<span class="sourceLineNo">1039</span>    }<a name="line.1039"></a>
+<span class="sourceLineNo">1040</span><a name="line.1040"></a>
+<span class="sourceLineNo">1041</span>    // Create new state-log<a name="line.1041"></a>
+<span class="sourceLineNo">1042</span>    if (!rollWriter(flushLogId + 1)) {<a name="line.1042"></a>
+<span class="sourceLineNo">1043</span>      LOG.warn("someone else has already created log {}", flushLogId);<a name="line.1043"></a>
+<span class="sourceLineNo">1044</span>      return false;<a name="line.1044"></a>
+<span class="sourceLineNo">1045</span>    }<a name="line.1045"></a>
+<span class="sourceLineNo">1046</span><a name="line.1046"></a>
+<span class="sourceLineNo">1047</span>    // We have the lease on the log,<a name="line.1047"></a>
+<span class="sourceLineNo">1048</span>    // but we should check if someone else has created new files<a name="line.1048"></a>
+<span class="sourceLineNo">1049</span>    if (getMaxLogId(getLogFiles()) &gt; flushLogId) {<a name="line.1049"></a>
+<span class="sourceLineNo">1050</span>      LOG.warn("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.1050"></a>
+<span class="sourceLineNo">1051</span>      logs.getLast().removeFile(this.walArchiveDir);<a name="line.1051"></a>
+<span class="sourceLineNo">1052</span>      return false;<a name="line.1052"></a>
+<span class="sourceLineNo">1053</span>    }<a name="line.1053"></a>
+<span class="sourceLineNo">1054</span><a name="line.1054"></a>
+<span class="sourceLineNo">1055</span>    // We have the lease on the log<a name="line.1055"></a>
+<span class="sourceLineNo">1056</span>    return true;<a name="line.1056"></a>
+<span class="sourceLineNo">1057</span>  }<a name="line.1057"></a>
+<span class="sourceLineNo">1058</span><a name="line.1058"></a>
+<span class="sourceLineNo">1059</span>  boolean rollWriter(long logId) throws IOException {<a name="line.1059"></a>
+<span class="sourceLineNo">1060</span>    assert logId &gt; flushLogId : "logId=" + logId + " flushLogId=" + flushLogId;<a name="line.1060"></a>
+<span class="sourceLineNo">1061</span>    assert lock.isHeldByCurrentThread() : "expected to be the lock owner. " + lock.isLocked();<a name="line.1061"></a>
+<span class="sourceLineNo">1062</span><a name="line.1062"></a>
+<span class="sourceLineNo">1063</span>    ProcedureWALHeader header = ProcedureWALHeader.newBuilder()<a name="line.1063"></a>
+<span class="sourceLineNo">1064</span>      .setVersion(ProcedureWALFormat.HEADER_VERSION)<a name="line.1064"></a>
+<span class="sourceLineNo">1065</span>      .setType(ProcedureWALFormat.LOG_TYPE_STREAM)<a name="line.1065"></a>
+<span class="sourceLineNo">1066</span>      .setMinProcId(storeTracker.getActiveMinProcId())<a name="line.1066"></a>
+<span class="sourceLineNo">1067</span>      .setLogId(logId)<a name="line.1067"></a>
+<span class="sourceLineNo">1068</span>      .build();<a name="line.1068"></a>
+<span class="sourceLineNo">1069</span><a name="line.1069"></a>
+<span class="sourceLineNo">1070</span>    FSDataOutputStream newStream = null;<a name="line.1070"></a>
+<span class="sourceLineNo">1071</span>    Path newLogFile = null;<a name="line.1071"></a>
+<span class="sourceLineNo">1072</span>    long startPos = -1;<a name="line.1072"></a>
+<span class="sourceLineNo">1073</span>    newLogFile = getLogFilePath(logId);<a name="line.1073"></a>
+<span class="sourceLineNo">1074</span>    try {<a name="line.1074"></a>
+<span class="sourceLineNo">1075</span>      FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(newLogFile).overwrite(false);<a name="line.1075"></a>
+<span class="sourceLineNo">1076</span>      if (builder instanceof DistributedFileSystem.HdfsDataOutputStreamBuilder) {<a name="line.1076"></a>
+<span class="sourceLineNo">1077</span>        newStream = ((DistributedFileSystem.HdfsDataOutputStreamBuilder) builder)<a name="line.1077"></a>
+<span class="sourceLineNo">1078</span>          .replicate().build();<a name="line.1078"></a>
+<span class="sourceLineNo">1079</span>      } else {<a name="line.1079"></a>
+<span class="sourceLineNo">1080</span>        newStream = builder.build();<a name="line.1080"></a>
+<span class="sourceLineNo">1081</span>      }<a name="line.1081"></a>
+<span class="sourceLineNo">1082</span>    } catch (FileAlreadyExistsException e) {<a name="line.1082"></a>
+<span class="sourceLineNo">1083</span>      LOG.error("Log file with id={} already exists", logId, e);<a name="line.1083"></a>
+<span class="sourceLineNo">1084</span>      return false;<a name="line.1084"></a>
+<span class="sourceLineNo">1085</span>    } catch (RemoteException re) {<a name="line.1085"></a>
+<span class="sourceLineNo">1086</span>      LOG.warn("failed to create log file with id={}", logId, re);<a name="line.1086"></a>
+<span class="sourceLineNo">1087</span>      return false;<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>    }<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>    // After we create the stream but before we attempt to use it at all<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>    // ensure that we can provide the level of data safety we're configured<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span>    // to provide.<a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>    final String durability = useHsync ? StreamCapabilities.HSYNC : StreamCapabilities.HFLUSH;<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>    if (enforceStreamCapability &amp;&amp; !newStream.hasCapability(durability)) {<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>      throw new IllegalStateException("The procedure WAL relies on the ability to " + durability +<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>          " for proper operation during component failures, but the underlying filesystem does " +<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span>          "not support doing so. Please check the config value of '" + USE_HSYNC_CONF_KEY +<a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>          "' to set the desired level of robustness and ensure the config value of '" +<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span>          CommonFSUtils.HBASE_WAL_DIR + "' points to a FileSystem mount that can provide it.");<a name="line.1098"></a>
 <span class="sourceLineNo">1099</span>    }<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span><a name="line.1100"></a>
-<span class="sourceLineNo">1101</span>    closeCurrentLogStream(false);<a name="line.1101"></a>
-<span class="sourceLineNo">1102</span><a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>    storeTracker.resetModified();<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>    stream = newStream;<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span>    flushLogId = logId;<a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>    totalSynced.set(0);<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>    long rollTs = EnvironmentEdgeManager.currentTime();<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span>    lastRollTs.set(rollTs);<a name="line.1108"></a>
-<span class="sourceLineNo">1109</span>    logs.add(new ProcedureWALFile(fs, newLogFile, header, startPos, rollTs));<a name="line.1109"></a>
+<span class="sourceLineNo">1100</span>    try {<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>      ProcedureWALFormat.writeHeader(newStream, header);<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span>      startPos = newStream.getPos();<a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>    } catch (IOException ioe) {<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>      LOG.warn("Encountered exception writing header", ioe);<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>      newStream.close();<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span>      return false;<a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>    }<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span><a name="line.1108"></a>
+<span class="sourceLineNo">1109</span>    closeCurrentLogStream(false);<a name="line.1109"></a>
 <span class="sourceLineNo">1110</span><a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>    // if it's the first next WAL being added, build the holding cleanup tracker<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>    if (logs.size() == 2) {<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>      buildHoldingCleanupTracker();<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>    } else if (logs.size() &gt; walCountWarnThreshold) {<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>      LOG.warn("procedure WALs count={} above the warning threshold {}. check running procedures" +<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span>        " to see if something is stuck.", logs.size(), walCountWarnThreshold);<a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>      // This is just like what we have done at RS side when there are too many wal files. For RS,<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>      // if there are too many wal files, we will find out the wal entries in the oldest file, and<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>      // tell the upper layer to flush these regions so the wal entries will be useless and then we<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span>      // can delete the wal file. For WALProcedureStore, the assumption is that, if all the<a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>      // procedures recorded in a proc wal file are modified or deleted in a new proc wal file, then<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>      // we are safe to delete it. So here if there are too many proc wal files, we will find out<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>      // the procedure ids in the oldest file, which are neither modified nor deleted in newer proc<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>      // wal files, and tell upper layer to update the state of these procedures to the newest proc<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>      // wal file(by calling ProcedureStore.update), then we are safe to delete the oldest proc wal<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>      // file.<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span>      sendForceUpdateSignal(holdingCleanupTracker.getAllActiveProcIds());<a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>    }<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span><a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    LOG.info("Rolled new Procedure Store WAL, id={}", logId);<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>    return true;<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span>  }<a name="line.1132"></a>
-<span class="sourceLineNo">1133</span><a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>  private void closeCurrentLogStream(boolean abort) {<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>    if (stream == null || logs.isEmpty()) {<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>      return;<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>    }<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span><a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>    try {<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>      ProcedureWALFile log = logs.getLast();<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>      // If the loading flag is true, it usually means that we fail when loading procedures, so we<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>      // should not persist the store tracker, as its state may not be correct.<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>      if (!loading.get()) {<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>        log.setProcIds(storeTracker.getModifiedMinProcId(), storeTracker.getModifiedMaxProcId());<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>        log.updateLocalTracker(storeTracker);<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>        if (!abort) {<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>          long trailerSize = ProcedureWALFormat.writeTrailer(stream, storeTracker);<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>          log.addToSize(trailerSize);<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>        }<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>      }<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>    } catch (IOException | FSError e) {<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>      LOG.warn("Unable to write the trailer", e);<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>    }<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>    try {<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>      stream.close();<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>    } catch (IOException | FSError e) {<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>      LOG.error("Unable to close the stream", e);<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>    }<a name="line.1158"></a>
-<span class="sourceLineNo">1159</span>    stream = null;<a name="line.1159"></a>
-<span class="sourceLineNo">1160</span>  }<a name="line.1160"></a>
-<span class="sourceLineNo">1161</span><a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>  // ==========================================================================<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>  //  Log Files cleaner helpers<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span>  // ==========================================================================<a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>  private void removeInactiveLogs() throws IOException {<a name="line.1165"></a>
-<span class="sourceLineNo">1166</span>    // We keep track of which procedures are holding the oldest WAL in 'holdingCleanupTracker'.<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span>    // once there is nothing olding the oldest WAL we can remove it.<a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>    while (logs.size() &gt; 1 &amp;&amp; holdingCleanupTracker.isEmpty()) {<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>      LOG.info("Remove the oldest log {}", logs.getFirst());<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>      removeLogFile(logs.getFirst(), walArchiveDir);<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>      buildHoldingCleanupTracker();<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>    }<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span><a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>    // TODO: In case we are holding up a lot of logs for long time we should<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span>    // rewrite old procedures (in theory parent procs) to the new WAL.<a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>  }<a name="line.1176"></a>
-<span class="sourceLineNo">1177</span><a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>  private void buildHoldingCleanupTracker() {<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>    if (logs.size() &lt;= 1) {<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span>      // we only have one wal, so nothing to do<a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>      holdingCleanupTracker.reset();<a name="line.1181"></a>
-<span class="sourceLineNo">1182</span>      return;<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>    }<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span><a name="line.1184"></a>
-<span class="sourceLineNo">1185</span>    // compute the holding tracker.<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>    // - the first WAL is used for the 'updates'<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span>    // - the global tracker will be used to determine whether a procedure has been deleted<a name="line.1187"></a>
-<span class="sourceLineNo">1188</span>    // - other trackers will be used to determine whether a procedure has been updated, as a deleted<a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>    // procedure can always be detected by checking the global tracker, we can save the deleted<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span>    // checks when applying other trackers<a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>    holdingCleanupTracker.resetTo(logs.getFirst().getTracker(), true);<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>    holdingCleanupTracker.setDeletedIfDeletedByThem(storeTracker);<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>    // the logs is a linked list, so avoid calling get(index) on it.<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>    Iterator&lt;ProcedureWALFile&gt; iter = logs.iterator();<a name="line.1194"></a>
-<span class="sourceLineNo">1195</span>    // skip the tracker for the first file when creating the iterator.<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>    iter.next();<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span>    ProcedureStoreTracker tracker = iter.next().getTracker();<a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>    // testing iter.hasNext after calling iter.next to skip applying the tracker for last file,<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>    // which is just the storeTracker above.<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span>    while (iter.hasNext()) {<a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>      holdingCleanupTracker.setDeletedIfModifiedInBoth(tracker);<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>      if (holdingCleanupTracker.isEmpty()) {<a name="line.1202"></a>
-<span class="sourceLineNo">1203</span>        break;<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>      }<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>      tracker = iter.next().getTracker();<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>    }<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>  }<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span><a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>  /**<a name="line.1209"></a>
-<span class="sourceLineNo">1210</span>   * Remove all logs with logId &lt;= {@code lastLogId}.<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span>   */<a name="line.1211"></a>
-<span class="sourceLineNo">1212</span>  private void removeAllLogs(long lastLogId, String why) {<a name="line.1212"></a>
-<span class="sourceLineNo">1213</span>    if (logs.size() &lt;= 1) {<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span>      return;<a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>    }<a name="line.1215"></a>
+<span class="sourceLineNo">1111</span>    storeTracker.resetModified();<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>    stream = newStream;<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>    flushLogId = logId;<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>    totalSynced.set(0);<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>    long rollTs = EnvironmentEdgeManager.currentTime();<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>    lastRollTs.set(rollTs);<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>    logs.add(new ProcedureWALFile(fs, newLogFile, header, startPos, rollTs));<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span><a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>    // if it's the first next WAL being added, build the holding cleanup tracker<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>    if (logs.size() == 2) {<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>      buildHoldingCleanupTracker();<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>    } else if (logs.size() &gt; walCountWarnThreshold) {<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>      LOG.warn("procedure WALs count={} above the warning threshold {}. check running procedures" +<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span>        " to see if something is stuck.", logs.size(), walCountWarnThreshold);<a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>      // This is just like what we have done at RS side when there are too many wal files. For RS,<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span>      // if there are too many wal files, we will find out the wal entries in the oldest file, and<a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>      // tell the upper layer to flush these regions so the wal entries will be useless and then we<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>      // can delete the wal file. For WALProcedureStore, the assumption is that, if all the<a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>      // procedures recorded in a proc wal file are modified or deleted in a new proc wal file, then<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>      // we are safe to delete it. So here if there are too many proc wal files, we will find out<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>      // the procedure ids in the oldest file, which are neither modified nor deleted in newer proc<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>      // wal files, and tell upper layer to update the state of these procedures to the newest proc<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span>      // wal file(by calling ProcedureStore.update), then we are safe to delete the oldest proc wal<a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>      // file.<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span>      sendForceUpdateSignal(holdingCleanupTracker.getAllActiveProcIds());<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span>    }<a name="line.1136"></a>
+<span class="sourceLineNo">1137</span><a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>    LOG.info("Rolled new Procedure Store WAL, id={}", logId);<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>    return true;<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>  }<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span><a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>  private void closeCurrentLogStream(boolean abort) {<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>    if (stream == null || logs.isEmpty()) {<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      return;<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>    }<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span><a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>    try {<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>      ProcedureWALFile log = logs.getLast();<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>      // If the loading flag is true, it usually means that we fail when loading procedures, so we<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>      // should not persist the store tracker, as its state may not be correct.<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>      if (!loading.get()) {<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>        log.setProcIds(storeTracker.getModifiedMinProcId(), storeTracker.getModifiedMaxProcId());<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>        log.updateLocalTracker(storeTracker);<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>        if (!abort) {<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>          long trailerSize = ProcedureWALFormat.writeTrailer(stream, storeTracker);<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>          log.addToSize(trailerSize);<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>        }<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      }<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>    } catch (IOException | FSError e) {<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>      LOG.warn("Unable to write the trailer", e);<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span>    }<a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>    try {<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>      stream.close();<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>    } catch (IOException | FSError e) {<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>      LOG.error("Unable to close the stream", e);<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span>    }<a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>    stream = null;<a name="line.1167"></a>
+<span class="sourceLineNo">1168</span>  }<a name="line.1168"></a>
+<span class="sourceLineNo">1169</span><a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>  // ==========================================================================<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>  //  Log Files cleaner helpers<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>  // ==========================================================================<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>  private void removeInactiveLogs() throws IOException {<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>    // We keep track of which procedures are holding the oldest WAL in 'holdingCleanupTracker'.<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>    // once there is nothing olding the oldest WAL we can remove it.<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>    while (logs.size() &gt; 1 &amp;&amp; holdingCleanupTracker.isEmpty()) {<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span>      LOG.info("Remove the oldest log {}", logs.getFirst());<a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>      removeLogFile(logs.getFirst(), walArchiveDir);<a name="line.1178"></a>
+<span class="sourceLineNo">1179</span>      buildHoldingCleanupTracker();<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>    }<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span><a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>    // TODO: In case we are holding up a lot of logs for long time we should<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>    // rewrite old procedures (in theory parent procs) to the new WAL.<a name="line.1183"></a>
+<span class="sourceLineNo">1184</span>  }<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span><a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>  private void buildHoldingCleanupTracker() {<a name="line.1186"></a>
+<span class="sourceLineNo">1187</span>    if (logs.size() &lt;= 1) {<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>      // we only have one wal, so nothing to do<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>      holdingCleanupTracker.reset();<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span>      return;<a name="line.1190"></a>
+<span class="sourceLineNo">1191</span>    }<a name="line.1191"></a>
+<span class="sourceLineNo">1192</span><a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>    // compute the holding tracker.<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>    // - the first WAL is used for the 'updates'<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>    // - the global tracker will be used to determine whether a procedure has been deleted<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>    // - other trackers will be used to determine whether a procedure has been updated, as a deleted<a name="line.1196"></a>
+<span class="sourceLineNo">1197</span>    // procedure can always be detected by checking the global tracker, we can save the deleted<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>    // checks when applying other trackers<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span>    holdingCleanupTracker.resetTo(logs.getFirst().getTracker(), true);<a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>    holdingCleanupTracker.setDeletedIfDeletedByThem(storeTracker);<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span>    // the logs is a linked list, so avoid calling get(index) on it.<a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>    Iterator&lt;ProcedureWALFile&gt; iter = logs.iterator();<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>    // skip the tracker for the first file when creating the iterator.<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span>    iter.next();<a name="line.1204"></a>
+<span class="sourceLineNo">1205</span>    ProcedureStoreTracker tracker = iter.next().getTracker();<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>    // testing iter.hasNext after calling iter.next to skip applying the tracker for last file,<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>    // which is just the storeTracker above.<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>    while (iter.hasNext()) {<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>      holdingCleanupTracker.setDeletedIfModifiedInBoth(tracker);<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>      if (holdingCleanupTracker.isEmpty()) {<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>        break;<a name="line.1211"></a>
+<span class="sourceLineNo">1212</span>      }<a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>      tracker = iter.next().getTracker();<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>    }<a name="line.1214"></a>
+<span class="sourceLineNo">1215</span>  }<a name="line.1215"></a>
 <span class="sourceLineNo">1216</span><a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>    LOG.info("Remove all state logs with ID less than {}, since {}", lastLogId, why);<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span><a name="line.1218"></a>
-<span class="sourceLineNo">1219</span>    boolean removed = false;<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>    while (logs.size() &gt; 1) {<a name="line.1220"></a>
-<span class="sourceLineNo">1221</span>      ProcedureWALFile log = logs.getFirst();<a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>      if (lastLogId &lt; log.getLogId()) {<a name="line.1222"></a>
-<span class="sourceLineNo">1223</span>        break;<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>      }<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span>      removeLogFile(log, walArchiveDir);<a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>      removed = true;<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>    }<a name="line.1227"></a>
-<span class="sourceLineNo">1228</span><a name="line.1228"></a>
-<span class="sourceLineNo">1229</span>    if (removed) {<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>      buildHoldingCleanupTracker();<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>    }<a name="line.1231"></a>
-<span class="sourceLineNo">1232</span>  }<a name="line.1232"></a>
-<span class="sourceLineNo">1233</span><a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>  private boolean removeLogFile(final ProcedureWALFile log, final Path walArchiveDir) {<a name="line.1234"></a>
-<span class="sourceLineNo">1235</span>    try {<a name="line.1235"></a>
-<span class="sourceLineNo">1236</span>      LOG.trace("Removing log={}", log);<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span>      log.removeFile(walArchiveDir);<a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>      logs.remove(log);<a name="line.1238"></a>
-<span class="sourceLineNo">1239</span>      LOG.debug("Removed log={}, activeLogs={}", log, logs);<a name="line.1239"></a>
-<span class="sourceLineNo">1240</span>      assert logs.size() &gt; 0 : "expected at least one log";<a name="line.1240"></a>
-<span class="sourceLineNo">1241</span>    } catch (IOException e) {<a name="line.1241"></a>
-<span class="sourceLineNo">1242</span>      LOG.error("Unable to remove log: " + log, e);<a name="line.1242"></a>
-<span class="sourceLineNo">1243</span>      return false;<a name="line.1243"></a>
-<span class="sourceLineNo">1244</span>    }<a name="line.1244"></a>
-<span class="sourceLineNo">1245</span>    return true;<a name="line.1245"></a>
-<span class="sourceLineNo">1246</span>  }<a name="line.1246"></a>
-<span class="sourceLineNo">1247</span><a name="line.1247"></a>
-<span class="sourceLineNo">1248</span>  // ==========================================================================<a name="line.1248"></a>
-<span class="sourceLineNo">1249</span>  //  FileSystem Log Files helpers<a name="line.1249"></a>
-<span class="sourceLineNo">1250</span>  // ==========================================================================<a name="line.1250"></a>
-<span class="sourceLineNo">1251</span>  public Path getWALDir() {<a name="line.1251"></a>
-<span class="sourceLineNo">1252</span>    return this.walDir;<a name="line.1252"></a>
-<span class="sourceLineNo">1253</span>  }<a name="line.1253"></a>
-<span class="sourceLineNo">1254</span><a name="line.1254"></a>
-<span class="sourceLineNo">1255</span>  Path getWalArchiveDir() {<a name="line.1255"></a>
-<span class="sourceLineNo">1256</span>    return this.walArchiveDir;<a name="line.1256"></a>
-<span class="sourceLineNo">1257</span>  }<a name="line.1257"></a>
-<span class="sourceLineNo">1258</span><a name="line.1258"></a>
-<span class="sourceLineNo">1259</span>  public FileSystem getFileSystem() {<a name="line.1259"></a>
-<span class="sourceLineNo">1260</span>    return this.fs;<a name="line.1260"></a>
+<span class="sourceLineNo">1217</span>  /**<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>   * Remove all logs with logId &lt;= {@code lastLogId}.<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>   */<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>  private void removeAllLogs(long lastLogId, String why) {<a name="line.1220"></a>
+<span class="sourceLineNo">1221</span>    if (logs.size() &lt;= 1) {<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span>      return;<a name="line.1222"></a>
+<span class="sourceLineNo">1223</span>    }<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span><a name="line.1224"></a>
+<span class="sourceLineNo">1225</span>    LOG.info("Remove all state logs with ID less than {}, since {}", lastLogId, why);<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span><a name="line.1226"></a>
+<span class="sourceLineNo">1227</span>    boolean removed = false;<a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>    while (logs.size() &gt; 1) {<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span>      ProcedureWALFile log = logs.getFirst();<a name="line.1229"></a>
+<span class="sourceLineNo">1230</span>      if (lastLogId &lt; log.getLogId()) {<a name="line.1230"></a>
+<span class="sourceLineNo">1231</span>        break;<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>      }<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span>      removeLogFile(log, walArchiveDir);<a name="line.1233"></a>
+<span class="sourceLineNo">1234</span>      removed = true;<a name="line.1234"></a>
+<span class="sourceLineNo">1235</span>    }<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span><a name="line.1236"></a>
+<span class="sourceLineNo">1237</span>    if (removed) {<a name="line.1237"></a>
+<span class="sourceLineNo">1238</span>      buildHoldingCleanupTracker();<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span>    }<a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>  }<a name="line.1240"></a>
+<span class="sourceLineNo">1241</span><a name="line.1241"></a>
+<span class="sourceLineNo">1242</span>  private boolean removeLogFile(final ProcedureWALFile log, final Path walArchiveDir) {<a name="line.1242"></a>
+<span class="sourceLineNo">1243</span>    try {<a name="line.1243"></a>
+<span class="sourceLineNo">1244</span>      LOG.trace("Removing log={}", log);<a name="line.1244"></a>
+<span class="sourceLineNo">1245</span>      log.removeFile(walArchiveDir);<a name="line.1245"></a>
+<span class="sourceLineNo">1246</span>      logs.remove(log);<a name="line.1246"></a>
+<span class="sourceLineNo">1247</span>      LOG.debug("Removed log={}, activeLogs={}", log, logs);<a name="line.1247"></a>
+<span class="sourceLineNo">1248</span>      assert logs.size() &gt; 0 : "expected at least one log";<a name="line.1248"></a>
+<span class="sourceLineNo">1249</span>    } catch (IOException e) {<a name="line.1249"></a>
+<span class="sourceLineNo">1250</span>      LOG.error("Unable to remove log: " + log, e);<a name="line.1250"></a>
+<span class="sourceLineNo">1251</span>      return false;<a name="line.1251"></a>
+<span class="sourceLineNo">1252</span>    }<a name="line.1252"></a>
+<span class="sourceLineNo">1253</span>    return true;<a name="line.1253"></a>
+<span class="sourceLineNo">1254</span>  }<a name="line.1254"></a>
+<span class="sourceLineNo">1255</span><a name="line.1255"></a>
+<span class="sourceLineNo">1256</span>  // ==========================================================================<a name="line.1256"></a>
+<span class="sourceLineNo">1257</span>  //  FileSystem Log Files helpers<a name="line.1257"></a>
+<span class="sourceLineNo">1258</span>  // ==========================================================================<a name="line.1258"></a>
+<span class="sourceLineNo">1259</span>  public Path getWALDir() {<a name="line.1259"></a>
+<span class="sourceLineNo">1260</span>    return this.walDir;<a name="line.1260"></a>
 <span class="sourceLineNo">1261</span>  }<a name="line.1261"></a>
 <span class="sourceLineNo">1262</span><a name="line.1262"></a>
-<span class="sourceLineNo">1263</span>  protected Path getLogFilePath(final long logId) throws IOException {<a name="line.1263"></a>
-<span class="sourceLineNo">1264</span>    return new Path(walDir, String.format(LOG_PREFIX + "%020d.log", logId));<a name="line.1264"></a>
+<span class="sourceLineNo">1263</span>  Path getWalArchiveDir() {<a name="line.1263"></a>
+<span class="sourceLineNo">1264</span>    return this.walArchiveDir;<a name="line.1264"></a>
 <span class="sourceLineNo">1265</span>  }<a name="line.1265"></a>
 <span class="sourceLineNo">1266</span><a name="line.1266"></a>
-<span class="sourceLineNo">1267</span>  private static long getLogIdFromName(final String name) {<a name="line.1267"></a>
-<span class="sourceLineNo">1268</span>    int end = name.lastIndexOf(".log");<a name="line.1268"></a>
-<span class="sourceLineNo">1269</span>    int start = name.lastIndexOf('-') + 1;<a name="line.1269"></a>
-<span class="sourceLineNo">1270</span>    return Long.parseLong(name.substring(start, end));<a name="line.1270"></a>
-<span class="sourceLineNo">1271</span>  }<a name="line.1271"></a>
-<span class="sourceLineNo">1272</span><a name="line.1272"></a>
-<span class="sourceLineNo">1273</span>  private static final PathFilter WALS_PATH_FILTER = new PathFilter() {<a name="line.1273"></a>
-<span class="sourceLineNo">1274</span>    @Override<a name="line.1274"></a>
-<span class="sourceLineNo">1275</span>    public boolean accept(Path path) {<a name="line.1275"></a>
-<span class="sourceLineNo">1276</span>      String name = path.getName();<a name="line.1276"></a>
-<span class="sourceLineNo">1277</span>      return name.startsWith(LOG_PREFIX) &amp;&amp; name.endsWith(".log");<a name="line.1277"></a>
-<span class="sourceLineNo">1278</span>    }<a name="line.1278"></a>
-<span class="sourceLineNo">1279</span>  };<a name="line.1279"></a>
+<span class="sourceLineNo">1267</span>  public FileSystem getFileSystem() {<a name="line.1267"></a>
+<span class="sourceLineNo">1268</span>    return this.fs;<a name="line.1268"></a>
+<span class="sourceLineNo">1269</span>  }<a name="line.1269"></a>
+<span class="sourceLineNo">1270</span><a name="line.1270"></a>
+<span class="sourceLineNo">1271</span>  protected Path getLogFilePath(final long logId) throws IOException {<a name="line.1271"></a>
+<span class="sourceLineNo">1272</span>    return new Path(walDir, String.format(LOG_PREFIX + "%020d.log", logId));<a name="line.1272"></a>
+<span class="sourceLineNo">1273</span>  }<a name="line.1273"></a>
+<span class="sourceLineNo">1274</span><a name="line.1274"></a>
+<span class="sourceLineNo">1275</span>  private static long getLogIdFromName(final String name) {<a name="line.1275"></a>
+<span class="sourceLineNo">1276</span>    int end = name.lastIndexOf(".log");<a name="line.1276"></a>
+<span class="sourceLineNo">1277</span>    int start = name.lastIndexOf('-') + 1;<a name="line.1277"></a>
+<span class="sourceLineNo">1278</span>    return Long.parseLong(name.substring(start, end));<a name="line.1278"></a>
+<span class="sourceLineNo">1279</span>  }<a name="line.1279"></a>
 <span class="sourceLineNo">1280</span><a name="line.1280"></a>
-<span class="sourceLineNo">1281</span>  private static final Comparator&lt;FileStatus&gt; FILE_STATUS_ID_COMPARATOR =<a name="line.1281"></a>
-<span class="sourceLineNo">1282</span>      new Comparator&lt;FileStatus&gt;() {<a name="line.1282"></a>
-<span class="sourceLineNo">1283</span>    @Override<a name="line.1283"></a>
-<span class="sourceLineNo">1284</span>    public int compare(FileStatus a, FileStatus b) {<a name="line.1284"></a>
-<span class="sourceLineNo">1285</span>      final long aId = getLogIdFromName(a.getPath().getName());<a name="line.1285"></a>
-<span class="sourceLineNo">1286</span>      final long bId = getLogIdFromName(b.getPath().getName());<a name="line.1286"></a>
-<span class="sourceLineNo">1287</span>      return Long.compare(aId, bId);<a name="line.1287"></a>
-<span class="sourceLineNo">1288</span>    }<a name="line.1288"></a>
-<span class="sourceLineNo">1289</span>  };<a name="line.1289"></a>
-<span class="sourceLineNo">1290</span><a name="line.1290"></a>
-<span class="sourceLineNo">1291</span>  private FileStatus[] getLogFiles() throws IOException {<a name="line.1291"></a>
-<span class="sourceLineNo">1292</span>    try {<a name="line.1292"></a>
-<span class="sourceLineNo">1293</span>      FileStatus[] files = fs.listStatus(walDir, WALS_PATH_FILTER);<a name="line.1293"></a>
-<span class="sourceLineNo">1294</span>      Arrays.sort(files, FILE_STATUS_ID_COMPARATOR);<a name="line.1294"></a>
-<span class="sourceLineNo">1295</span>      return files;<a name="line.1295"></a>
-<span class="sourceLineNo">1296</span>    } catch (FileNotFoundException e) {<a name="line.1296"></a>
-<span class="sourceLineNo">1297</span>      LOG.warn("Log directory not found: " + e.getMessage());<a name="line.1297"></a>
-<span class="sourceLineNo">1298</span>      return null;<a name="line.1298"></a>
-<span class="sourceLineNo">1299</span>    }<a name="line.1299"></a>
-<span class="sourceLineNo">1300</span>  }<a name="line.1300"></a>
-<span class="sourceLineNo">1301</span><a name="line.1301"></a>
-<span class="sourceLineNo">1302</span>  /**<a name="line.1302"></a>
-<span class="sourceLineNo">1303</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1303"></a>
-<span class="sourceLineNo">1304</span>   * the file set by log id.<a name="line.1304"></a>
-<span class="sourceLineNo">1305</span>   * @return Max-LogID of the specified log file set<a name="line.1305"></a>
-<span class="sourceLineNo">1306</span>   */<a name="line.1306"></a>
-<span class="sourceLineNo">1307</span>  private static long getMaxLogId(FileStatus[] logFiles) {<a name="line.1307"></a>
-<span class="sourceLineNo">1308</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1308"></a>
-<span class="sourceLineNo">1309</span>      return 0L;<a name="line.1309"></a>
-<span class="sourceLineNo">1310</span>    }<a name="line.1310"></a>
-<span class="sourceLineNo">1311</span>    return getLogIdFromName(logFiles[logFiles.length - 1].getPath().getName());<a name="line.1311"></a>
-<span class="sourceLineNo">1312</span>  }<a name="line.1312"></a>
-<span class="sourceLineNo">1313</span><a name="line.1313"></a>
-<span class="sourceLineNo">1314</span>  /**<a name="line.1314"></a>
-<span class="sourceLineNo">1315</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1315"></a>
-<span class="sourceLineNo">1316</span>   * the file set by log id.<a name="line.1316"></a>
-<span class="sourceLineNo">1317</span>   * @return Max-LogID of the specified log file set<a name="line.1317"></a>
-<span class="sourceLineNo">1318</span>   */<a name="line.1318"></a>
-<span class="sourceLineNo">1319</span>  private long initOldLogs(FileStatus[] logFiles) throws IOException {<a name="line.1319"></a>
-<span class="sourceLineNo">1320</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1320"></a>
-<span class="sourceLineNo">1321</span>      return 0L;<a name="line.1321"></a>
-<span class="sourceLineNo">1322</span>    }<a name="line.1322"></a>
-<span class="sourceLineNo">1323</span>    long maxLogId = 0;<a name="line.1323"></a>
-<span class="sourceLineNo">1324</span>    for (int i = 0; i &lt; logFiles.length; ++i) {<a name="line.1324"></a>
-<span class="sourceLineNo">1325</span>      final Path logPath = logFiles[i].getPath();<a name="line.1325"></a>
-<span class="sourceLineNo">1326</span>      leaseRecovery.recoverFileLease(fs, logPath);<a name="line.1326"></a>
-<span class="sourceLineNo">1327</span>      if (!isRunning()) {<a name="line.1327"></a>
-<span class="sourceLineNo">1328</span>        throw new IOException("wal aborting");<a name="line.1328"></a>
-<span class="sourceLineNo">1329</span>      }<a name="line.1329"></a>
-<span class="sourceLineNo">1330</span><a name="line.1330"></a>
-<span class="sourceLineNo">1331</span>      maxLogId = Math.max(maxLogId, getLogIdFromName(logPath.getName()));<a name="line.1331"></a>
-<span class="sourceLineNo">1332</span>      ProcedureWALFile log = initOldLog(logFiles[i], this.walArchiveDir);<a name="line.1332"></a>
-<span class="sourceLineNo">1333</span>      if (log != null) {<a name="line.1333"></a>
-<span class="sourceLineNo">1334</span>        this.logs.add(log);<a name="line.1334"></a>
-<span class="sourceLineNo">1335</span>      }<a name="line.1335"></a>
-<span class="sourceLineNo">1336</span>    }<a name="line.1336"></a>
-<span class="sourceLineNo">1337</span>    initTrackerFromOldLogs();<a name="line.1337"></a>
-<span class="sourceLineNo">1338</span>    return maxLogId;<a name="line.1338"></a>
-<span class="sourceLineNo">1339</span>  }<a name="line.1339"></a>
-<span class="sourceLineNo">1340</span><a name="line.1340"></a>
-<span class="sourceLineNo">1341</span>  /**<a name="line.1341"></a>
-<span class="sourceLineNo">1342</span>   * If last log's tracker is not null, use it as {@link #storeTracker}. Otherwise, set storeTracker<a name="line.1342"></a>
-<span class="sourceLineNo">1343</span>   * as partial, and let {@link ProcedureWALFormatReader} rebuild it using entries in the log.<a name="line.1343"></a>
-<span class="sourceLineNo">1344</span>   */<a name="line.1344"></a>
-<span class="sourceLineNo">1345</span>  private void initTrackerFromOldLogs() {<a name="line.1345"></a>
-<span class="sourceLineNo">1346</span>    if (logs.isEmpty() || !isRunning()) {<a name="line.1346"></a>
-<span class="sourceLineNo">1347</span>      return;<a name="line.1347"></a>
-<span class="sourceLineNo">1348</span>    }<a name="line.1348"></a>
-<span class="sourceLineNo">1349</span>    ProcedureWALFile log = logs.getLast();<a name="line.1349"></a>
-<span class="sourceLineNo">1350</span>    if (!log.getTracker().isPartial()) {<a name="line.1350"></a>
-<span class="sourceLineNo">1351</span>      storeTracker.resetTo(log.getTracker());<a name="line.1351"></a>
-<span class="sourceLineNo">1352</span>    } else {<a name="line.1352"></a>
-<span class="sourceLineNo">1353</span>      storeTracker.reset();<a name="line.1353"></a>
-<span class="sourceLineNo">1354</span>      storeTracker.setPartialFlag(true);<a name="line.1354"></a>
-<span class="sourceLineNo">1355</span>    }<a name="line.1355"></a>
-<span class="sourceLineNo">1356</span>  }<a name="line.1356"></a>
-<span class="sourceLineNo">1357</span><a name="line.1357"></a>
-<span class="sourceLineNo">1358</span>  /**<a name="line.1358"></a>
-<span class="sourceLineNo">1359</span>   * Loads given log file and it's tracker.<a name="line.1359"></a>
-<span class="sourceLineNo">1360</span>   */<a name="line.1360"></a>
-<span class="sourceLineNo">1361</span>  private ProcedureWALFile initOldLog(final FileStatus logFile, final Path walArchiveDir)<a name="line.1361"></a>
-<span class="sourceLineNo">1362</span>      throws IOException {<a name="line.1362"></a>
-<span class="sourceLineNo">1363</span>    final ProcedureWALFile log = new ProcedureWALFile(fs, logFile);<a name="line.1363"></a>
-<span class="sourceLineNo">1364</span>    if (logFile.getLen() == 0) {<a name="line.1364"></a>
-<span class="sourceLineNo">1365</span>      LOG.warn("Remove uninitialized log: {}", logFile);<a name="line.1365"></a>
-<span class="sourceLineNo">1366</span>      log.removeFile(walArchiveDir);<a name="line.1366"></a>
-<span class="sourceLineNo">1367</span>      return null;<a name="line.1367"></a>
-<span class="sourceLineNo">1368</span>    }<a name="line.1368"></a>
-<span class="sourceLineNo">1369</span>    LOG.debug("Opening Pv2 {}", logFile);<a name="line.1369"></a>
-<span class="sourceLineNo">1370</span>    try {<a name="line.1370"></a>
-<span class="sourceLineNo">1371</span>      log.open();<a name="line.1371"></a>
-<span class="sourceLineNo">1372</span>    } catch (ProcedureWALFormat.InvalidWALDataException e) {<a name="line.1372"></a>
-<span class="sourceLineNo">1373</span>      LOG.warn("Remove uninitialized log: {}", logFile, e);<a name="line.1373"></a>
+<span class="sourceLineNo">1281</span>  private static final PathFilter WALS_PATH_FILTER = new PathFilter() {<a name="line.1281"></a>
+<span class="sourceLineNo">1282</span>    @Override<a name="line.1282"></a>
+<span class="sourceLineNo">1283</span>    public boolean accept(Path path) {<a name="line.1283"></a>
+<span class="sourceLineNo">1284</span>      String name = path.getName();<a name="line.1284"></a>
+<span class="sourceLineNo">1285</span>      return name.startsWith(LOG_PREFIX) &amp;&amp; name.endsWith(".log");<a name="line.1285"></a>
+<span class="sourceLineNo">1286</span>    }<a name="line.1286"></a>
+<span class="sourceLineNo">1287</span>  };<a name="line.1287"></a>
+<span class="sourceLineNo">1288</span><a name="line.1288"></a>
+<span class="sourceLineNo">1289</span>  private static final Comparator&lt;FileStatus&gt; FILE_STATUS_ID_COMPARATOR =<a name="line.1289"></a>
+<span class="sourceLineNo">1290</span>      new Comparator&lt;FileStatus&gt;() {<a name="line.1290"></a>
+<span class="sourceLineNo">1291</span>    @Override<a name="line.1291"></a>
+<span class="sourceLineNo">1292</span>    public int compare(FileStatus a, FileStatus b) {<a name="line.1292"></a>
+<span class="sourceLineNo">1293</span>      final long aId = getLogIdFromName(a.getPath().getName());<a name="line.1293"></a>
+<span class="sourceLineNo">1294</span>      final long bId = getLogIdFromName(b.getPath().getName());<a name="line.1294"></a>
+<span class="sourceLineNo">1295</span>      return Long.compare(aId, bId);<a name="line.1295"></a>
+<span class="sourceLineNo">1296</span>    }<a name="line.1296"></a>
+<span class="sourceLineNo">1297</span>  };<a name="line.1297"></a>
+<span class="sourceLineNo">1298</span><a name="line.1298"></a>
+<span class="sourceLineNo">1299</span>  private FileStatus[] getLogFiles() throws IOException {<a name="line.1299"></a>
+<span class="sourceLineNo">1300</span>    try {<a name="line.1300"></a>
+<span class="sourceLineNo">1301</span>      FileStatus[] files = fs.listStatus(walDir, WALS_PATH_FILTER);<a name="line.1301"></a>
+<span class="sourceLineNo">1302</span>      Arrays.sort(files, FILE_STATUS_ID_COMPARATOR);<a name="line.1302"></a>
+<span class="sourceLineNo">1303</span>      return files;<a name="line.1303"></a>
+<span class="sourceLineNo">1304</span>    } catch (FileNotFoundException e) {<a name="line.1304"></a>
+<span class="sourceLineNo">1305</span>      LOG.warn("Log directory not found: " + e.getMessage());<a name="line.1305"></a>
+<span class="sourceLineNo">1306</span>      return null;<a name="line.1306"></a>
+<span class="sourceLineNo">1307</span>    }<a name="line.1307"></a>
+<span class="sourceLineNo">1308</span>  }<a name="line.1308"></a>
+<span class="sourceLineNo">1309</span><a name="line.1309"></a>
+<span class="sourceLineNo">1310</span>  /**<a name="line.1310"></a>
+<span class="sourceLineNo">1311</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1311"></a>
+<span class="sourceLineNo">1312</span>   * the file set by log id.<a name="line.1312"></a>
+<span class="sourceLineNo">1313</span>   * @return Max-LogID of the specified log file set<a name="line.1313"></a>
+<span class="sourceLineNo">1314</span>   */<a name="line.1314"></a>
+<span class="sourceLineNo">1315</span>  private static long getMaxLogId(FileStatus[] logFiles) {<a name="line.1315"></a>
+<span class="sourceLineNo">1316</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1316"></a>
+<span class="sourceLineNo">1317</span>      return 0L;<a name="line.1317"></a>
+<span class="sourceLineNo">1318</span>    }<a name="line.1318"></a>
+<span class="sourceLineNo">1319</span>    return getLogIdFromName(logFiles[logFiles.length - 1].getPath().getName());<a name="line.1319"></a>
+<span class="sourceLineNo">1320</span>  }<a name="line.1320"></a>
+<span class="sourceLineNo">1321</span><a name="line.1321"></a>
+<span class="sourceLineNo">1322</span>  /**<a name="line.1322"></a>
+<span class="sourceLineNo">1323</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1323"></a>
+<span class="sourceLineNo">1324</span>   * the file set by log id.<a name="line.1324"></a>
+<span class="sourceLineNo">1325</span>   * @return Max-LogID of the specified log file set<a name="line.1325"></a>
+<span class="sourceLineNo">1326</span>   */<a name="line.1326"></a>
+<span class="sourceLineNo">1327</span>  private long initOldLogs(FileStatus[] logFiles) throws IOException {<a name="line.1327"></a>
+<span class="sourceLineNo">1328</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1328"></a>
+<span class="sourceLineNo">1329</span>      return 0L;<a name="line.1329"></a>
+<span class="sourceLineNo">1330</span>    }<a name="line.1330"></a>
+<span class="sourceLineNo">1331</span>    long maxLogId = 0;<a name="line.1331"></a>
+<span class="sourceLineNo">1332</span>    for (int i = 0; i &lt; logFiles.length; ++i) {<a name="line.1332"></a>
+<span class="sourceLineNo">1333</span>      final Path logPath = logFiles[i].getPath();<a name="line.1333"></a>
+<span class="sourceLineNo">1334</span>      leaseRecovery.recoverFileLease(fs, logPath);<a name="line.1334"></a>
+<span class="sourceLineNo">1335</span>      if (!isRunning()) {<a name="line.1335"></a>
+<span class="sourceLineNo">1336</span>        throw new IOException("wal aborting");<a name="line.1336"></a>
+<span class="sourceLineNo">1337</span>      }<a name="line.1337"></a>
+<span class="sourceLineNo">1338</span><a name="line.1338"></a>
+<span class="sourceLineNo">1339</span>      maxLogId = Math.max(maxLogId, getLogIdFromName(logPath.getName()));<a name="line.1339"></a>
+<span class="sourceLineNo">1340</span>      ProcedureWALFile log = initOldLog(logFiles[i], this.walArchiveDir);<a name="line.1340"></a>
+<span class="sourceLineNo">1341</span>      if (log != null) {<a name="line.1341"></a>
+<span class="sourceLineNo">1342</span>        this.logs.add(log);<a name="line.1342"></a>
+<span class="sourceLineNo">1343</span>      }<a name="line.1343"></a>
+<span class="sourceLineNo">1344</span>    }<a name="line.1344"></a>
+<span class="sourceLineNo">1345</span>    initTrackerFromOldLogs();<a name="line.1345"></a>
+<span class="sourceLineNo">1346</span>    return maxLogId;<a name="line.1346"></a>
+<span class="sourceLineNo">1347</span>  }<a name="line.1347"></a>
+<span class="sourceLineNo">1348</span><a name="line.1348"></a>
+<span class="sourceLineNo">1349</span>  /**<a name="line.1349"></a>
+<span class="sourceLineNo">1350</span>   * If last log's tracker is not null, use it as {@link #storeTracker}. Otherwise, set storeTracker<a name="line.1350"></a>
+<span class="sourceLineNo">1351</span>   * as partial, and let {@link ProcedureWALFormatReader} rebuild it using entries in the log.<a name="line.1351"></a>
+<span class="sourceLineNo">1352</span>   */<a name="line.1352"></a>
+<span class="sourceLineNo">1353</span>  private void initTrackerFromOldLogs() {<a name="line.1353"></a>
+<span class="sourceLineNo">1354</span>    if (logs.isEmpty() || !isRunning()) {<a name="line.1354"></a>
+<span class="sourceLineNo">1355</span>      return;<a name="line.1355"></a>
+<span class="sourceLineNo">1356</span>    }<a name="line.1356"></a>
+<span class="sourceLineNo">1357</span>    ProcedureWALFile log = logs.getLast();<a name="line.1357"></a>
+<span class="sourceLineNo">1358</span>    if (!log.getTracker().isPartial()) {<a name="line.1358"></a>
+<span class="sourceLineNo">1359</span>      storeTracker.resetTo(log.getTracker());<a name="line.1359"></a>
+<span class="sourceLineNo">1360</span>    } else {<a name="line.1360"></a>
+<span class="sourceLineNo">1361</span>      storeTracker.reset();<a name="line.1361"></a>
+<span class="sourceLineNo">1362</span>      storeTracker.setPartialFlag(true);<a name="line.1362"></a>
+<span class="sourceLineNo">1363</span>    }<a name="line.1363"></a>
+<span class="sourceLineNo">1364</span>  }<a name="line.1364"></a>
+<span class="sourceLineNo">1365</span><a name="line.1365"></a>
+<span class="sourceLineNo">1366</span>  /**<a name="line.1366"></a>
+<span class="sourceLineNo">1367</span>   * Loads given log file and it's tracker.<a name="line.1367"></a>
+<span class="sourceLineNo">1368</span>   */<a name="line.1368"></a>
+<span class="sourceLineNo">1369</span>  private ProcedureWALFile initOldLog(final FileStatus logFile, final Path walArchiveDir)<a name="line.1369"></a>
+<span class="sourceLineNo">1370</span>      throws IOException {<a name="line.1370"></a>
+<span class="sourceLineNo">1371</span>    final ProcedureWALFile log = new ProcedureWALFile(fs, logFile);<a name="line.1371"></a>
+<span class="sourceLineNo">1372</span>    if (logFile.getLen() == 0) {<a name="line.1372"></a>
+<span class="sourceLineNo">1373</span>      LOG.warn("Remove uninitialized log: {}", logFile);<a name="line.1373"></a>
 <span class="sourceLineNo">1374</span>      log.removeFile(walArchiveDir);<a name="line.1374"></a>
 <span class="sourceLineNo">1375</span>      return null;<a name="line.1375"></a>
-<span class="sourceLineNo">1376</span>    } catch (IOException e) {<a name="line.1376"></a>
-<span class="sourceLineNo">1377</span>      String msg = "Unable to read state log: " + logFile;<a name="line.1377"></a>
-<span class="sourceLineNo">1378</span>      LOG.error(msg, e);<a name="line.1378"></a>
-<span class="sourceLineNo">1379</span>      throw new IOException(msg, e);<a name="line.1379"></a>
-<span class="sourceLineNo">1380</span>    }<a name="line.1380"></a>
-<span class="sourceLineNo">1381</span><a name="line.1381"></a>
-<span class="sourceLineNo">1382</span>    try {<a name="line.1382"></a>
-<span class="sourceLineNo">1383</span>      log.readTracker();<a name="line.1383"></a>
+<span class="sourceLineNo">1376</span>    }<a name="line.1376"></a>
+<span class="sourceLineNo">1377</span>    LOG.debug("Opening Pv2 {}", logFile);<a name="line.1377"></a>
+<span class="sourceLineNo">1378</span>    try {<a name="line.1378"></a>
+<span class="sourceLineNo">1379</span>      log.open();<a name="line.1379"></a>
+<span class="sourceLineNo">1380</span>    } catch (ProcedureWALFormat.InvalidWALDataException e) {<a name="line.1380"></a>
+<span class="sourceLineNo">1381</span>      LOG.warn("Remove uninitialized log: {}", logFile, e);<a name="line.1381"></a>
+<span class="sourceLineNo">1382</span>      log.removeFile(walArchiveDir);<a name="line.1382"></a>
+<span class="sourceLineNo">1383</span>      return null;<a name="line.1383"></a>
 <span class="sourceLineNo">1384</span>    } catch (IOException e) {<a name="line.1384"></a>
-<span class="sourceLineNo">1385</span>      log.getTracker().reset();<a name="line.1385"></a>
-<span class="sourceLineNo">1386</span>      log.getTracker().setPartialFlag(true);<a name="line.1386"></a>
-<span class="sourceLineNo">1387</span>      LOG.warn("Unable to read tracker for {}", log, e);<a name="line.1387"></a>
+<span class="sourceLineNo">1385</span>      String msg = "Unable to read state log: " + logFile;<a name="line.1385"></a>
+<span class="sourceLineNo">1386</span>      LOG.error(msg, e);<a name="line.1386"></a>
+<span class="sourceLineNo">1387</span>      throw new IOException(msg, e);<a name="line.1387"></a>
 <span class="sourceLineNo">1388</span>    }<a name="line.1388"></a>
 <span class="sourceLineNo">1389</span><a name="line.1389"></a>
-<span class="sourceLineNo">1390</span>    log.close();<a name="line.1390"></a>
-<span class="sourceLineNo">1391</span>    return log;<a name="line.1391"></a>
-<span class="sourceLineNo">1392</span>  }<a name="line.1392"></a>
-<span class="sourceLineNo">1393</span><a name="line.1393"></a>
-<span class="sourceLineNo">1394</span>  /**<a name="line.1394"></a>
-<span class="sourceLineNo">1395</span>   * Parses a directory of WALs building up ProcedureState.<a name="line.1395"></a>
-<span class="sourceLineNo">1396</span>   * For testing parse and profiling.<a name="line.1396"></a>
-<span class="sourceLineNo">1397</span>   * @param args Include pointer to directory of WAL files for a store instance to parse &amp; load.<a name="line.1397"></a>
-<span class="sourceLineNo">1398</span>   */<a name="line.1398"></a>
-<span class="sourceLineNo">1399</span>  public static void main(String [] args) throws IOException {<a name="line.1399"></a>
-<span class="sourceLineNo">1400</span>    Configuration conf = HBaseConfiguration.create();<a name="line.1400"></a>
-<span class="sourceLineNo">1401</span>    if (args == null || args.length != 1) {<a name="line.1401"></a>
-<span class="sourceLineNo">1402</span>      System.out.println("ERROR: Empty arguments list; pass path to MASTERPROCWALS_DIR.");<a name="line.1402"></a>
-<span class="sourceLineNo">1403</span>      System.out.println("Usage: WALProcedureStore MASTERPROCWALS_DIR");<a name="line.1403"></a>
-<span class="sourceLineNo">1404</span>      System.exit(-1);<a name="line.1404"></a>
-<span class="sourceLineNo">1405</span>    }<a name="line.1405"></a>
-<span class="sourceLineNo">1406</span>    WALProcedureStore store = new WALProcedureStore(conf, new Path(args[0]), null,<a name="line.1406"></a>
-<span class="sourceLineNo">1407</span>      new LeaseRecovery() {<a name="line.1407"></a>
-<span class="sourceLineNo">1408</span>        @Override<a name="line.1408"></a>
-<span class="sourceLineNo">1409</span>        public void recoverFileLease(FileSystem fs, Path path) throws IOException {<a name="line.1409"></a>
-<span class="sourceLineNo">1410</span>          // no-op<a name="line.1410"></a>
-<span class="sourceLineNo">1411</span>        }<a name="line.1411"></a>
-<span class="sourceLineNo">1412</span>      });<a name="line.1412"></a>
-<span class="sourceLineNo">1413</span>    try {<a name="line.1413"></a>
-<span class="sourceLineNo">1414</span>      store.start(16);<a name="line.1414"></a>
-<span class="sourceLineNo">1415</span>      ProcedureExecutor&lt;?&gt; pe = new ProcedureExecutor&lt;&gt;(conf, new Object()/*Pass anything*/, store);<a name="line.1415"></a>
-<span class="sourceLineNo">1416</span>      pe.init(1, true);<a name="line.1416"></a>
-<span class="sourceLineNo">1417</span>    } finally {<a name="line.1417"></a>
-<span class="sourceLineNo">1418</span>      store.stop(true);<a name="line.1418"></a>
-<span class="sourceLineNo">1419</span>    }<a name="line.1419"></a>
-<span class="sourceLineNo">1420</span>  }<a name="line.1420"></a>
-<span class="sourceLineNo">1421</span>}<a name="line.1421"></a>
+<span class="sourceLineNo">1390</span>    try {<a name="line.1390"></a>
+<span class="sourceLineNo">1391</span>      log.readTracker();<a name="line.1391"></a>
+<span class="sourceLineNo">1392</span>    } catch (IOException e) {<a name="line.1392"></a>
+<span class="sourceLineNo">1393</span>      log.getTracker().reset();<a name="line.1393"></a>
+<span class="sourceLineNo">1394</span>      log.getTracker().setPartialFlag(true);<a name="line.1394"></a>
+<span class="sourceLineNo">1395</span>      LOG.warn("Unable to read tracker for {}", log, e);<a name="line.1395"></a>
+<span class="sourceLineNo">1396</span>    }<a name="line.1396"></a>
+<span class="sourceLineNo">1397</span><a name="line.1397"></a>
+<span class="sourceLineNo">1398</span>    log.close();<a name="line.1398"></a>
+<span class="sourceLineNo">1399</span>    return log;<a name="line.1399"></a>
+<span class="sourceLineNo">1400</span>  }<a name="line.1400"></a>
+<span class="sourceLineNo">1401</span><a name="line.1401"></a>
+<span class="sourceLineNo">1402</span>  /**<a name="line.1402"></a>
+<span class="sourceLineNo">1403</span>   * Parses a directory of WALs building up ProcedureState.<a name="line.1403"></a>
+<span class="sourceLineNo">1404</span>   * For testing parse and profiling.<a name="line.1404"></a>
+<span class="sourceLineNo">1405</span>   * @param args Include pointer to directory of WAL files for a store instance to parse &amp; load.<a name="line.1405"></a>
+<span class="sourceLineNo">1406</span>   */<a name="line.1406"></a>
+<span class="sourceLineNo">1407</span>  public static void main(String [] args) throws IOException {<a name="line.1407"></a>
+<span class="sourceLineNo">1408</span>    Configuration conf = HBaseConfiguration.create();<a name="line.1408"></a>
+<span class="sourceLineNo">1409</span>    if (args == null || args.length != 1) {<a name="line.1409"></a>
+<span class="sourceLineNo">1410</span>      System.out.println("ERROR: Empty arguments list; pass path to MASTERPROCWALS_DIR.");<a name="line.1410"></a>
+<span class="sourceLineNo">1411</span>      System.out.println("Usage: WALProcedureStore MASTERPROCWALS_DIR");<a name="line.1411"></a>
+<span class="sourceLineNo">1412</span>      System.exit(-1);<a name="line.1412"></a>
+<span class="sourceLineNo">1413</span>    }<a name="line.1413"></a>
+<span class="sourceLineNo">1414</span>    WALProcedureStore store = new WALProcedureStore(conf, new Path(args[0]), null,<a name="line.1414"></a>
+<span class="sourceLineNo">1415</span>      new LeaseRecovery() {<a name="line.1415"></a>
+<span class="sourceLineNo">1416</span>        @Override<a name="line.1416"></a>
+<span class="sourceLineNo">1417</span>        public void recoverFileLease(FileSystem fs, Path path) throws IOException {<a name="line.1417"></a>
+<span class="sourceLineNo">1418</span>          // no-op<a name="line.1418"></a>
+<span class="sourceLineNo">1419</span>        }<a name="line.1419"></a>
+<span class="sourceLineNo">1420</span>      });<a name="line.1420"></a>
+<span class="sourceLineNo">1421</span>    try {<a name="line.1421"></a>
+<span class="sourceLineNo">1422</span>      store.start(16);<a name="line.1422"></a>
+<span class="sourceLineNo">1423</span>      ProcedureExecutor&lt;?&gt; pe = new ProcedureExecutor&lt;&gt;(conf, new Object()/*Pass anything*/, store);<a name="line.1423"></a>
+<span class="sourceLineNo">1424</span>      pe.init(1, true);<a name="line.1424"></a>
+<span class="sourceLineNo">1425</span>    } finally {<a name="line.1425"></a>
+<span class="sourceLineNo">1426</span>      store.stop(true);<a name="line.1426"></a>
+<span class="sourceLineNo">1427</span>    }<a name="line.1427"></a>
+<span class="sourceLineNo">1428</span>  }<a name="line.1428"></a>
+<span class="sourceLineNo">1429</span>}<a name="line.1429"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html b/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html
index aad88b8..aa5d974 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.SyncMetrics.html
@@ -43,1390 +43,1398 @@
 <span class="sourceLineNo">035</span>import java.util.concurrent.locks.ReentrantLock;<a name="line.35"></a>
 <span class="sourceLineNo">036</span>import org.apache.hadoop.conf.Configuration;<a name="line.36"></a>
 <span class="sourceLineNo">037</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.FSError;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.FileAlreadyExistsException;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.FileStatus;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.fs.FileSystem;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.fs.Path;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.fs.PathFilter;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.HConstants;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.log.HBaseMarkers;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.procedure2.Procedure;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.procedure2.ProcedureExecutor;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.procedure2.store.LeaseRecovery;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStore;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.procedure2.util.ByteSlot;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.procedure2.util.StringUtils;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.ipc.RemoteException;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.slf4j.Logger;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.slf4j.LoggerFactory;<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue;<a name="line.63"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.FSError;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.FileAlreadyExistsException;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.fs.FileStatus;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.apache.hadoop.fs.FileSystem;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.apache.hadoop.fs.Path;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.PathFilter;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.HConstants;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.log.HBaseMarkers;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.procedure2.Procedure;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.procedure2.ProcedureExecutor;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.procedure2.store.LeaseRecovery;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStore;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.procedure2.util.ByteSlot;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.procedure2.util.StringUtils;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hdfs.DistributedFileSystem;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.ipc.RemoteException;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.slf4j.Logger;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.slf4j.LoggerFactory;<a name="line.63"></a>
 <span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureWALHeader;<a name="line.65"></a>
+<span class="sourceLineNo">065</span>import org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue;<a name="line.65"></a>
 <span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>/**<a name="line.67"></a>
-<span class="sourceLineNo">068</span> * WAL implementation of the ProcedureStore.<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;p/&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * When starting, the upper layer will first call {@link #start(int)}, then {@link #recoverLease()},<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * then {@link #load(ProcedureLoader)}.<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * &lt;p/&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * In {@link #recoverLease()}, we will get the lease by closing all the existing wal files(by<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * calling recoverFileLease), and creating a new wal writer. And we will also get the list of all<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * the old wal files.<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;p/&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * FIXME: notice that the current recover lease implementation is problematic, it can not deal with<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * the races if there are two master both wants to acquire the lease...<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;p/&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * In {@link #load(ProcedureLoader)} method, we will load all the active procedures. See the<a name="line.80"></a>
-<span class="sourceLineNo">081</span> * comments of this method for more details.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> * &lt;p/&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> * The actual logging way is a bit like our FileSystem based WAL implementation as RS side. There is<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * a {@link #slots}, which is more like the ring buffer, and in the insert, update and delete<a name="line.84"></a>
-<span class="sourceLineNo">085</span> * methods we will put thing into the {@link #slots} and wait. And there is a background sync<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * thread(see the {@link #syncLoop()} method) which get data from the {@link #slots} and write them<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * to the FileSystem, and notify the caller that we have finished.<a name="line.87"></a>
-<span class="sourceLineNo">088</span> * &lt;p/&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> * TODO: try using disruptor to increase performance and simplify the logic?<a name="line.89"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureWALHeader;<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>/**<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * WAL implementation of the ProcedureStore.<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * &lt;p/&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * When starting, the upper layer will first call {@link #start(int)}, then {@link #recoverLease()},<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * then {@link #load(ProcedureLoader)}.<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p/&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * In {@link #recoverLease()}, we will get the lease by closing all the existing wal files(by<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * calling recoverFileLease), and creating a new wal writer. And we will also get the list of all<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * the old wal files.<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;p/&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * FIXME: notice that the current recover lease implementation is problematic, it can not deal with<a name="line.79"></a>
+<span class="sourceLineNo">080</span> * the races if there are two master both wants to acquire the lease...<a name="line.80"></a>
+<span class="sourceLineNo">081</span> * &lt;p/&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> * In {@link #load(ProcedureLoader)} method, we will load all the active procedures. See the<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * comments of this method for more details.<a name="line.83"></a>
+<span class="sourceLineNo">084</span> * &lt;p/&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * The actual logging way is a bit like our FileSystem based WAL implementation as RS side. There is<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * a {@link #slots}, which is more like the ring buffer, and in the insert, update and delete<a name="line.86"></a>
+<span class="sourceLineNo">087</span> * methods we will put thing into the {@link #slots} and wait. And there is a background sync<a name="line.87"></a>
+<span class="sourceLineNo">088</span> * thread(see the {@link #syncLoop()} method) which get data from the {@link #slots} and write them<a name="line.88"></a>
+<span class="sourceLineNo">089</span> * to the FileSystem, and notify the caller that we have finished.<a name="line.89"></a>
 <span class="sourceLineNo">090</span> * &lt;p/&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> * The {@link #storeTracker} keeps track of the modified procedures in the newest wal file, which is<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * also the one being written currently. And the deleted bits in it are for all the procedures, not<a name="line.92"></a>
-<span class="sourceLineNo">093</span> * only the ones in the newest wal file. And when rolling a log, we will first store it in the<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * trailer of the current wal file, and then reset its modified bits, so that it can start to track<a name="line.94"></a>
-<span class="sourceLineNo">095</span> * the modified procedures for the new wal file.<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;p/&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * The {@link #holdingCleanupTracker} is used to test whether we are safe to delete the oldest wal<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * file. When there are log rolling and there are more than 1 wal files, we will make use of it. It<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * will first be initialized to the oldest file's tracker(which is stored in the trailer), using the<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * method {@link ProcedureStoreTracker#resetTo(ProcedureStoreTracker, boolean)}, and then merge it<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * with the tracker of every newer wal files, using the<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * {@link ProcedureStoreTracker#setDeletedIfModifiedInBoth(ProcedureStoreTracker)}.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> * If we find out<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * that all the modified procedures for the oldest wal file are modified or deleted in newer wal<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * files, then we can delete it. This is because that, every time we call<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@link ProcedureStore#insert(Procedure[])} or {@link ProcedureStore#update(Procedure)}, we will<a name="line.106"></a>
-<span class="sourceLineNo">107</span> * persist the full state of a Procedure, so the earlier wal records for this procedure can all be<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * deleted.<a name="line.108"></a>
-<span class="sourceLineNo">109</span> * @see ProcedureWALPrettyPrinter for printing content of a single WAL.<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * @see #main(String[]) to parse a directory of MasterWALProcs.<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * @deprecated Since 2.3.0, will be removed in 4.0.0. Keep here only for rolling upgrading, now we<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *             use the new region based procedure store.<a name="line.112"></a>
-<span class="sourceLineNo">113</span> */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>@Deprecated<a name="line.114"></a>
-<span class="sourceLineNo">115</span>@InterfaceAudience.Private<a name="line.115"></a>
-<span class="sourceLineNo">116</span>public class WALProcedureStore extends ProcedureStoreBase {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>  private static final Logger LOG = LoggerFactory.getLogger(WALProcedureStore.class);<a name="line.117"></a>
-<span class="sourceLineNo">118</span>  public static final String LOG_PREFIX = "pv2-";<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  /** Used to construct the name of the log directory for master procedures */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>  public static final String MASTER_PROCEDURE_LOGDIR = "MasterProcWALs";<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>  public static final String WAL_COUNT_WARN_THRESHOLD_CONF_KEY =<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    "hbase.procedure.store.wal.warn.threshold";<a name="line.124"></a>
-<span class="sourceLineNo">125</span>  private static final int DEFAULT_WAL_COUNT_WARN_THRESHOLD = 10;<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>  public static final String EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY =<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    "hbase.procedure.store.wal.exec.cleanup.on.load";<a name="line.128"></a>
-<span class="sourceLineNo">129</span>  private static final boolean DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY = true;<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>  public static final String MAX_RETRIES_BEFORE_ROLL_CONF_KEY =<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    "hbase.procedure.store.wal.max.retries.before.roll";<a name="line.132"></a>
-<span class="sourceLineNo">133</span>  private static final int DEFAULT_MAX_RETRIES_BEFORE_ROLL = 3;<a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>  public static final String WAIT_BEFORE_ROLL_CONF_KEY =<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    "hbase.procedure.store.wal.wait.before.roll";<a name="line.136"></a>
-<span class="sourceLineNo">137</span>  private static final int DEFAULT_WAIT_BEFORE_ROLL = 500;<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>  public static final String ROLL_RETRIES_CONF_KEY =<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    "hbase.procedure.store.wal.max.roll.retries";<a name="line.140"></a>
-<span class="sourceLineNo">141</span>  private static final int DEFAULT_ROLL_RETRIES = 3;<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>  public static final String MAX_SYNC_FAILURE_ROLL_CONF_KEY =<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    "hbase.procedure.store.wal.sync.failure.roll.max";<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  private static final int DEFAULT_MAX_SYNC_FAILURE_ROLL = 3;<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  public static final String PERIODIC_ROLL_CONF_KEY =<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    "hbase.procedure.store.wal.periodic.roll.msec";<a name="line.148"></a>
-<span class="sourceLineNo">149</span>  private static final int DEFAULT_PERIODIC_ROLL = 60 * 60 * 1000; // 1h<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>  public static final String SYNC_WAIT_MSEC_CONF_KEY = "hbase.procedure.store.wal.sync.wait.msec";<a name="line.151"></a>
-<span class="sourceLineNo">152</span>  private static final int DEFAULT_SYNC_WAIT_MSEC = 100;<a name="line.152"></a>
-<span class="sourceLineNo">153</span><a name="line.153"></a>
-<span class="sourceLineNo">154</span>  public static final String USE_HSYNC_CONF_KEY = "hbase.procedure.store.wal.use.hsync";<a name="line.154"></a>
-<span class="sourceLineNo">155</span>  private static final boolean DEFAULT_USE_HSYNC = true;<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>  public static final String ROLL_THRESHOLD_CONF_KEY = "hbase.procedure.store.wal.roll.threshold";<a name="line.157"></a>
-<span class="sourceLineNo">158</span>  private static final long DEFAULT_ROLL_THRESHOLD = 32 * 1024 * 1024; // 32M<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>  public static final String STORE_WAL_SYNC_STATS_COUNT =<a name="line.160"></a>
-<span class="sourceLineNo">161</span>      "hbase.procedure.store.wal.sync.stats.count";<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  private static final int DEFAULT_SYNC_STATS_COUNT = 10;<a name="line.162"></a>
-<span class="sourceLineNo">163</span><a name="line.163"></a>
-<span class="sourceLineNo">164</span>  private final LinkedList&lt;ProcedureWALFile&gt; logs = new LinkedList&lt;&gt;();<a name="line.164"></a>
-<span class="sourceLineNo">165</span>  private final ProcedureStoreTracker holdingCleanupTracker = new ProcedureStoreTracker();<a name="line.165"></a>
-<span class="sourceLineNo">166</span>  private final ProcedureStoreTracker storeTracker = new ProcedureStoreTracker();<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  private final ReentrantLock lock = new ReentrantLock();<a name="line.167"></a>
-<span class="sourceLineNo">168</span>  private final Condition waitCond = lock.newCondition();<a name="line.168"></a>
-<span class="sourceLineNo">169</span>  private final Condition slotCond = lock.newCondition();<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  private final Condition syncCond = lock.newCondition();<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>  private final LeaseRecovery leaseRecovery;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>  private final Configuration conf;<a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private final FileSystem fs;<a name="line.174"></a>
-<span class="sourceLineNo">175</span>  private final Path walDir;<a name="line.175"></a>
-<span class="sourceLineNo">176</span>  private final Path walArchiveDir;<a name="line.176"></a>
-<span class="sourceLineNo">177</span>  private final boolean enforceStreamCapability;<a name="line.177"></a>
-<span class="sourceLineNo">178</span><a name="line.178"></a>
-<span class="sourceLineNo">179</span>  private final AtomicReference&lt;Throwable&gt; syncException = new AtomicReference&lt;&gt;();<a name="line.179"></a>
-<span class="sourceLineNo">180</span>  private final AtomicBoolean loading = new AtomicBoolean(true);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>  private final AtomicBoolean inSync = new AtomicBoolean(false);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>  private final AtomicLong totalSynced = new AtomicLong(0);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>  private final AtomicLong lastRollTs = new AtomicLong(0);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>  private final AtomicLong syncId = new AtomicLong(0);<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>  private LinkedTransferQueue&lt;ByteSlot&gt; slotsCache = null;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>  private Set&lt;ProcedureWALFile&gt; corruptedLogs = null;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>  private FSDataOutputStream stream = null;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>  private int runningProcCount = 1;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  private long flushLogId = 0;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>  private int syncMaxSlot = 1;<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  private int slotIndex = 0;<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  private Thread syncThread;<a name="line.193"></a>
-<span class="sourceLineNo">194</span>  private ByteSlot[] slots;<a name="line.194"></a>
-<span class="sourceLineNo">195</span><a name="line.195"></a>
-<span class="sourceLineNo">196</span>  private int walCountWarnThreshold;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  private int maxRetriesBeforeRoll;<a name="line.197"></a>
-<span class="sourceLineNo">198</span>  private int maxSyncFailureRoll;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>  private int waitBeforeRoll;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>  private int rollRetries;<a name="line.200"></a>
-<span class="sourceLineNo">201</span>  private int periodicRollMsec;<a name="line.201"></a>
-<span class="sourceLineNo">202</span>  private long rollThreshold;<a name="line.202"></a>
-<span class="sourceLineNo">203</span>  private boolean useHsync;<a name="line.203"></a>
-<span class="sourceLineNo">204</span>  private int syncWaitMsec;<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>  // Variables used for UI display<a name="line.206"></a>
-<span class="sourceLineNo">207</span>  private CircularFifoQueue&lt;SyncMetrics&gt; syncMetricsQueue;<a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>  public static class SyncMetrics {<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    private long timestamp;<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    private long syncWaitMs;<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    private long totalSyncedBytes;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    private int syncedEntries;<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    private float syncedPerSec;<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>    public long getTimestamp() {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      return timestamp;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    }<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span>    public long getSyncWaitMs() {<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      return syncWaitMs;<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    }<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>    public long getTotalSyncedBytes() {<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      return totalSyncedBytes;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span><a name="line.227"></a>
-<span class="sourceLineNo">228</span>    public long getSyncedEntries() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return syncedEntries;<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>    public float getSyncedPerSec() {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return syncedPerSec;<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
-<span class="sourceLineNo">236</span><a name="line.236"></a>
-<span class="sourceLineNo">237</span>  public WALProcedureStore(Configuration conf, LeaseRecovery leaseRecovery) throws IOException {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    this(conf, new Path(CommonFSUtils.getWALRootDir(conf), MASTER_PROCEDURE_LOGDIR),<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      new Path(CommonFSUtils.getWALRootDir(conf), HConstants.HREGION_OLDLOGDIR_NAME),<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      leaseRecovery);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>  public WALProcedureStore(final Configuration conf, final Path walDir, final Path walArchiveDir,<a name="line.243"></a>
-<span class="sourceLineNo">244</span>      final LeaseRecovery leaseRecovery) throws IOException {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    this.conf = conf;<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    this.leaseRecovery = leaseRecovery;<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    this.walDir = walDir;<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    this.walArchiveDir = walArchiveDir;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    this.fs = CommonFSUtils.getWALFileSystem(conf);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    this.enforceStreamCapability = conf.getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE,<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        true);<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span>    // Create the log directory for the procedure store<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    if (!fs.exists(walDir)) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      if (!fs.mkdirs(walDir)) {<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        throw new IOException("Unable to mkdir " + walDir);<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      }<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    // Now that it exists, set the log policy<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    String storagePolicy =<a name="line.260"></a>
-<span class="sourceLineNo">261</span>        conf.get(HConstants.WAL_STORAGE_POLICY, HConstants.DEFAULT_WAL_STORAGE_POLICY);<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    CommonFSUtils.setStoragePolicy(fs, walDir, storagePolicy);<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>    // Create archive dir up front. Rename won't work w/o it up on HDFS.<a name="line.264"></a>
-<span class="sourceLineNo">265</span>    if (this.walArchiveDir != null &amp;&amp; !this.fs.exists(this.walArchiveDir)) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      if (this.fs.mkdirs(this.walArchiveDir)) {<a name="line.266"></a>
-<span class="sourceLineNo">267</span>        LOG.debug("Created Procedure Store WAL archive dir {}", this.walArchiveDir);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>      } else {<a name="line.268"></a>
-<span class="sourceLineNo">269</span>        LOG.warn("Failed create of {}", this.walArchiveDir);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>      }<a name="line.270"></a>
-<span class="sourceLineNo">271</span>    }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>  }<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>  @Override<a name="line.274"></a>
-<span class="sourceLineNo">275</span>  public void start(int numSlots) throws IOException {<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    if (!setRunning(true)) {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      return;<a name="line.277"></a>
-<span class="sourceLineNo">278</span>    }<a name="line.278"></a>
-<span class="sourceLineNo">279</span><a name="line.279"></a>
-<span class="sourceLineNo">280</span>    // Init buffer slots<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    loading.set(true);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    runningProcCount = numSlots;<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    syncMaxSlot = numSlots;<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    slots = new ByteSlot[numSlots];<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    slotsCache = new LinkedTransferQueue&lt;&gt;();<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    while (slotsCache.size() &lt; numSlots) {<a name="line.286"></a>
-<span class="sourceLineNo">287</span>      slotsCache.offer(new ByteSlot());<a name="line.287"></a>
-<span class="sourceLineNo">288</span>    }<a name="line.288"></a>
-<span class="sourceLineNo">289</span><a name="line.289"></a>
-<span class="sourceLineNo">290</span>    // Tunings<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    walCountWarnThreshold =<a name="line.291"></a>
-<span class="sourceLineNo">292</span>      conf.getInt(WAL_COUNT_WARN_THRESHOLD_CONF_KEY, DEFAULT_WAL_COUNT_WARN_THRESHOLD);<a name="line.292"></a>
-<span class="sourceLineNo">293</span>    maxRetriesBeforeRoll =<a name="line.293"></a>
-<span class="sourceLineNo">294</span>      conf.getInt(MAX_RETRIES_BEFORE_ROLL_CONF_KEY, DEFAULT_MAX_RETRIES_BEFORE_ROLL);<a name="line.294"></a>
-<span class="sourceLineNo">295</span>    maxSyncFailureRoll = conf.getInt(MAX_SYNC_FAILURE_ROLL_CONF_KEY, DEFAULT_MAX_SYNC_FAILURE_ROLL);<a name="line.295"></a>
-<span class="sourceLineNo">296</span>    waitBeforeRoll = conf.getInt(WAIT_BEFORE_ROLL_CONF_KEY, DEFAULT_WAIT_BEFORE_ROLL);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>    rollRetries = conf.getInt(ROLL_RETRIES_CONF_KEY, DEFAULT_ROLL_RETRIES);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    rollThreshold = conf.getLong(ROLL_THRESHOLD_CONF_KEY, DEFAULT_ROLL_THRESHOLD);<a name="line.298"></a>
-<span class="sourceLineNo">299</span>    periodicRollMsec = conf.getInt(PERIODIC_ROLL_CONF_KEY, DEFAULT_PERIODIC_ROLL);<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    syncWaitMsec = conf.getInt(SYNC_WAIT_MSEC_CONF_KEY, DEFAULT_SYNC_WAIT_MSEC);<a name="line.300"></a>
-<span class="sourceLineNo">301</span>    useHsync = conf.getBoolean(USE_HSYNC_CONF_KEY, DEFAULT_USE_HSYNC);<a name="line.301"></a>
-<span class="sourceLineNo">302</span><a name="line.302"></a>
-<span class="sourceLineNo">303</span>    // WebUI<a name="line.303"></a>
-<span class="sourceLineNo">304</span>    syncMetricsQueue = new CircularFifoQueue&lt;&gt;(<a name="line.304"></a>
-<span class="sourceLineNo">305</span>      conf.getInt(STORE_WAL_SYNC_STATS_COUNT, DEFAULT_SYNC_STATS_COUNT));<a name="line.305"></a>
-<span class="sourceLineNo">306</span><a name="line.306"></a>
-<span class="sourceLineNo">307</span>    // Init sync thread<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    syncThread = new Thread("WALProcedureStoreSyncThread") {<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      @Override<a name="line.309"></a>
-<span class="sourceLineNo">310</span>      public void run() {<a name="line.310"></a>
-<span class="sourceLineNo">311</span>        try {<a name="line.311"></a>
-<span class="sourceLineNo">312</span>          syncLoop();<a name="line.312"></a>
-<span class="sourceLineNo">313</span>        } catch (Throwable e) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>          LOG.error("Got an exception from the sync-loop", e);<a name="line.314"></a>
-<span class="sourceLineNo">315</span>          if (!isSyncAborted()) {<a name="line.315"></a>
-<span class="sourceLineNo">316</span>            sendAbortProcessSignal();<a name="line.316"></a>
-<span class="sourceLineNo">317</span>          }<a name="line.317"></a>
-<span class="sourceLineNo">318</span>        }<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      }<a name="line.319"></a>
-<span class="sourceLineNo">320</span>    };<a name="line.320"></a>
-<span class="sourceLineNo">321</span>    syncThread.start();<a name="line.321"></a>
-<span class="sourceLineNo">322</span>  }<a name="line.322"></a>
-<span class="sourceLineNo">323</span><a name="line.323"></a>
-<span class="sourceLineNo">324</span>  @Override<a name="line.324"></a>
-<span class="sourceLineNo">325</span>  public void stop(final boolean abort) {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    if (!setRunning(false)) {<a name="line.326"></a>
-<span class="sourceLineNo">327</span>      return;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>    }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>    LOG.info("Stopping the WAL Procedure Store, isAbort=" + abort +<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      (isSyncAborted() ? " (self aborting)" : ""));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>    sendStopSignal();<a name="line.332"></a>
-<span class="sourceLineNo">333</span>    if (!isSyncAborted()) {<a name="line.333"></a>
-<span class="sourceLineNo">334</span>      try {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>        while (syncThread.isAlive()) {<a name="line.335"></a>
-<span class="sourceLineNo">336</span>          sendStopSignal();<a name="line.336"></a>
-<span class="sourceLineNo">337</span>          syncThread.join(250);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>        }<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      } catch (InterruptedException e) {<a name="line.339"></a>
-<span class="sourceLineNo">340</span>        LOG.warn("join interrupted", e);<a name="line.340"></a>
-<span class="sourceLineNo">341</span>        Thread.currentThread().interrupt();<a name="line.341"></a>
-<span class="sourceLineNo">342</span>      }<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    }<a name="line.343"></a>
-<span class="sourceLineNo">344</span><a name="line.344"></a>
-<span class="sourceLineNo">345</span>    // Close the writer<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    closeCurrentLogStream(abort);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    // Close the old logs<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    // they should be already closed, this is just in case the load fails<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    // and we call start() and then stop()<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    for (ProcedureWALFile log: logs) {<a name="line.351"></a>
-<span class="sourceLineNo">352</span>      log.close();<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    }<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    logs.clear();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    loading.set(true);<a name="line.355"></a>
-<span class="sourceLineNo">356</span>  }<a name="line.356"></a>
-<span class="sourceLineNo">357</span><a name="line.357"></a>
-<span class="sourceLineNo">358</span>  private void sendStopSignal() {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    if (lock.tryLock()) {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>      try {<a name="line.360"></a>
-<span class="sourceLineNo">361</span>        waitCond.signalAll();<a name="line.361"></a>
-<span class="sourceLineNo">362</span>        syncCond.signalAll();<a name="line.362"></a>
-<span class="sourceLineNo">363</span>      } finally {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>        lock.unlock();<a name="line.364"></a>
-<span class="sourceLineNo">365</span>      }<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    }<a name="line.366"></a>
-<span class="sourceLineNo">367</span>  }<a name="line.367"></a>
-<span class="sourceLineNo">368</span><a name="line.368"></a>
-<span class="sourceLineNo">369</span>  @Override<a name="line.369"></a>
-<span class="sourceLineNo">370</span>  public int getNumThreads() {<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    return slots == null ? 0 : slots.length;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  }<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  @Override<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  public int setRunningProcedureCount(final int count) {<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    this.runningProcCount = count &gt; 0 ? Math.min(count, slots.length) : slots.length;<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    return this.runningProcCount;<a name="line.377"></a>
-<span class="sourceLineNo">378</span>  }<a name="line.378"></a>
-<span class="sourceLineNo">379</span><a name="line.379"></a>
-<span class="sourceLineNo">380</span>  public ProcedureStoreTracker getStoreTracker() {<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    return storeTracker;<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  }<a name="line.382"></a>
-<span class="sourceLineNo">383</span><a name="line.383"></a>
-<span class="sourceLineNo">384</span>  public ArrayList&lt;ProcedureWALFile&gt; getActiveLogs() {<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    lock.lock();<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    try {<a name="line.386"></a>
-<span class="sourceLineNo">387</span>      return new ArrayList&lt;&gt;(logs);<a name="line.387"></a>
-<span class="sourceLineNo">388</span>    } finally {<a name="line.388"></a>
-<span class="sourceLineNo">389</span>      lock.unlock();<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    }<a name="line.390"></a>
-<span class="sourceLineNo">391</span>  }<a name="line.391"></a>
-<span class="sourceLineNo">392</span><a name="line.392"></a>
-<span class="sourceLineNo">393</span>  public Set&lt;ProcedureWALFile&gt; getCorruptedLogs() {<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    return corruptedLogs;<a name="line.394"></a>
-<span class="sourceLineNo">395</span>  }<a name="line.395"></a>
-<span class="sourceLineNo">396</span><a name="line.396"></a>
-<span class="sourceLineNo">397</span>  @Override<a name="line.397"></a>
-<span class="sourceLineNo">398</span>  public void recoverLease() throws IOException {<a name="line.398"></a>
-<span class="sourceLineNo">399</span>    lock.lock();<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    try {<a name="line.400"></a>
-<span class="sourceLineNo">401</span>      LOG.debug("Starting WAL Procedure Store lease recovery");<a name="line.401"></a>
-<span class="sourceLineNo">402</span>      boolean afterFirstAttempt = false;<a name="line.402"></a>
-<span class="sourceLineNo">403</span>      while (isRunning()) {<a name="line.403"></a>
-<span class="sourceLineNo">404</span>        // Don't sleep before first attempt<a name="line.404"></a>
-<span class="sourceLineNo">405</span>        if (afterFirstAttempt) {<a name="line.405"></a>
-<span class="sourceLineNo">406</span>          LOG.trace("Sleep {} ms after first lease recovery attempt.",<a name="line.406"></a>
-<span class="sourceLineNo">407</span>              waitBeforeRoll);<a name="line.407"></a>
-<span class="sourceLineNo">408</span>          Threads.sleepWithoutInterrupt(waitBeforeRoll);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>        } else {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>          afterFirstAttempt = true;<a name="line.410"></a>
-<span class="sourceLineNo">411</span>        }<a name="line.411"></a>
-<span class="sourceLineNo">412</span>        FileStatus[] oldLogs = getLogFiles();<a name="line.412"></a>
-<span class="sourceLineNo">413</span>        // Get Log-MaxID and recover lease on old logs<a name="line.413"></a>
-<span class="sourceLineNo">414</span>        try {<a name="line.414"></a>
-<span class="sourceLineNo">415</span>          flushLogId = initOldLogs(oldLogs);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>        } catch (FileNotFoundException e) {<a name="line.416"></a>
-<span class="sourceLineNo">417</span>          LOG.warn("Someone else is active and deleted logs. retrying.", e);<a name="line.417"></a>
-<span class="sourceLineNo">418</span>          continue;<a name="line.418"></a>
-<span class="sourceLineNo">419</span>        }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>        // Create new state-log<a name="line.421"></a>
-<span class="sourceLineNo">422</span>        if (!rollWriter(flushLogId + 1)) {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>          // someone else has already created this log<a name="line.423"></a>
-<span class="sourceLineNo">424</span>          LOG.debug("Someone else has already created log {}. Retrying.", flushLogId);<a name="line.424"></a>
-<span class="sourceLineNo">425</span>          continue;<a name="line.425"></a>
-<span class="sourceLineNo">426</span>        }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>        // We have the lease on the log<a name="line.428"></a>
-<span class="sourceLineNo">429</span>        oldLogs = getLogFiles();<a name="line.429"></a>
-<span class="sourceLineNo">430</span>        if (getMaxLogId(oldLogs) &gt; flushLogId) {<a name="line.430"></a>
-<span class="sourceLineNo">431</span>          LOG.debug("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>          logs.getLast().removeFile(this.walArchiveDir);<a name="line.432"></a>
-<span class="sourceLineNo">433</span>          continue;<a name="line.433"></a>
-<span class="sourceLineNo">434</span>        }<a name="line.434"></a>
-<span class="sourceLineNo">435</span><a name="line.435"></a>
-<span class="sourceLineNo">436</span>        LOG.debug("Lease acquired for flushLogId={}", flushLogId);<a name="line.436"></a>
-<span class="sourceLineNo">437</span>        break;<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      }<a name="line.438"></a>
-<span class="sourceLineNo">439</span>    } finally {<a name="line.439"></a>
-<span class="sourceLineNo">440</span>      lock.unlock();<a name="line.440"></a>
-<span class="sourceLineNo">441</span>    }<a name="line.441"></a>
-<span class="sourceLineNo">442</span>  }<a name="line.442"></a>
-<span class="sourceLineNo">443</span><a name="line.443"></a>
-<span class="sourceLineNo">444</span>  @Override<a name="line.444"></a>
-<span class="sourceLineNo">445</span>  public void load(ProcedureLoader loader) throws IOException {<a name="line.445"></a>
-<span class="sourceLineNo">446</span>    lock.lock();<a name="line.446"></a>
-<span class="sourceLineNo">447</span>    try {<a name="line.447"></a>
-<span class="sourceLineNo">448</span>      if (logs.isEmpty()) {<a name="line.448"></a>
-<span class="sourceLineNo">449</span>        throw new IllegalStateException("recoverLease() must be called before loading data");<a name="line.449"></a>
-<span class="sourceLineNo">450</span>      }<a name="line.450"></a>
-<span class="sourceLineNo">451</span><a name="line.451"></a>
-<span class="sourceLineNo">452</span>      // Nothing to do, If we have only the current log.<a name="line.452"></a>
-<span class="sourceLineNo">453</span>      if (logs.size() == 1) {<a name="line.453"></a>
-<span class="sourceLineNo">454</span>        LOG.debug("No state logs to replay.");<a name="line.454"></a>
-<span class="sourceLineNo">455</span>        loader.setMaxProcId(0);<a name="line.455"></a>
-<span class="sourceLineNo">456</span>        loading.set(false);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>        return;<a name="line.457"></a>
-<span class="sourceLineNo">458</span>      }<a name="line.458"></a>
-<span class="sourceLineNo">459</span><a name="line.459"></a>
-<span class="sourceLineNo">460</span>      // Load the old logs<a name="line.460"></a>
-<span class="sourceLineNo">461</span>      Iterator&lt;ProcedureWALFile&gt; it = logs.descendingIterator();<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      it.next(); // Skip the current log<a name="line.462"></a>
-<span class="sourceLineNo">463</span><a name="line.463"></a>
-<span class="sourceLineNo">464</span>      ProcedureWALFormat.load(it, storeTracker, new ProcedureWALFormat.Loader() {<a name="line.464"></a>
+<span class="sourceLineNo">091</span> * TODO: try using disruptor to increase performance and simplify the logic?<a name="line.91"></a>
+<span class="sourceLineNo">092</span> * &lt;p/&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * The {@link #storeTracker} keeps track of the modified procedures in the newest wal file, which is<a name="line.93"></a>
+<span class="sourceLineNo">094</span> * also the one being written currently. And the deleted bits in it are for all the procedures, not<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * only the ones in the newest wal file. And when rolling a log, we will first store it in the<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * trailer of the current wal file, and then reset its modified bits, so that it can start to track<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * the modified procedures for the new wal file.<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p/&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * The {@link #holdingCleanupTracker} is used to test whether we are safe to delete the oldest wal<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * file. When there are log rolling and there are more than 1 wal files, we will make use of it. It<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * will first be initialized to the oldest file's tracker(which is stored in the trailer), using the<a name="line.101"></a>
+<span class="sourceLineNo">102</span> * method {@link ProcedureStoreTracker#resetTo(ProcedureStoreTracker, boolean)}, and then merge it<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * with the tracker of every newer wal files, using the<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * {@link ProcedureStoreTracker#setDeletedIfModifiedInBoth(ProcedureStoreTracker)}.<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * If we find out<a name="line.105"></a>
+<span class="sourceLineNo">106</span> * that all the modified procedures for the oldest wal file are modified or deleted in newer wal<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * files, then we can delete it. This is because that, every time we call<a name="line.107"></a>
+<span class="sourceLineNo">108</span> * {@link ProcedureStore#insert(Procedure[])} or {@link ProcedureStore#update(Procedure)}, we will<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * persist the full state of a Procedure, so the earlier wal records for this procedure can all be<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * deleted.<a name="line.110"></a>
+<span class="sourceLineNo">111</span> * @see ProcedureWALPrettyPrinter for printing content of a single WAL.<a name="line.111"></a>
+<span class="sourceLineNo">112</span> * @see #main(String[]) to parse a directory of MasterWALProcs.<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * @deprecated Since 2.3.0, will be removed in 4.0.0. Keep here only for rolling upgrading, now we<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *             use the new region based procedure store.<a name="line.114"></a>
+<span class="sourceLineNo">115</span> */<a name="line.115"></a>
+<span class="sourceLineNo">116</span>@Deprecated<a name="line.116"></a>
+<span class="sourceLineNo">117</span>@InterfaceAudience.Private<a name="line.117"></a>
+<span class="sourceLineNo">118</span>public class WALProcedureStore extends ProcedureStoreBase {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>  private static final Logger LOG = LoggerFactory.getLogger(WALProcedureStore.class);<a name="line.119"></a>
+<span class="sourceLineNo">120</span>  public static final String LOG_PREFIX = "pv2-";<a name="line.120"></a>
+<span class="sourceLineNo">121</span>  /** Used to construct the name of the log directory for master procedures */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>  public static final String MASTER_PROCEDURE_LOGDIR = "MasterProcWALs";<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>  public static final String WAL_COUNT_WARN_THRESHOLD_CONF_KEY =<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    "hbase.procedure.store.wal.warn.threshold";<a name="line.126"></a>
+<span class="sourceLineNo">127</span>  private static final int DEFAULT_WAL_COUNT_WARN_THRESHOLD = 10;<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>  public static final String EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY =<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    "hbase.procedure.store.wal.exec.cleanup.on.load";<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  private static final boolean DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY = true;<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  public static final String MAX_RETRIES_BEFORE_ROLL_CONF_KEY =<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    "hbase.procedure.store.wal.max.retries.before.roll";<a name="line.134"></a>
+<span class="sourceLineNo">135</span>  private static final int DEFAULT_MAX_RETRIES_BEFORE_ROLL = 3;<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public static final String WAIT_BEFORE_ROLL_CONF_KEY =<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    "hbase.procedure.store.wal.wait.before.roll";<a name="line.138"></a>
+<span class="sourceLineNo">139</span>  private static final int DEFAULT_WAIT_BEFORE_ROLL = 500;<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>  public static final String ROLL_RETRIES_CONF_KEY =<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    "hbase.procedure.store.wal.max.roll.retries";<a name="line.142"></a>
+<span class="sourceLineNo">143</span>  private static final int DEFAULT_ROLL_RETRIES = 3;<a name="line.143"></a>
+<span class="sourceLineNo">144</span><a name="line.144"></a>
+<span class="sourceLineNo">145</span>  public static final String MAX_SYNC_FAILURE_ROLL_CONF_KEY =<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    "hbase.procedure.store.wal.sync.failure.roll.max";<a name="line.146"></a>
+<span class="sourceLineNo">147</span>  private static final int DEFAULT_MAX_SYNC_FAILURE_ROLL = 3;<a name="line.147"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>  public static final String PERIODIC_ROLL_CONF_KEY =<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    "hbase.procedure.store.wal.periodic.roll.msec";<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  private static final int DEFAULT_PERIODIC_ROLL = 60 * 60 * 1000; // 1h<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>  public static final String SYNC_WAIT_MSEC_CONF_KEY = "hbase.procedure.store.wal.sync.wait.msec";<a name="line.153"></a>
+<span class="sourceLineNo">154</span>  private static final int DEFAULT_SYNC_WAIT_MSEC = 100;<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>  public static final String USE_HSYNC_CONF_KEY = "hbase.procedure.store.wal.use.hsync";<a name="line.156"></a>
+<span class="sourceLineNo">157</span>  private static final boolean DEFAULT_USE_HSYNC = true;<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>  public static final String ROLL_THRESHOLD_CONF_KEY = "hbase.procedure.store.wal.roll.threshold";<a name="line.159"></a>
+<span class="sourceLineNo">160</span>  private static final long DEFAULT_ROLL_THRESHOLD = 32 * 1024 * 1024; // 32M<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>  public static final String STORE_WAL_SYNC_STATS_COUNT =<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      "hbase.procedure.store.wal.sync.stats.count";<a name="line.163"></a>
+<span class="sourceLineNo">164</span>  private static final int DEFAULT_SYNC_STATS_COUNT = 10;<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>  private final LinkedList&lt;ProcedureWALFile&gt; logs = new LinkedList&lt;&gt;();<a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private final ProcedureStoreTracker holdingCleanupTracker = new ProcedureStoreTracker();<a name="line.167"></a>
+<span class="sourceLineNo">168</span>  private final ProcedureStoreTracker storeTracker = new ProcedureStoreTracker();<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  private final ReentrantLock lock = new ReentrantLock();<a name="line.169"></a>
+<span class="sourceLineNo">170</span>  private final Condition waitCond = lock.newCondition();<a name="line.170"></a>
+<span class="sourceLineNo">171</span>  private final Condition slotCond = lock.newCondition();<a name="line.171"></a>
+<span class="sourceLineNo">172</span>  private final Condition syncCond = lock.newCondition();<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>  private final LeaseRecovery leaseRecovery;<a name="line.174"></a>
+<span class="sourceLineNo">175</span>  private final Configuration conf;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  private final FileSystem fs;<a name="line.176"></a>
+<span class="sourceLineNo">177</span>  private final Path walDir;<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  private final Path walArchiveDir;<a name="line.178"></a>
+<span class="sourceLineNo">179</span>  private final boolean enforceStreamCapability;<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>  private final AtomicReference&lt;Throwable&gt; syncException = new AtomicReference&lt;&gt;();<a name="line.181"></a>
+<span class="sourceLineNo">182</span>  private final AtomicBoolean loading = new AtomicBoolean(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>  private final AtomicBoolean inSync = new AtomicBoolean(false);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>  private final AtomicLong totalSynced = new AtomicLong(0);<a name="line.184"></a>
+<span class="sourceLineNo">185</span>  private final AtomicLong lastRollTs = new AtomicLong(0);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>  private final AtomicLong syncId = new AtomicLong(0);<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>  private LinkedTransferQueue&lt;ByteSlot&gt; slotsCache = null;<a name="line.188"></a>
+<span class="sourceLineNo">189</span>  private Set&lt;ProcedureWALFile&gt; corruptedLogs = null;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>  private FSDataOutputStream stream = null;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>  private int runningProcCount = 1;<a name="line.191"></a>
+<span class="sourceLineNo">192</span>  private long flushLogId = 0;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>  private int syncMaxSlot = 1;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>  private int slotIndex = 0;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>  private Thread syncThread;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  private ByteSlot[] slots;<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  private int walCountWarnThreshold;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  private int maxRetriesBeforeRoll;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>  private int maxSyncFailureRoll;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>  private int waitBeforeRoll;<a name="line.201"></a>
+<span class="sourceLineNo">202</span>  private int rollRetries;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>  private int periodicRollMsec;<a name="line.203"></a>
+<span class="sourceLineNo">204</span>  private long rollThreshold;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>  private boolean useHsync;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>  private int syncWaitMsec;<a name="line.206"></a>
+<span class="sourceLineNo">207</span><a name="line.207"></a>
+<span class="sourceLineNo">208</span>  // Variables used for UI display<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  private CircularFifoQueue&lt;SyncMetrics&gt; syncMetricsQueue;<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  public static class SyncMetrics {<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    private long timestamp;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    private long syncWaitMs;<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    private long totalSyncedBytes;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    private int syncedEntries;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    private float syncedPerSec;<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>    public long getTimestamp() {<a name="line.218"></a>
+<span class="sourceLineNo">219</span>      return timestamp;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    }<a name="line.220"></a>
+<span class="sourceLineNo">221</span><a name="line.221"></a>
+<span class="sourceLineNo">222</span>    public long getSyncWaitMs() {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      return syncWaitMs;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>    public long getTotalSyncedBytes() {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>      return totalSyncedBytes;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    }<a name="line.228"></a>
+<span class="sourceLineNo">229</span><a name="line.229"></a>
+<span class="sourceLineNo">230</span>    public long getSyncedEntries() {<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      return syncedEntries;<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span><a name="line.233"></a>
+<span class="sourceLineNo">234</span>    public float getSyncedPerSec() {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>      return syncedPerSec;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
+<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public WALProcedureStore(Configuration conf, LeaseRecovery leaseRecovery) throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    this(conf, new Path(CommonFSUtils.getWALRootDir(conf), MASTER_PROCEDURE_LOGDIR),<a name="line.240"></a>
+<span class="sourceLineNo">241</span>      new Path(CommonFSUtils.getWALRootDir(conf), HConstants.HREGION_OLDLOGDIR_NAME),<a name="line.241"></a>
+<span class="sourceLineNo">242</span>      leaseRecovery);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>  }<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>  public WALProcedureStore(final Configuration conf, final Path walDir, final Path walArchiveDir,<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      final LeaseRecovery leaseRecovery) throws IOException {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    this.conf = conf;<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    this.leaseRecovery = leaseRecovery;<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    this.walDir = walDir;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    this.walArchiveDir = walArchiveDir;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    this.fs = CommonFSUtils.getWALFileSystem(conf);<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    this.enforceStreamCapability = conf.getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE,<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        true);<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>    // Create the log directory for the procedure store<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    if (!fs.exists(walDir)) {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      if (!fs.mkdirs(walDir)) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        throw new IOException("Unable to mkdir " + walDir);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    }<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    // Now that it exists, set the log policy<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    String storagePolicy =<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        conf.get(HConstants.WAL_STORAGE_POLICY, HConstants.DEFAULT_WAL_STORAGE_POLICY);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    CommonFSUtils.setStoragePolicy(fs, walDir, storagePolicy);<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>    // Create archive dir up front. Rename won't work w/o it up on HDFS.<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    if (this.walArchiveDir != null &amp;&amp; !this.fs.exists(this.walArchiveDir)) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      if (this.fs.mkdirs(this.walArchiveDir)) {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>        LOG.debug("Created Procedure Store WAL archive dir {}", this.walArchiveDir);<a name="line.269"></a>
+<span class="sourceLineNo">270</span>      } else {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>        LOG.warn("Failed create of {}", this.walArchiveDir);<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    }<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public void start(int numSlots) throws IOException {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    if (!setRunning(true)) {<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      return;<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    }<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>    // Init buffer slots<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    loading.set(true);<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    runningProcCount = numSlots;<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    syncMaxSlot = numSlots;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    slots = new ByteSlot[numSlots];<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    slotsCache = new LinkedTransferQueue&lt;&gt;();<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    while (slotsCache.size() &lt; numSlots) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      slotsCache.offer(new ByteSlot());<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    }<a name="line.290"></a>
+<span class="sourceLineNo">291</span><a name="line.291"></a>
+<span class="sourceLineNo">292</span>    // Tunings<a name="line.292"></a>
+<span class="sourceLineNo">293</span>    walCountWarnThreshold =<a name="line.293"></a>
+<span class="sourceLineNo">294</span>      conf.getInt(WAL_COUNT_WARN_THRESHOLD_CONF_KEY, DEFAULT_WAL_COUNT_WARN_THRESHOLD);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    maxRetriesBeforeRoll =<a name="line.295"></a>
+<span class="sourceLineNo">296</span>      conf.getInt(MAX_RETRIES_BEFORE_ROLL_CONF_KEY, DEFAULT_MAX_RETRIES_BEFORE_ROLL);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    maxSyncFailureRoll = conf.getInt(MAX_SYNC_FAILURE_ROLL_CONF_KEY, DEFAULT_MAX_SYNC_FAILURE_ROLL);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    waitBeforeRoll = conf.getInt(WAIT_BEFORE_ROLL_CONF_KEY, DEFAULT_WAIT_BEFORE_ROLL);<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    rollRetries = conf.getInt(ROLL_RETRIES_CONF_KEY, DEFAULT_ROLL_RETRIES);<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    rollThreshold = conf.getLong(ROLL_THRESHOLD_CONF_KEY, DEFAULT_ROLL_THRESHOLD);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    periodicRollMsec = conf.getInt(PERIODIC_ROLL_CONF_KEY, DEFAULT_PERIODIC_ROLL);<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    syncWaitMsec = conf.getInt(SYNC_WAIT_MSEC_CONF_KEY, DEFAULT_SYNC_WAIT_MSEC);<a name="line.302"></a>
+<span class="sourceLineNo">303</span>    useHsync = conf.getBoolean(USE_HSYNC_CONF_KEY, DEFAULT_USE_HSYNC);<a name="line.303"></a>
+<span class="sourceLineNo">304</span><a name="line.304"></a>
+<span class="sourceLineNo">305</span>    // WebUI<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    syncMetricsQueue = new CircularFifoQueue&lt;&gt;(<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      conf.getInt(STORE_WAL_SYNC_STATS_COUNT, DEFAULT_SYNC_STATS_COUNT));<a name="line.307"></a>
+<span class="sourceLineNo">308</span><a name="line.308"></a>
+<span class="sourceLineNo">309</span>    // Init sync thread<a name="line.309"></a>
+<span class="sourceLineNo">310</span>    syncThread = new Thread("WALProcedureStoreSyncThread") {<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      @Override<a name="line.311"></a>
+<span class="sourceLineNo">312</span>      public void run() {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>        try {<a name="line.313"></a>
+<span class="sourceLineNo">314</span>          syncLoop();<a name="line.314"></a>
+<span class="sourceLineNo">315</span>        } catch (Throwable e) {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>          LOG.error("Got an exception from the sync-loop", e);<a name="line.316"></a>
+<span class="sourceLineNo">317</span>          if (!isSyncAborted()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>            sendAbortProcessSignal();<a name="line.318"></a>
+<span class="sourceLineNo">319</span>          }<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        }<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    };<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    syncThread.start();<a name="line.323"></a>
+<span class="sourceLineNo">324</span>  }<a name="line.324"></a>
+<span class="sourceLineNo">325</span><a name="line.325"></a>
+<span class="sourceLineNo">326</span>  @Override<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  public void stop(final boolean abort) {<a name="line.327"></a>
+<span class="sourceLineNo">328</span>    if (!setRunning(false)) {<a name="line.328"></a>
+<span class="sourceLineNo">329</span>      return;<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    }<a name="line.330"></a>
+<span class="sourceLineNo">331</span><a name="line.331"></a>
+<span class="sourceLineNo">332</span>    LOG.info("Stopping the WAL Procedure Store, isAbort=" + abort +<a name="line.332"></a>
+<span class="sourceLineNo">333</span>      (isSyncAborted() ? " (self aborting)" : ""));<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    sendStopSignal();<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    if (!isSyncAborted()) {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>      try {<a name="line.336"></a>
+<span class="sourceLineNo">337</span>        while (syncThread.isAlive()) {<a name="line.337"></a>
+<span class="sourceLineNo">338</span>          sendStopSignal();<a name="line.338"></a>
+<span class="sourceLineNo">339</span>          syncThread.join(250);<a name="line.339"></a>
+<span class="sourceLineNo">340</span>        }<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      } catch (InterruptedException e) {<a name="line.341"></a>
+<span class="sourceLineNo">342</span>        LOG.warn("join interrupted", e);<a name="line.342"></a>
+<span class="sourceLineNo">343</span>        Thread.currentThread().interrupt();<a name="line.343"></a>
+<span class="sourceLineNo">344</span>      }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    // Close the writer<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    closeCurrentLogStream(abort);<a name="line.348"></a>
+<span class="sourceLineNo">349</span><a name="line.349"></a>
+<span class="sourceLineNo">350</span>    // Close the old logs<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    // they should be already closed, this is just in case the load fails<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // and we call start() and then stop()<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    for (ProcedureWALFile log: logs) {<a name="line.353"></a>
+<span class="sourceLineNo">354</span>      log.close();<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    }<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    logs.clear();<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    loading.set(true);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>  private void sendStopSignal() {<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    if (lock.tryLock()) {<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      try {<a name="line.362"></a>
+<span class="sourceLineNo">363</span>        waitCond.signalAll();<a name="line.363"></a>
+<span class="sourceLineNo">364</span>        syncCond.signalAll();<a name="line.364"></a>
+<span class="sourceLineNo">365</span>      } finally {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>        lock.unlock();<a name="line.366"></a>
+<span class="sourceLineNo">367</span>      }<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    }<a name="line.368"></a>
+<span class="sourceLineNo">369</span>  }<a name="line.369"></a>
+<span class="sourceLineNo">370</span><a name="line.370"></a>
+<span class="sourceLineNo">371</span>  @Override<a name="line.371"></a>
+<span class="sourceLineNo">372</span>  public int getNumThreads() {<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    return slots == null ? 0 : slots.length;<a name="line.373"></a>
+<span class="sourceLineNo">374</span>  }<a name="line.374"></a>
+<span class="sourceLineNo">375</span><a name="line.375"></a>
+<span class="sourceLineNo">376</span>  @Override<a name="line.376"></a>
+<span class="sourceLineNo">377</span>  public int setRunningProcedureCount(final int count) {<a name="line.377"></a>
+<span class="sourceLineNo">378</span>    this.runningProcCount = count &gt; 0 ? Math.min(count, slots.length) : slots.length;<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    return this.runningProcCount;<a name="line.379"></a>
+<span class="sourceLineNo">380</span>  }<a name="line.380"></a>
+<span class="sourceLineNo">381</span><a name="line.381"></a>
+<span class="sourceLineNo">382</span>  public ProcedureStoreTracker getStoreTracker() {<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    return storeTracker;<a name="line.383"></a>
+<span class="sourceLineNo">384</span>  }<a name="line.384"></a>
+<span class="sourceLineNo">385</span><a name="line.385"></a>
+<span class="sourceLineNo">386</span>  public ArrayList&lt;ProcedureWALFile&gt; getActiveLogs() {<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    lock.lock();<a name="line.387"></a>
+<span class="sourceLineNo">388</span>    try {<a name="line.388"></a>
+<span class="sourceLineNo">389</span>      return new ArrayList&lt;&gt;(logs);<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    } finally {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>      lock.unlock();<a name="line.391"></a>
+<span class="sourceLineNo">392</span>    }<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  public Set&lt;ProcedureWALFile&gt; getCorruptedLogs() {<a name="line.395"></a>
+<span class="sourceLineNo">396</span>    return corruptedLogs;<a name="line.396"></a>
+<span class="sourceLineNo">397</span>  }<a name="line.397"></a>
+<span class="sourceLineNo">398</span><a name="line.398"></a>
+<span class="sourceLineNo">399</span>  @Override<a name="line.399"></a>
+<span class="sourceLineNo">400</span>  public void recoverLease() throws IOException {<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    lock.lock();<a name="line.401"></a>
+<span class="sourceLineNo">402</span>    try {<a name="line.402"></a>
+<span class="sourceLineNo">403</span>      LOG.debug("Starting WAL Procedure Store lease recovery");<a name="line.403"></a>
+<span class="sourceLineNo">404</span>      boolean afterFirstAttempt = false;<a name="line.404"></a>
+<span class="sourceLineNo">405</span>      while (isRunning()) {<a name="line.405"></a>
+<span class="sourceLineNo">406</span>        // Don't sleep before first attempt<a name="line.406"></a>
+<span class="sourceLineNo">407</span>        if (afterFirstAttempt) {<a name="line.407"></a>
+<span class="sourceLineNo">408</span>          LOG.trace("Sleep {} ms after first lease recovery attempt.",<a name="line.408"></a>
+<span class="sourceLineNo">409</span>              waitBeforeRoll);<a name="line.409"></a>
+<span class="sourceLineNo">410</span>          Threads.sleepWithoutInterrupt(waitBeforeRoll);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>        } else {<a name="line.411"></a>
+<span class="sourceLineNo">412</span>          afterFirstAttempt = true;<a name="line.412"></a>
+<span class="sourceLineNo">413</span>        }<a name="line.413"></a>
+<span class="sourceLineNo">414</span>        FileStatus[] oldLogs = getLogFiles();<a name="line.414"></a>
+<span class="sourceLineNo">415</span>        // Get Log-MaxID and recover lease on old logs<a name="line.415"></a>
+<span class="sourceLineNo">416</span>        try {<a name="line.416"></a>
+<span class="sourceLineNo">417</span>          flushLogId = initOldLogs(oldLogs);<a name="line.417"></a>
+<span class="sourceLineNo">418</span>        } catch (FileNotFoundException e) {<a name="line.418"></a>
+<span class="sourceLineNo">419</span>          LOG.warn("Someone else is active and deleted logs. retrying.", e);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>          continue;<a name="line.420"></a>
+<span class="sourceLineNo">421</span>        }<a name="line.421"></a>
+<span class="sourceLineNo">422</span><a name="line.422"></a>
+<span class="sourceLineNo">423</span>        // Create new state-log<a name="line.423"></a>
+<span class="sourceLineNo">424</span>        if (!rollWriter(flushLogId + 1)) {<a name="line.424"></a>
+<span class="sourceLineNo">425</span>          // someone else has already created this log<a name="line.425"></a>
+<span class="sourceLineNo">426</span>          LOG.debug("Someone else has already created log {}. Retrying.", flushLogId);<a name="line.426"></a>
+<span class="sourceLineNo">427</span>          continue;<a name="line.427"></a>
+<span class="sourceLineNo">428</span>        }<a name="line.428"></a>
+<span class="sourceLineNo">429</span><a name="line.429"></a>
+<span class="sourceLineNo">430</span>        // We have the lease on the log<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        oldLogs = getLogFiles();<a name="line.431"></a>
+<span class="sourceLineNo">432</span>        if (getMaxLogId(oldLogs) &gt; flushLogId) {<a name="line.432"></a>
+<span class="sourceLineNo">433</span>          LOG.debug("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>          logs.getLast().removeFile(this.walArchiveDir);<a name="line.434"></a>
+<span class="sourceLineNo">435</span>          continue;<a name="line.435"></a>
+<span class="sourceLineNo">436</span>        }<a name="line.436"></a>
+<span class="sourceLineNo">437</span><a name="line.437"></a>
+<span class="sourceLineNo">438</span>        LOG.debug("Lease acquired for flushLogId={}", flushLogId);<a name="line.438"></a>
+<span class="sourceLineNo">439</span>        break;<a name="line.439"></a>
+<span class="sourceLineNo">440</span>      }<a name="line.440"></a>
+<span class="sourceLineNo">441</span>    } finally {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>      lock.unlock();<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    }<a name="line.443"></a>
+<span class="sourceLineNo">444</span>  }<a name="line.444"></a>
+<span class="sourceLineNo">445</span><a name="line.445"></a>
+<span class="sourceLineNo">446</span>  @Override<a name="line.446"></a>
+<span class="sourceLineNo">447</span>  public void load(ProcedureLoader loader) throws IOException {<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    lock.lock();<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    try {<a name="line.449"></a>
+<span class="sourceLineNo">450</span>      if (logs.isEmpty()) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>        throw new IllegalStateException("recoverLease() must be called before loading data");<a name="line.451"></a>
+<span class="sourceLineNo">452</span>      }<a name="line.452"></a>
+<span class="sourceLineNo">453</span><a name="line.453"></a>
+<span class="sourceLineNo">454</span>      // Nothing to do, If we have only the current log.<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      if (logs.size() == 1) {<a name="line.455"></a>
+<span class="sourceLineNo">456</span>        LOG.debug("No state logs to replay.");<a name="line.456"></a>
+<span class="sourceLineNo">457</span>        loader.setMaxProcId(0);<a name="line.457"></a>
+<span class="sourceLineNo">458</span>        loading.set(false);<a name="line.458"></a>
+<span class="sourceLineNo">459</span>        return;<a name="line.459"></a>
+<span class="sourceLineNo">460</span>      }<a name="line.460"></a>
+<span class="sourceLineNo">461</span><a name="line.461"></a>
+<span class="sourceLineNo">462</span>      // Load the old logs<a name="line.462"></a>
+<span class="sourceLineNo">463</span>      Iterator&lt;ProcedureWALFile&gt; it = logs.descendingIterator();<a name="line.463"></a>
+<span class="sourceLineNo">464</span>      it.next(); // Skip the current log<a name="line.464"></a>
 <span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>        @Override<a name="line.466"></a>
-<span class="sourceLineNo">467</span>        public void setMaxProcId(long maxProcId) {<a name="line.467"></a>
-<span class="sourceLineNo">468</span>          loader.setMaxProcId(maxProcId);<a name="line.468"></a>
-<span class="sourceLineNo">469</span>        }<a name="line.469"></a>
-<span class="sourceLineNo">470</span><a name="line.470"></a>
-<span class="sourceLineNo">471</span>        @Override<a name="line.471"></a>
-<span class="sourceLineNo">472</span>        public void load(ProcedureIterator procIter) throws IOException {<a name="line.472"></a>
-<span class="sourceLineNo">473</span>          loader.load(procIter);<a name="line.473"></a>
-<span class="sourceLineNo">474</span>        }<a name="line.474"></a>
-<span class="sourceLineNo">475</span><a name="line.475"></a>
-<span class="sourceLineNo">476</span>        @Override<a name="line.476"></a>
-<span class="sourceLineNo">477</span>        public void handleCorrupted(ProcedureIterator procIter) throws IOException {<a name="line.477"></a>
-<span class="sourceLineNo">478</span>          loader.handleCorrupted(procIter);<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        }<a name="line.479"></a>
-<span class="sourceLineNo">480</span><a name="line.480"></a>
-<span class="sourceLineNo">481</span>        @Override<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        public void markCorruptedWAL(ProcedureWALFile log, IOException e) {<a name="line.482"></a>
-<span class="sourceLineNo">483</span>          if (corruptedLogs == null) {<a name="line.483"></a>
-<span class="sourceLineNo">484</span>            corruptedLogs = new HashSet&lt;&gt;();<a name="line.484"></a>
-<span class="sourceLineNo">485</span>          }<a name="line.485"></a>
-<span class="sourceLineNo">486</span>          corruptedLogs.add(log);<a name="line.486"></a>
-<span class="sourceLineNo">487</span>          // TODO: sideline corrupted log<a name="line.487"></a>
-<span class="sourceLineNo">488</span>        }<a name="line.488"></a>
-<span class="sourceLineNo">489</span>      });<a name="line.489"></a>
-<span class="sourceLineNo">490</span>      // if we fail when loading, we should prevent persisting the storeTracker later in the stop<a name="line.490"></a>
-<span class="sourceLineNo">491</span>      // method. As it may happen that, we have finished constructing the modified and deleted bits,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>      // but before we call resetModified, we fail, then if we persist the storeTracker then when<a name="line.492"></a>
-<span class="sourceLineNo">493</span>      // restarting, we will consider that all procedures have been included in this file and delete<a name="line.493"></a>
-<span class="sourceLineNo">494</span>      // all the previous files. Obviously this not correct. So here we will only set loading to<a name="line.494"></a>
-<span class="sourceLineNo">495</span>      // false when we successfully loaded all the procedures, and when closing we will skip<a name="line.495"></a>
-<span class="sourceLineNo">496</span>      // persisting the store tracker. And also, this will prevent the sync thread to do<a name="line.496"></a>
-<span class="sourceLineNo">497</span>      // periodicRoll, where we may also clean old logs.<a name="line.497"></a>
-<span class="sourceLineNo">498</span>      loading.set(false);<a name="line.498"></a>
-<span class="sourceLineNo">499</span>      // try to cleanup inactive wals and complete the operation<a name="line.499"></a>
-<span class="sourceLineNo">500</span>      buildHoldingCleanupTracker();<a name="line.500"></a>
-<span class="sourceLineNo">501</span>      tryCleanupLogsOnLoad();<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    } finally {<a name="line.502"></a>
-<span class="sourceLineNo">503</span>      lock.unlock();<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    }<a name="line.504"></a>
-<span class="sourceLineNo">505</span>  }<a name="line.505"></a>
-<span class="sourceLineNo">506</span><a name="line.506"></a>
-<span class="sourceLineNo">507</span>  private void tryCleanupLogsOnLoad() {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>    // nothing to cleanup.<a name="line.508"></a>
-<span class="sourceLineNo">509</span>    if (logs.size() &lt;= 1) {<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      return;<a name="line.510"></a>
-<span class="sourceLineNo">511</span>    }<a name="line.511"></a>
-<span class="sourceLineNo">512</span><a name="line.512"></a>
-<span class="sourceLineNo">513</span>    // the config says to not cleanup wals on load.<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    if (!conf.getBoolean(EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY,<a name="line.514"></a>
-<span class="sourceLineNo">515</span>      DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY)) {<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      LOG.debug("WALs cleanup on load is not enabled: " + getActiveLogs());<a name="line.516"></a>
-<span class="sourceLineNo">517</span>      return;<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    }<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    try {<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      periodicRoll();<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } catch (IOException e) {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      LOG.warn("Unable to cleanup logs on load: " + e.getMessage(), e);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  @Override<a name="line.527"></a>
-<span class="sourceLineNo">528</span>  public void insert(Procedure&lt;?&gt; proc, Procedure&lt;?&gt;[] subprocs) {<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    if (LOG.isTraceEnabled()) {<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      LOG.trace("Insert " + proc + ", subproc=" + Arrays.toString(subprocs));<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    }<a name="line.531"></a>
-<span class="sourceLineNo">532</span><a name="line.532"></a>
-<span class="sourceLineNo">533</span>    ByteSlot slot = acquireSlot();<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    try {<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      // Serialize the insert<a name="line.535"></a>
-<span class="sourceLineNo">536</span>      long[] subProcIds = null;<a name="line.536"></a>
-<span class="sourceLineNo">537</span>      if (subprocs != null) {<a name="line.537"></a>
-<span class="sourceLineNo">538</span>        ProcedureWALFormat.writeInsert(slot, proc, subprocs);<a name="line.538"></a>
-<span class="sourceLineNo">539</span>        subProcIds = new long[subprocs.length];<a name="line.539"></a>
-<span class="sourceLineNo">540</span>        for (int i = 0; i &lt; subprocs.length; ++i) {<a name="line.540"></a>
-<span class="sourceLineNo">541</span>          subProcIds[i] = subprocs[i].getProcId();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>        }<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      } else {<a name="line.543"></a>
-<span class="sourceLineNo">544</span>        assert !proc.hasParent();<a name="line.544"></a>
-<span class="sourceLineNo">545</span>        ProcedureWALFormat.writeInsert(slot, proc);<a name="line.545"></a>
-<span class="sourceLineNo">546</span>      }<a name="line.546"></a>
-<span class="sourceLineNo">547</span><a name="line.547"></a>
-<span class="sourceLineNo">548</span>      // Push the transaction data and wait until it is persisted<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      pushData(PushType.INSERT, slot, proc.getProcId(), subProcIds);<a name="line.549"></a>
-<span class="sourceLineNo">550</span>    } catch (IOException e) {<a name="line.550"></a>
-<span class="sourceLineNo">551</span>      // We are not able to serialize the procedure.<a name="line.551"></a>
-<span class="sourceLineNo">552</span>      // this is a code error, and we are not able to go on.<a name="line.552"></a>
-<span class="sourceLineNo">553</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: proc=" +<a name="line.553"></a>
-<span class="sourceLineNo">554</span>          proc + ", subprocs=" + Arrays.toString(subprocs), e);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>      throw new RuntimeException(e);<a name="line.555"></a>
-<span class="sourceLineNo">556</span>    } finally {<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      releaseSlot(slot);<a name="line.557"></a>
-<span class="sourceLineNo">558</span>    }<a name="line.558"></a>
-<span class="sourceLineNo">559</span>  }<a name="line.559"></a>
-<span class="sourceLineNo">560</span><a name="line.560"></a>
-<span class="sourceLineNo">561</span>  @Override<a name="line.561"></a>
-<span class="sourceLineNo">562</span>  public void insert(Procedure&lt;?&gt;[] procs) {<a name="line.562"></a>
-<span class="sourceLineNo">563</span>    if (LOG.isTraceEnabled()) {<a name="line.563"></a>
-<span class="sourceLineNo">564</span>      LOG.trace("Insert " + Arrays.toString(procs));<a name="line.564"></a>
-<span class="sourceLineNo">565</span>    }<a name="line.565"></a>
-<span class="sourceLineNo">566</span><a name="line.566"></a>
-<span class="sourceLineNo">567</span>    ByteSlot slot = acquireSlot();<a name="line.567"></a>
-<span class="sourceLineNo">568</span>    try {<a name="line.568"></a>
-<span class="sourceLineNo">569</span>      // Serialize the insert<a name="line.569"></a>
-<span class="sourceLineNo">570</span>      long[] procIds = new long[procs.length];<a name="line.570"></a>
-<span class="sourceLineNo">571</span>      for (int i = 0; i &lt; procs.length; ++i) {<a name="line.571"></a>
-<span class="sourceLineNo">572</span>        assert !procs[i].hasParent();<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        procIds[i] = procs[i].getProcId();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        ProcedureWALFormat.writeInsert(slot, procs[i]);<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      // Push the transaction data and wait until it is persisted<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      pushData(PushType.INSERT, slot, Procedure.NO_PROC_ID, procIds);<a name="line.578"></a>
-<span class="sourceLineNo">579</span>    } catch (IOException e) {<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      // We are not able to serialize the procedure.<a name="line.580"></a>
-<span class="sourceLineNo">581</span>      // this is a code error, and we are not able to go on.<a name="line.581"></a>
-<span class="sourceLineNo">582</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: " +<a name="line.582"></a>
-<span class="sourceLineNo">583</span>          Arrays.toString(procs), e);<a name="line.583"></a>
-<span class="sourceLineNo">584</span>      throw new RuntimeException(e);<a name="line.584"></a>
-<span class="sourceLineNo">585</span>    } finally {<a name="line.585"></a>
-<span class="sourceLineNo">586</span>      releaseSlot(slot);<a name="line.586"></a>
-<span class="sourceLineNo">587</span>    }<a name="line.587"></a>
-<span class="sourceLineNo">588</span>  }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>  @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>  public void update(Procedure&lt;?&gt; proc) {<a name="line.591"></a>
-<span class="sourceLineNo">592</span>    if (LOG.isTraceEnabled()) {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>      LOG.trace("Update " + proc);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>    }<a name="line.594"></a>
-<span class="sourceLineNo">595</span><a name="line.595"></a>
-<span class="sourceLineNo">596</span>    ByteSlot slot = acquireSlot();<a name="line.596"></a>
-<span class="sourceLineNo">597</span>    try {<a name="line.597"></a>
-<span class="sourceLineNo">598</span>      // Serialize the update<a name="line.598"></a>
-<span class="sourceLineNo">599</span>      ProcedureWALFormat.writeUpdate(slot, proc);<a name="line.599"></a>
-<span class="sourceLineNo">600</span><a name="line.600"></a>
-<span class="sourceLineNo">601</span>      // Push the transaction data and wait until it is persisted<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      pushData(PushType.UPDATE, slot, proc.getProcId(), null);<a name="line.602"></a>
-<span class="sourceLineNo">603</span>    } catch (IOException e) {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>      // We are not able to serialize the procedure.<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      // this is a code error, and we are not able to go on.<a name="line.605"></a>
-<span class="sourceLineNo">606</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      throw new RuntimeException(e);<a name="line.607"></a>
-<span class="sourceLineNo">608</span>    } finally {<a name="line.608"></a>
-<span class="sourceLineNo">609</span>      releaseSlot(slot);<a name="line.609"></a>
-<span class="sourceLineNo">610</span>    }<a name="line.610"></a>
-<span class="sourceLineNo">611</span>  }<a name="line.611"></a>
-<span class="sourceLineNo">612</span><a name="line.612"></a>
-<span class="sourceLineNo">613</span>  @Override<a name="line.613"></a>
-<span class="sourceLineNo">614</span>  public void delete(long procId) {<a name="line.614"></a>
-<span class="sourceLineNo">615</span>    LOG.trace("Delete {}", procId);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    ByteSlot slot = acquireSlot();<a name="line.616"></a>
-<span class="sourceLineNo">617</span>    try {<a name="line.617"></a>
-<span class="sourceLineNo">618</span>      // Serialize the delete<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      ProcedureWALFormat.writeDelete(slot, procId);<a name="line.619"></a>
-<span class="sourceLineNo">620</span><a name="line.620"></a>
-<span class="sourceLineNo">621</span>      // Push the transaction data and wait until it is persisted<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      pushData(PushType.DELETE, slot, procId, null);<a name="line.622"></a>
-<span class="sourceLineNo">623</span>    } catch (IOException e) {<a name="line.623"></a>
-<span class="sourceLineNo">624</span>      // We are not able to serialize the procedure.<a name="line.624"></a>
-<span class="sourceLineNo">625</span>      // this is a code error, and we are not able to go on.<a name="line.625"></a>
-<span class="sourceLineNo">626</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + procId, e);<a name="line.626"></a>
-<span class="sourceLineNo">627</span>      throw new RuntimeException(e);<a name="line.627"></a>
-<span class="sourceLineNo">628</span>    } finally {<a name="line.628"></a>
-<span class="sourceLineNo">629</span>      releaseSlot(slot);<a name="line.629"></a>
-<span class="sourceLineNo">630</span>    }<a name="line.630"></a>
-<span class="sourceLineNo">631</span>  }<a name="line.631"></a>
-<span class="sourceLineNo">632</span><a name="line.632"></a>
-<span class="sourceLineNo">633</span>  @Override<a name="line.633"></a>
-<span class="sourceLineNo">634</span>  public void delete(Procedure&lt;?&gt; proc, long[] subProcIds) {<a name="line.634"></a>
-<span class="sourceLineNo">635</span>    assert proc != null : "expected a non-null procedure";<a name="line.635"></a>
-<span class="sourceLineNo">636</span>    assert subProcIds != null &amp;&amp; subProcIds.length &gt; 0 : "expected subProcIds";<a name="line.636"></a>
-<span class="sourceLineNo">637</span>    if (LOG.isTraceEnabled()) {<a name="line.637"></a>
-<span class="sourceLineNo">638</span>      LOG.trace("Update " + proc + " and Delete " + Arrays.toString(subProcIds));<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    }<a name="line.639"></a>
-<span class="sourceLineNo">640</span><a name="line.640"></a>
-<span class="sourceLineNo">641</span>    ByteSlot slot = acquireSlot();<a name="line.641"></a>
-<span class="sourceLineNo">642</span>    try {<a name="line.642"></a>
-<span class="sourceLineNo">643</span>      // Serialize the delete<a name="line.643"></a>
-<span class="sourceLineNo">644</span>      ProcedureWALFormat.writeDelete(slot, proc, subProcIds);<a name="line.644"></a>
-<span class="sourceLineNo">645</span><a name="line.645"></a>
-<span class="sourceLineNo">646</span>      // Push the transaction data and wait until it is persisted<a name="line.646"></a>
-<span class="sourceLineNo">647</span>      pushData(PushType.DELETE, slot, proc.getProcId(), subProcIds);<a name="line.647"></a>
-<span class="sourceLineNo">648</span>    } catch (IOException e) {<a name="line.648"></a>
-<span class="sourceLineNo">649</span>      // We are not able to serialize the procedure.<a name="line.649"></a>
-<span class="sourceLineNo">650</span>      // this is a code error, and we are not able to go on.<a name="line.650"></a>
-<span class="sourceLineNo">651</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.651"></a>
-<span class="sourceLineNo">652</span>      throw new RuntimeException(e);<a name="line.652"></a>
-<span class="sourceLineNo">653</span>    } finally {<a name="line.653"></a>
-<span class="sourceLineNo">654</span>      releaseSlot(slot);<a name="line.654"></a>
-<span class="sourceLineNo">655</span>    }<a name="line.655"></a>
-<span class="sourceLineNo">656</span>  }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>  @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>  public void delete(final long[] procIds, final int offset, final int count) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>    if (count == 0) {<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      return;<a name="line.661"></a>
-<span class="sourceLineNo">662</span>    }<a name="line.662"></a>
-<span class="sourceLineNo">663</span><a name="line.663"></a>
-<span class="sourceLineNo">664</span>    if (offset == 0 &amp;&amp; count == procIds.length) {<a name="line.664"></a>
-<span class="sourceLineNo">665</span>      delete(procIds);<a name="line.665"></a>
-<span class="sourceLineNo">666</span>    } else if (count == 1) {<a name="line.666"></a>
-<span class="sourceLineNo">667</span>      delete(procIds[offset]);<a name="line.667"></a>
-<span class="sourceLineNo">668</span>    } else {<a name="line.668"></a>
-<span class="sourceLineNo">669</span>      delete(Arrays.copyOfRange(procIds, offset, offset + count));<a name="line.669"></a>
-<span class="sourceLineNo">670</span>    }<a name="line.670"></a>
-<span class="sourceLineNo">671</span>  }<a name="line.671"></a>
-<span class="sourceLineNo">672</span><a name="line.672"></a>
-<span class="sourceLineNo">673</span>  private void delete(long[] procIds) {<a name="line.673"></a>
-<span class="sourceLineNo">674</span>    if (LOG.isTraceEnabled()) {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>      LOG.trace("Delete " + Arrays.toString(procIds));<a name="line.675"></a>
-<span class="sourceLineNo">676</span>    }<a name="line.676"></a>
-<span class="sourceLineNo">677</span><a name="line.677"></a>
-<span class="sourceLineNo">678</span>    final ByteSlot slot = acquireSlot();<a name="line.678"></a>
-<span class="sourceLineNo">679</span>    try {<a name="line.679"></a>
-<span class="sourceLineNo">680</span>      // Serialize the delete<a name="line.680"></a>
-<span class="sourceLineNo">681</span>      for (int i = 0; i &lt; procIds.length; ++i) {<a name="line.681"></a>
-<span class="sourceLineNo">682</span>        ProcedureWALFormat.writeDelete(slot, procIds[i]);<a name="line.682"></a>
-<span class="sourceLineNo">683</span>      }<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>      // Push the transaction data and wait until it is persisted<a name="line.685"></a>
-<span class="sourceLineNo">686</span>      pushData(PushType.DELETE, slot, Procedure.NO_PROC_ID, procIds);<a name="line.686"></a>
-<span class="sourceLineNo">687</span>    } catch (IOException e) {<a name="line.687"></a>
-<span class="sourceLineNo">688</span>      // We are not able to serialize the procedure.<a name="line.688"></a>
-<span class="sourceLineNo">689</span>      // this is a code error, and we are not able to go on.<a name="line.689"></a>
-<span class="sourceLineNo">690</span>      LOG.error("Unable to serialize the procedures: " + Arrays.toString(procIds), e);<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      throw new RuntimeException(e);<a name="line.691"></a>
-<span class="sourceLineNo">692</span>    } finally {<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      releaseSlot(slot);<a name="line.693"></a>
-<span class="sourceLineNo">694</span>    }<a name="line.694"></a>
-<span class="sourceLineNo">695</span>  }<a name="line.695"></a>
-<span class="sourceLineNo">696</span><a name="line.696"></a>
-<span class="sourceLineNo">697</span>  private ByteSlot acquireSlot() {<a name="line.697"></a>
-<span class="sourceLineNo">698</span>    ByteSlot slot = slotsCache.poll();<a name="line.698"></a>
-<span class="sourceLineNo">699</span>    return slot != null ? slot : new ByteSlot();<a name="line.699"></a>
-<span class="sourceLineNo">700</span>  }<a name="line.700"></a>
-<span class="sourceLineNo">701</span><a name="line.701"></a>
-<span class="sourceLineNo">702</span>  private void releaseSlot(final ByteSlot slot) {<a name="line.702"></a>
-<span class="sourceLineNo">703</span>    slot.reset();<a name="line.703"></a>
-<span class="sourceLineNo">704</span>    slotsCache.offer(slot);<a name="line.704"></a>
-<span class="sourceLineNo">705</span>  }<a name="line.705"></a>
-<span class="sourceLineNo">706</span><a name="line.706"></a>
-<span class="sourceLineNo">707</span>  private enum PushType { INSERT, UPDATE, DELETE }<a name="line.707"></a>
+<span class="sourceLineNo">466</span>      ProcedureWALFormat.load(it, storeTracker, new ProcedureWALFormat.Loader() {<a name="line.466"></a>
+<span class="sourceLineNo">467</span><a name="line.467"></a>
+<span class="sourceLineNo">468</span>        @Override<a name="line.468"></a>
+<span class="sourceLineNo">469</span>        public void setMaxProcId(long maxProcId) {<a name="line.469"></a>
+<span class="sourceLineNo">470</span>          loader.setMaxProcId(maxProcId);<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        }<a name="line.471"></a>
+<span class="sourceLineNo">472</span><a name="line.472"></a>
+<span class="sourceLineNo">473</span>        @Override<a name="line.473"></a>
+<span class="sourceLineNo">474</span>        public void load(ProcedureIterator procIter) throws IOException {<a name="line.474"></a>
+<span class="sourceLineNo">475</span>          loader.load(procIter);<a name="line.475"></a>
+<span class="sourceLineNo">476</span>        }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>        @Override<a name="line.478"></a>
+<span class="sourceLineNo">479</span>        public void handleCorrupted(ProcedureIterator procIter) throws IOException {<a name="line.479"></a>
+<span class="sourceLineNo">480</span>          loader.handleCorrupted(procIter);<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        }<a name="line.481"></a>
+<span class="sourceLineNo">482</span><a name="line.482"></a>
+<span class="sourceLineNo">483</span>        @Override<a name="line.483"></a>
+<span class="sourceLineNo">484</span>        public void markCorruptedWAL(ProcedureWALFile log, IOException e) {<a name="line.484"></a>
+<span class="sourceLineNo">485</span>          if (corruptedLogs == null) {<a name="line.485"></a>
+<span class="sourceLineNo">486</span>            corruptedLogs = new HashSet&lt;&gt;();<a name="line.486"></a>
+<span class="sourceLineNo">487</span>          }<a name="line.487"></a>
+<span class="sourceLineNo">488</span>          corruptedLogs.add(log);<a name="line.488"></a>
+<span class="sourceLineNo">489</span>          // TODO: sideline corrupted log<a name="line.489"></a>
+<span class="sourceLineNo">490</span>        }<a name="line.490"></a>
+<span class="sourceLineNo">491</span>      });<a name="line.491"></a>
+<span class="sourceLineNo">492</span>      // if we fail when loading, we should prevent persisting the storeTracker later in the stop<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      // method. As it may happen that, we have finished constructing the modified and deleted bits,<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      // but before we call resetModified, we fail, then if we persist the storeTracker then when<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      // restarting, we will consider that all procedures have been included in this file and delete<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      // all the previous files. Obviously this not correct. So here we will only set loading to<a name="line.496"></a>
+<span class="sourceLineNo">497</span>      // false when we successfully loaded all the procedures, and when closing we will skip<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      // persisting the store tracker. And also, this will prevent the sync thread to do<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      // periodicRoll, where we may also clean old logs.<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loading.set(false);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      // try to cleanup inactive wals and complete the operation<a name="line.501"></a>
+<span class="sourceLineNo">502</span>      buildHoldingCleanupTracker();<a name="line.502"></a>
+<span class="sourceLineNo">503</span>      tryCleanupLogsOnLoad();<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    } finally {<a name="line.504"></a>
+<span class="sourceLineNo">505</span>      lock.unlock();<a name="line.505"></a>
+<span class="sourceLineNo">506</span>    }<a name="line.506"></a>
+<span class="sourceLineNo">507</span>  }<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>  private void tryCleanupLogsOnLoad() {<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    // nothing to cleanup.<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    if (logs.size() &lt;= 1) {<a name="line.511"></a>
+<span class="sourceLineNo">512</span>      return;<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
+<span class="sourceLineNo">514</span><a name="line.514"></a>
+<span class="sourceLineNo">515</span>    // the config says to not cleanup wals on load.<a name="line.515"></a>
+<span class="sourceLineNo">516</span>    if (!conf.getBoolean(EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY,<a name="line.516"></a>
+<span class="sourceLineNo">517</span>      DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY)) {<a name="line.517"></a>
+<span class="sourceLineNo">518</span>      LOG.debug("WALs cleanup on load is not enabled: " + getActiveLogs());<a name="line.518"></a>
+<span class="sourceLineNo">519</span>      return;<a name="line.519"></a>
+<span class="sourceLineNo">520</span>    }<a name="line.520"></a>
+<span class="sourceLineNo">521</span><a name="line.521"></a>
+<span class="sourceLineNo">522</span>    try {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>      periodicRoll();<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    } catch (IOException e) {<a name="line.524"></a>
+<span class="sourceLineNo">525</span>      LOG.warn("Unable to cleanup logs on load: " + e.getMessage(), e);<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    }<a name="line.526"></a>
+<span class="sourceLineNo">527</span>  }<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>  @Override<a name="line.529"></a>
+<span class="sourceLineNo">530</span>  public void insert(Procedure&lt;?&gt; proc, Procedure&lt;?&gt;[] subprocs) {<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    if (LOG.isTraceEnabled()) {<a name="line.531"></a>
+<span class="sourceLineNo">532</span>      LOG.trace("Insert " + proc + ", subproc=" + Arrays.toString(subprocs));<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    }<a name="line.533"></a>
+<span class="sourceLineNo">534</span><a name="line.534"></a>
+<span class="sourceLineNo">535</span>    ByteSlot slot = acquireSlot();<a name="line.535"></a>
+<span class="sourceLineNo">536</span>    try {<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      // Serialize the insert<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      long[] subProcIds = null;<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      if (subprocs != null) {<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        ProcedureWALFormat.writeInsert(slot, proc, subprocs);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>        subProcIds = new long[subprocs.length];<a name="line.541"></a>
+<span class="sourceLineNo">542</span>        for (int i = 0; i &lt; subprocs.length; ++i) {<a name="line.542"></a>
+<span class="sourceLineNo">543</span>          subProcIds[i] = subprocs[i].getProcId();<a name="line.543"></a>
+<span class="sourceLineNo">544</span>        }<a name="line.544"></a>
+<span class="sourceLineNo">545</span>      } else {<a name="line.545"></a>
+<span class="sourceLineNo">546</span>        assert !proc.hasParent();<a name="line.546"></a>
+<span class="sourceLineNo">547</span>        ProcedureWALFormat.writeInsert(slot, proc);<a name="line.547"></a>
+<span class="sourceLineNo">548</span>      }<a name="line.548"></a>
+<span class="sourceLineNo">549</span><a name="line.549"></a>
+<span class="sourceLineNo">550</span>      // Push the transaction data and wait until it is persisted<a name="line.550"></a>
+<span class="sourceLineNo">551</span>      pushData(PushType.INSERT, slot, proc.getProcId(), subProcIds);<a name="line.551"></a>
+<span class="sourceLineNo">552</span>    } catch (IOException e) {<a name="line.552"></a>
+<span class="sourceLineNo">553</span>      // We are not able to serialize the procedure.<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      // this is a code error, and we are not able to go on.<a name="line.554"></a>
+<span class="sourceLineNo">555</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: proc=" +<a name="line.555"></a>
+<span class="sourceLineNo">556</span>          proc + ", subprocs=" + Arrays.toString(subprocs), e);<a name="line.556"></a>
+<span class="sourceLineNo">557</span>      throw new RuntimeException(e);<a name="line.557"></a>
+<span class="sourceLineNo">558</span>    } finally {<a name="line.558"></a>
+<span class="sourceLineNo">559</span>      releaseSlot(slot);<a name="line.559"></a>
+<span class="sourceLineNo">560</span>    }<a name="line.560"></a>
+<span class="sourceLineNo">561</span>  }<a name="line.561"></a>
+<span class="sourceLineNo">562</span><a name="line.562"></a>
+<span class="sourceLineNo">563</span>  @Override<a name="line.563"></a>
+<span class="sourceLineNo">564</span>  public void insert(Procedure&lt;?&gt;[] procs) {<a name="line.564"></a>
+<span class="sourceLineNo">565</span>    if (LOG.isTraceEnabled()) {<a name="line.565"></a>
+<span class="sourceLineNo">566</span>      LOG.trace("Insert " + Arrays.toString(procs));<a name="line.566"></a>
+<span class="sourceLineNo">567</span>    }<a name="line.567"></a>
+<span class="sourceLineNo">568</span><a name="line.568"></a>
+<span class="sourceLineNo">569</span>    ByteSlot slot = acquireSlot();<a name="line.569"></a>
+<span class="sourceLineNo">570</span>    try {<a name="line.570"></a>
+<span class="sourceLineNo">571</span>      // Serialize the insert<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      long[] procIds = new long[procs.length];<a name="line.572"></a>
+<span class="sourceLineNo">573</span>      for (int i = 0; i &lt; procs.length; ++i) {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        assert !procs[i].hasParent();<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        procIds[i] = procs[i].getProcId();<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        ProcedureWALFormat.writeInsert(slot, procs[i]);<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      // Push the transaction data and wait until it is persisted<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      pushData(PushType.INSERT, slot, Procedure.NO_PROC_ID, procIds);<a name="line.580"></a>
+<span class="sourceLineNo">581</span>    } catch (IOException e) {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>      // We are not able to serialize the procedure.<a name="line.582"></a>
+<span class="sourceLineNo">583</span>      // this is a code error, and we are not able to go on.<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: " +<a name="line.584"></a>
+<span class="sourceLineNo">585</span>          Arrays.toString(procs), e);<a name="line.585"></a>
+<span class="sourceLineNo">586</span>      throw new RuntimeException(e);<a name="line.586"></a>
+<span class="sourceLineNo">587</span>    } finally {<a name="line.587"></a>
+<span class="sourceLineNo">588</span>      releaseSlot(slot);<a name="line.588"></a>
+<span class="sourceLineNo">589</span>    }<a name="line.589"></a>
+<span class="sourceLineNo">590</span>  }<a name="line.590"></a>
+<span class="sourceLineNo">591</span><a name="line.591"></a>
+<span class="sourceLineNo">592</span>  @Override<a name="line.592"></a>
+<span class="sourceLineNo">593</span>  public void update(Procedure&lt;?&gt; proc) {<a name="line.593"></a>
+<span class="sourceLineNo">594</span>    if (LOG.isTraceEnabled()) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>      LOG.trace("Update " + proc);<a name="line.595"></a>
+<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
+<span class="sourceLineNo">597</span><a name="line.597"></a>
+<span class="sourceLineNo">598</span>    ByteSlot slot = acquireSlot();<a name="line.598"></a>
+<span class="sourceLineNo">599</span>    try {<a name="line.599"></a>
+<span class="sourceLineNo">600</span>      // Serialize the update<a name="line.600"></a>
+<span class="sourceLineNo">601</span>      ProcedureWALFormat.writeUpdate(slot, proc);<a name="line.601"></a>
+<span class="sourceLineNo">602</span><a name="line.602"></a>
+<span class="sourceLineNo">603</span>      // Push the transaction data and wait until it is persisted<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      pushData(PushType.UPDATE, slot, proc.getProcId(), null);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    } catch (IOException e) {<a name="line.605"></a>
+<span class="sourceLineNo">606</span>      // We are not able to serialize the procedure.<a name="line.606"></a>
+<span class="sourceLineNo">607</span>      // this is a code error, and we are not able to go on.<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      throw new RuntimeException(e);<a name="line.609"></a>
+<span class="sourceLineNo">610</span>    } finally {<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      releaseSlot(slot);<a name="line.611"></a>
+<span class="sourceLineNo">612</span>    }<a name="line.612"></a>
+<span class="sourceLineNo">613</span>  }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>  @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>  public void delete(long procId) {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>    LOG.trace("Delete {}", procId);<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    ByteSlot slot = acquireSlot();<a name="line.618"></a>
+<span class="sourceLineNo">619</span>    try {<a name="line.619"></a>
+<span class="sourceLineNo">620</span>      // Serialize the delete<a name="line.620"></a>
+<span class="sourceLineNo">621</span>      ProcedureWALFormat.writeDelete(slot, procId);<a name="line.621"></a>
+<span class="sourceLineNo">622</span><a name="line.622"></a>
+<span class="sourceLineNo">623</span>      // Push the transaction data and wait until it is persisted<a name="line.623"></a>
+<span class="sourceLineNo">624</span>      pushData(PushType.DELETE, slot, procId, null);<a name="line.624"></a>
+<span class="sourceLineNo">625</span>    } catch (IOException e) {<a name="line.625"></a>
+<span class="sourceLineNo">626</span>      // We are not able to serialize the procedure.<a name="line.626"></a>
+<span class="sourceLineNo">627</span>      // this is a code error, and we are not able to go on.<a name="line.627"></a>
+<span class="sourceLineNo">628</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + procId, e);<a name="line.628"></a>
+<span class="sourceLineNo">629</span>      throw new RuntimeException(e);<a name="line.629"></a>
+<span class="sourceLineNo">630</span>    } finally {<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      releaseSlot(slot);<a name="line.631"></a>
+<span class="sourceLineNo">632</span>    }<a name="line.632"></a>
+<span class="sourceLineNo">633</span>  }<a name="line.633"></a>
+<span class="sourceLineNo">634</span><a name="line.634"></a>
+<span class="sourceLineNo">635</span>  @Override<a name="line.635"></a>
+<span class="sourceLineNo">636</span>  public void delete(Procedure&lt;?&gt; proc, long[] subProcIds) {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>    assert proc != null : "expected a non-null procedure";<a name="line.637"></a>
+<span class="sourceLineNo">638</span>    assert subProcIds != null &amp;&amp; subProcIds.length &gt; 0 : "expected subProcIds";<a name="line.638"></a>
+<span class="sourceLineNo">639</span>    if (LOG.isTraceEnabled()) {<a name="line.639"></a>
+<span class="sourceLineNo">640</span>      LOG.trace("Update " + proc + " and Delete " + Arrays.toString(subProcIds));<a name="line.640"></a>
+<span class="sourceLineNo">641</span>    }<a name="line.641"></a>
+<span class="sourceLineNo">642</span><a name="line.642"></a>
+<span class="sourceLineNo">643</span>    ByteSlot slot = acquireSlot();<a name="line.643"></a>
+<span class="sourceLineNo">644</span>    try {<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      // Serialize the delete<a name="line.645"></a>
+<span class="sourceLineNo">646</span>      ProcedureWALFormat.writeDelete(slot, proc, subProcIds);<a name="line.646"></a>
+<span class="sourceLineNo">647</span><a name="line.647"></a>
+<span class="sourceLineNo">648</span>      // Push the transaction data and wait until it is persisted<a name="line.648"></a>
+<span class="sourceLineNo">649</span>      pushData(PushType.DELETE, slot, proc.getProcId(), subProcIds);<a name="line.649"></a>
+<span class="sourceLineNo">650</span>    } catch (IOException e) {<a name="line.650"></a>
+<span class="sourceLineNo">651</span>      // We are not able to serialize the procedure.<a name="line.651"></a>
+<span class="sourceLineNo">652</span>      // this is a code error, and we are not able to go on.<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.653"></a>
+<span class="sourceLineNo">654</span>      throw new RuntimeException(e);<a name="line.654"></a>
+<span class="sourceLineNo">655</span>    } finally {<a name="line.655"></a>
+<span class="sourceLineNo">656</span>      releaseSlot(slot);<a name="line.656"></a>
+<span class="sourceLineNo">657</span>    }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>  }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>  @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>  public void delete(final long[] procIds, final int offset, final int count) {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>    if (count == 0) {<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      return;<a name="line.663"></a>
+<span class="sourceLineNo">664</span>    }<a name="line.664"></a>
+<span class="sourceLineNo">665</span><a name="line.665"></a>
+<span class="sourceLineNo">666</span>    if (offset == 0 &amp;&amp; count == procIds.length) {<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      delete(procIds);<a name="line.667"></a>
+<span class="sourceLineNo">668</span>    } else if (count == 1) {<a name="line.668"></a>
+<span class="sourceLineNo">669</span>      delete(procIds[offset]);<a name="line.669"></a>
+<span class="sourceLineNo">670</span>    } else {<a name="line.670"></a>
+<span class="sourceLineNo">671</span>      delete(Arrays.copyOfRange(procIds, offset, offset + count));<a name="line.671"></a>
+<span class="sourceLineNo">672</span>    }<a name="line.672"></a>
+<span class="sourceLineNo">673</span>  }<a name="line.673"></a>
+<span class="sourceLineNo">674</span><a name="line.674"></a>
+<span class="sourceLineNo">675</span>  private void delete(long[] procIds) {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>    if (LOG.isTraceEnabled()) {<a name="line.676"></a>
+<span class="sourceLineNo">677</span>      LOG.trace("Delete " + Arrays.toString(procIds));<a name="line.677"></a>
+<span class="sourceLineNo">678</span>    }<a name="line.678"></a>
+<span class="sourceLineNo">679</span><a name="line.679"></a>
+<span class="sourceLineNo">680</span>    final ByteSlot slot = acquireSlot();<a name="line.680"></a>
+<span class="sourceLineNo">681</span>    try {<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      // Serialize the delete<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      for (int i = 0; i &lt; procIds.length; ++i) {<a name="line.683"></a>
+<span class="sourceLineNo">684</span>        ProcedureWALFormat.writeDelete(slot, procIds[i]);<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      }<a name="line.685"></a>
+<span class="sourceLineNo">686</span><a name="line.686"></a>
+<span class="sourceLineNo">687</span>      // Push the transaction data and wait until it is persisted<a name="line.687"></a>
+<span class="sourceLineNo">688</span>      pushData(PushType.DELETE, slot, Procedure.NO_PROC_ID, procIds);<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    } catch (IOException e) {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      // We are not able to serialize the procedure.<a name="line.690"></a>
+<span class="sourceLineNo">691</span>      // this is a code error, and we are not able to go on.<a name="line.691"></a>
+<span class="sourceLineNo">692</span>      LOG.error("Unable to serialize the procedures: " + Arrays.toString(procIds), e);<a name="line.692"></a>
+<span class="sourceLineNo">693</span>      throw new RuntimeException(e);<a name="line.693"></a>
+<span class="sourceLineNo">694</span>    } finally {<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      releaseSlot(slot);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>    }<a name="line.696"></a>
+<span class="sourceLineNo">697</span>  }<a name="line.697"></a>
+<span class="sourceLineNo">698</span><a name="line.698"></a>
+<span class="sourceLineNo">699</span>  private ByteSlot acquireSlot() {<a name="line.699"></a>
+<span class="sourceLineNo">700</span>    ByteSlot slot = slotsCache.poll();<a name="line.700"></a>
+<span class="sourceLineNo">701</span>    return slot != null ? slot : new ByteSlot();<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  }<a name="line.702"></a>
+<span class="sourceLineNo">703</span><a name="line.703"></a>
+<span class="sourceLineNo">704</span>  private void releaseSlot(final ByteSlot slot) {<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    slot.reset();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    slotsCache.offer(slot);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>  }<a name="line.707"></a>
 <span class="sourceLineNo">708</span><a name="line.708"></a>
-<span class="sourceLineNo">709</span>  private long pushData(final PushType type, final ByteSlot slot,<a name="line.709"></a>
-<span class="sourceLineNo">710</span>      final long procId, final long[] subProcIds) {<a name="line.710"></a>
-<span class="sourceLineNo">711</span>    if (!isRunning()) {<a name="line.711"></a>
-<span class="sourceLineNo">712</span>      throw new RuntimeException("the store must be running before inserting data");<a name="line.712"></a>
-<span class="sourceLineNo">713</span>    }<a name="line.713"></a>
-<span class="sourceLineNo">714</span>    if (logs.isEmpty()) {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>      throw new RuntimeException("recoverLease() must be called before inserting data");<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    }<a name="line.716"></a>
-<span class="sourceLineNo">717</span><a name="line.717"></a>
-<span class="sourceLineNo">718</span>    long logId = -1;<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    lock.lock();<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    try {<a name="line.720"></a>
-<span class="sourceLineNo">721</span>      // Wait for the sync to be completed<a name="line.721"></a>
-<span class="sourceLineNo">722</span>      while (true) {<a name="line.722"></a>
-<span class="sourceLineNo">723</span>        if (!isRunning()) {<a name="line.723"></a>
-<span class="sourceLineNo">724</span>          throw new RuntimeException("store no longer running");<a name="line.724"></a>
-<span class="sourceLineNo">725</span>        } else if (isSyncAborted()) {<a name="line.725"></a>
-<span class="sourceLineNo">726</span>          throw new RuntimeException("sync aborted", syncException.get());<a name="line.726"></a>
-<span class="sourceLineNo">727</span>        } else if (inSync.get()) {<a name="line.727"></a>
-<span class="sourceLineNo">728</span>          syncCond.await();<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        } else if (slotIndex &gt;= syncMaxSlot) {<a name="line.729"></a>
-<span class="sourceLineNo">730</span>          slotCond.signal();<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          syncCond.await();<a name="line.731"></a>
-<span class="sourceLineNo">732</span>        } else {<a name="line.732"></a>
-<span class="sourceLineNo">733</span>          break;<a name="line.733"></a>
-<span class="sourceLineNo">734</span>        }<a name="line.734"></a>
-<span class="sourceLineNo">735</span>      }<a name="line.735"></a>
-<span class="sourceLineNo">736</span><a name="line.736"></a>
-<span class="sourceLineNo">737</span>      final long pushSyncId = syncId.get();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>      updateStoreTracker(type, procId, subProcIds);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>      slots[slotIndex++] = slot;<a name="line.739"></a>
-<span class="sourceLineNo">740</span>      logId = flushLogId;<a name="line.740"></a>
-<span class="sourceLineNo">741</span><a name="line.741"></a>
-<span class="sourceLineNo">742</span>      // Notify that there is new data<a name="line.742"></a>
-<span class="sourceLineNo">743</span>      if (slotIndex == 1) {<a name="line.743"></a>
-<span class="sourceLineNo">744</span>        waitCond.signal();<a name="line.744"></a>
-<span class="sourceLineNo">745</span>      }<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>      // Notify that the slots are full<a name="line.747"></a>
-<span class="sourceLineNo">748</span>      if (slotIndex == syncMaxSlot) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>        waitCond.signal();<a name="line.749"></a>
-<span class="sourceLineNo">750</span>        slotCond.signal();<a name="line.750"></a>
-<span class="sourceLineNo">751</span>      }<a name="line.751"></a>
-<span class="sourceLineNo">752</span><a name="line.752"></a>
-<span class="sourceLineNo">753</span>      while (pushSyncId == syncId.get() &amp;&amp; isRunning()) {<a name="line.753"></a>
-<span class="sourceLineNo">754</span>        syncCond.await();<a name="line.754"></a>
-<span class="sourceLineNo">755</span>      }<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    } catch (InterruptedException e) {<a name="line.756"></a>
-<span class="sourceLineNo">757</span>      Thread.currentThread().interrupt();<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sendAbortProcessSignal();<a name="line.758"></a>
-<span class="sourceLineNo">759</span>      throw new RuntimeException(e);<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    } finally {<a name="line.760"></a>
-<span class="sourceLineNo">761</span>      lock.unlock();<a name="line.761"></a>
-<span class="sourceLineNo">762</span>      if (isSyncAborted()) {<a name="line.762"></a>
-<span class="sourceLineNo">763</span>        throw new RuntimeException("sync aborted", syncException.get());<a name="line.763"></a>
-<span class="sourceLineNo">764</span>      }<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    }<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    return logId;<a name="line.766"></a>
-<span class="sourceLineNo">767</span>  }<a name="line.767"></a>
-<span class="sourceLineNo">768</span><a name="line.768"></a>
-<span class="sourceLineNo">769</span>  private void updateStoreTracker(final PushType type,<a name="line.769"></a>
-<span class="sourceLineNo">770</span>      final long procId, final long[] subProcIds) {<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    switch (type) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      case INSERT:<a name="line.772"></a>
-<span class="sourceLineNo">773</span>        if (subProcIds == null) {<a name="line.773"></a>
-<span class="sourceLineNo">774</span>          storeTracker.insert(procId);<a name="line.774"></a>
-<span class="sourceLineNo">775</span>        } else if (procId == Procedure.NO_PROC_ID) {<a name="line.775"></a>
-<span class="sourceLineNo">776</span>          storeTracker.insert(subProcIds);<a name="line.776"></a>
-<span class="sourceLineNo">777</span>        } else {<a name="line.777"></a>
-<span class="sourceLineNo">778</span>          storeTracker.insert(procId, subProcIds);<a name="line.778"></a>
-<span class="sourceLineNo">779</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.779"></a>
-<span class="sourceLineNo">780</span>        }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>        break;<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      case UPDATE:<a name="line.782"></a>
-<span class="sourceLineNo">783</span>        storeTracker.update(procId);<a name="line.783"></a>
-<span class="sourceLineNo">784</span>        holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.784"></a>
-<span class="sourceLineNo">785</span>        break;<a name="line.785"></a>
-<span class="sourceLineNo">786</span>      case DELETE:<a name="line.786"></a>
-<span class="sourceLineNo">787</span>        if (subProcIds != null &amp;&amp; subProcIds.length &gt; 0) {<a name="line.787"></a>
-<span class="sourceLineNo">788</span>          storeTracker.delete(subProcIds);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>          holdingCleanupTracker.setDeletedIfModified(subProcIds);<a name="line.789"></a>
-<span class="sourceLineNo">790</span>        } else {<a name="line.790"></a>
-<span class="sourceLineNo">791</span>          storeTracker.delete(procId);<a name="line.791"></a>
-<span class="sourceLineNo">792</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.792"></a>
-<span class="sourceLineNo">793</span>        }<a name="line.793"></a>
-<span class="sourceLineNo">794</span>        break;<a name="line.794"></a>
-<span class="sourceLineNo">795</span>      default:<a name="line.795"></a>
-<span class="sourceLineNo">796</span>        throw new RuntimeException("invalid push type " + type);<a name="line.796"></a>
-<span class="sourceLineNo">797</span>    }<a name="line.797"></a>
-<span class="sourceLineNo">798</span>  }<a name="line.798"></a>
-<span class="sourceLineNo">799</span><a name="line.799"></a>
-<span class="sourceLineNo">800</span>  private boolean isSyncAborted() {<a name="line.800"></a>
-<span class="sourceLineNo">801</span>    return syncException.get() != null;<a name="line.801"></a>
-<span class="sourceLineNo">802</span>  }<a name="line.802"></a>
-<span class="sourceLineNo">803</span><a name="line.803"></a>
-<span class="sourceLineNo">804</span>  private void syncLoop() throws Throwable {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    long totalSyncedToStore = 0;<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    inSync.set(false);<a name="line.806"></a>
-<span class="sourceLineNo">807</span>    lock.lock();<a name="line.807"></a>
-<span class="sourceLineNo">808</span>    try {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>      while (isRunning()) {<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        try {<a name="line.810"></a>
-<span class="sourceLineNo">811</span>          // Wait until new data is available<a name="line.811"></a>
-<span class="sourceLineNo">812</span>          if (slotIndex == 0) {<a name="line.812"></a>
-<span class="sourceLineNo">813</span>            if (!loading.get()) {<a name="line.813"></a>
-<span class="sourceLineNo">814</span>              periodicRoll();<a name="line.814"></a>
-<span class="sourceLineNo">815</span>            }<a name="line.815"></a>
-<span class="sourceLineNo">816</span><a name="line.816"></a>
-<span class="sourceLineNo">817</span>            if (LOG.isTraceEnabled()) {<a name="line.817"></a>
-<span class="sourceLineNo">818</span>              float rollTsSec = getMillisFromLastRoll() / 1000.0f;<a name="line.818"></a>
-<span class="sourceLineNo">819</span>              LOG.trace(String.format("Waiting for data. flushed=%s (%s/sec)",<a name="line.819"></a>
-<span class="sourceLineNo">820</span>                        StringUtils.humanSize(totalSynced.get()),<a name="line.820"></a>
-<span class="sourceLineNo">821</span>                        StringUtils.humanSize(totalSynced.get() / rollTsSec)));<a name="line.821"></a>
-<span class="sourceLineNo">822</span>            }<a name="line.822"></a>
-<span class="sourceLineNo">823</span><a name="line.823"></a>
-<span class="sourceLineNo">824</span>            waitCond.await(getMillisToNextPeriodicRoll(), TimeUnit.MILLISECONDS);<a name="line.824"></a>
-<span class="sourceLineNo">825</span>            if (slotIndex == 0) {<a name="line.825"></a>
-<span class="sourceLineNo">826</span>              // no data.. probably a stop() or a periodic roll<a name="line.826"></a>
-<span class="sourceLineNo">827</span>              continue;<a name="line.827"></a>
-<span class="sourceLineNo">828</span>            }<a name="line.828"></a>
-<span class="sourceLineNo">829</span>          }<a name="line.829"></a>
-<span class="sourceLineNo">830</span>          // Wait SYNC_WAIT_MSEC or the signal of "slots full" before flushing<a name="line.830"></a>
-<span class="sourceLineNo">831</span>          syncMaxSlot = runningProcCount;<a name="line.831"></a>
-<span class="sourceLineNo">832</span>          assert syncMaxSlot &gt; 0 : "unexpected syncMaxSlot=" + syncMaxSlot;<a name="line.832"></a>
-<span class="sourceLineNo">833</span>          final long syncWaitSt = EnvironmentEdgeManager.currentTime();<a name="line.833"></a>
-<span class="sourceLineNo">834</span>          if (slotIndex != syncMaxSlot) {<a name="line.834"></a>
-<span class="sourceLineNo">835</span>            slotCond.await(syncWaitMsec, TimeUnit.MILLISECONDS);<a name="line.835"></a>
-<span class="sourceLineNo">836</span>          }<a name="line.836"></a>
-<span class="sourceLineNo">837</span><a name="line.837"></a>
-<span class="sourceLineNo">838</span>          final long currentTs = EnvironmentEdgeManager.currentTime();<a name="line.838"></a>
-<span class="sourceLineNo">839</span>          final long syncWaitMs = currentTs - syncWaitSt;<a name="line.839"></a>
-<span class="sourceLineNo">840</span>          final float rollSec = getMillisFromLastRoll() / 1000.0f;<a name="line.840"></a>
-<span class="sourceLineNo">841</span>          final float syncedPerSec = totalSyncedToStore / rollSec;<a name="line.841"></a>
-<span class="sourceLineNo">842</span>          if (LOG.isTraceEnabled() &amp;&amp; (syncWaitMs &gt; 10 || slotIndex &lt; syncMaxSlot)) {<a name="line.842"></a>
-<span class="sourceLineNo">843</span>            LOG.trace(String.format("Sync wait %s, slotIndex=%s , totalSynced=%s (%s/sec)",<a name="line.843"></a>
-<span class="sourceLineNo">844</span>                      StringUtils.humanTimeDiff(syncWaitMs), slotIndex,<a name="line.844"></a>
-<span class="sourceLineNo">845</span>                      StringUtils.humanSize(totalSyncedToStore),<a name="line.845"></a>
-<span class="sourceLineNo">846</span>                      StringUtils.humanSize(syncedPerSec)));<a name="line.846"></a>
-<span class="sourceLineNo">847</span>          }<a name="line.847"></a>
-<span class="sourceLineNo">848</span><a name="line.848"></a>
-<span class="sourceLineNo">849</span>          // update webui circular buffers (TODO: get rid of allocations)<a name="line.849"></a>
-<span class="sourceLineNo">850</span>          final SyncMetrics syncMetrics = new SyncMetrics();<a name="line.850"></a>
-<span class="sourceLineNo">851</span>          syncMetrics.timestamp = currentTs;<a name="line.851"></a>
-<span class="sourceLineNo">852</span>          syncMetrics.syncWaitMs = syncWaitMs;<a name="line.852"></a>
-<span class="sourceLineNo">853</span>          syncMetrics.syncedEntries = slotIndex;<a name="line.853"></a>
-<span class="sourceLineNo">854</span>          syncMetrics.totalSyncedBytes = totalSyncedToStore;<a name="line.854"></a>
-<span class="sourceLineNo">855</span>          syncMetrics.syncedPerSec = syncedPerSec;<a name="line.855"></a>
-<span class="sourceLineNo">856</span>          syncMetricsQueue.add(syncMetrics);<a name="line.856"></a>
-<span class="sourceLineNo">857</span><a name="line.857"></a>
-<span class="sourceLineNo">858</span>          // sync<a name="line.858"></a>
-<span class="sourceLineNo">859</span>          inSync.set(true);<a name="line.859"></a>
-<span class="sourceLineNo">860</span>          long slotSize = syncSlots();<a name="line.860"></a>
-<span class="sourceLineNo">861</span>          logs.getLast().addToSize(slotSize);<a name="line.861"></a>
-<span class="sourceLineNo">862</span>          totalSyncedToStore = totalSynced.addAndGet(slotSize);<a name="line.862"></a>
-<span class="sourceLineNo">863</span>          slotIndex = 0;<a name="line.863"></a>
-<span class="sourceLineNo">864</span>          inSync.set(false);<a name="line.864"></a>
-<span class="sourceLineNo">865</span>          syncId.incrementAndGet();<a name="line.865"></a>
-<span class="sourceLineNo">866</span>        } catch (InterruptedException e) {<a name="line.866"></a>
-<span class="sourceLineNo">867</span>          Thread.currentThread().interrupt();<a name="line.867"></a>
-<span class="sourceLineNo">868</span>          syncException.compareAndSet(null, e);<a name="line.868"></a>
-<span class="sourceLineNo">869</span>          sendAbortProcessSignal();<a name="line.869"></a>
-<span class="sourceLineNo">870</span>          throw e;<a name="line.870"></a>
-<span class="sourceLineNo">871</span>        } catch (Throwable t) {<a name="line.871"></a>
-<span class="sourceLineNo">872</span>          syncException.compareAndSet(null, t);<a name="line.872"></a>
-<span class="sourceLineNo">873</span>          sendAbortProcessSignal();<a name="line.873"></a>
-<span class="sourceLineNo">874</span>          throw t;<a name="line.874"></a>
-<span class="sourceLineNo">875</span>        } finally {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>          syncCond.signalAll();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>        }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>      }<a name="line.878"></a>
-<span class="sourceLineNo">879</span>    } finally {<a name="line.879"></a>
-<span class="sourceLineNo">880</span>      lock.unlock();<a name="line.880"></a>
-<span class="sourceLineNo">881</span>    }<a name="line.881"></a>
-<span class="sourceLineNo">882</span>  }<a name="line.882"></a>
-<span class="sourceLineNo">883</span><a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public ArrayList&lt;SyncMetrics&gt; getSyncMetrics() {<a name="line.884"></a>
-<span class="sourceLineNo">885</span>    lock.lock();<a name="line.885"></a>
-<span class="sourceLineNo">886</span>    try {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>      return new ArrayList&lt;&gt;(syncMetricsQueue);<a name="line.887"></a>
-<span class="sourceLineNo">888</span>    } finally {<a name="line.888"></a>
-<span class="sourceLineNo">889</span>      lock.unlock();<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    }<a name="line.890"></a>
-<span class="sourceLineNo">891</span>  }<a name="line.891"></a>
-<span class="sourceLineNo">892</span><a name="line.892"></a>
-<span class="sourceLineNo">893</span>  private long syncSlots() throws Throwable {<a name="line.893"></a>
-<span class="sourceLineNo">894</span>    int retry = 0;<a name="line.894"></a>
-<span class="sourceLineNo">895</span>    int logRolled = 0;<a name="line.895"></a>
-<span class="sourceLineNo">896</span>    long totalSynced = 0;<a name="line.896"></a>
-<span class="sourceLineNo">897</span>    do {<a name="line.897"></a>
-<span class="sourceLineNo">898</span>      try {<a name="line.898"></a>
-<span class="sourceLineNo">899</span>        totalSynced = syncSlots(stream, slots, 0, slotIndex);<a name="line.899"></a>
-<span class="sourceLineNo">900</span>        break;<a name="line.900"></a>
-<span class="sourceLineNo">901</span>      } catch (Throwable e) {<a name="line.901"></a>
-<span class="sourceLineNo">902</span>        LOG.warn("unable to sync slots, retry=" + retry);<a name="line.902"></a>
-<span class="sourceLineNo">903</span>        if (++retry &gt;= maxRetriesBeforeRoll) {<a name="line.903"></a>
-<span class="sourceLineNo">904</span>          if (logRolled &gt;= maxSyncFailureRoll &amp;&amp; isRunning()) {<a name="line.904"></a>
-<span class="sourceLineNo">905</span>            LOG.error("Sync slots after log roll failed, abort.", e);<a name="line.905"></a>
-<span class="sourceLineNo">906</span>            throw e;<a name="line.906"></a>
-<span class="sourceLineNo">907</span>          }<a name="line.907"></a>
-<span class="sourceLineNo">908</span><a name="line.908"></a>
-<span class="sourceLineNo">909</span>          if (!rollWriterWithRetries()) {<a name="line.909"></a>
-<span class="sourceLineNo">910</span>            throw e;<a name="line.910"></a>
-<span class="sourceLineNo">911</span>          }<a name="line.911"></a>
-<span class="sourceLineNo">912</span><a name="line.912"></a>
-<span class="sourceLineNo">913</span>          logRolled++;<a name="line.913"></a>
-<span class="sourceLineNo">914</span>          retry = 0;<a name="line.914"></a>
-<span class="sourceLineNo">915</span>        }<a name="line.915"></a>
-<span class="sourceLineNo">916</span>      }<a name="line.916"></a>
-<span class="sourceLineNo">917</span>    } while (isRunning());<a name="line.917"></a>
-<span class="sourceLineNo">918</span>    return totalSynced;<a name="line.918"></a>
-<span class="sourceLineNo">919</span>  }<a name="line.919"></a>
-<span class="sourceLineNo">920</span><a name="line.920"></a>
-<span class="sourceLineNo">921</span>  protected long syncSlots(final FSDataOutputStream stream, final ByteSlot[] slots,<a name="line.921"></a>
-<span class="sourceLineNo">922</span>      final int offset, final int count) throws IOException {<a name="line.922"></a>
-<span class="sourceLineNo">923</span>    long totalSynced = 0;<a name="line.923"></a>
-<span class="sourceLineNo">924</span>    for (int i = 0; i &lt; count; ++i) {<a name="line.924"></a>
-<span class="sourceLineNo">925</span>      final ByteSlot data = slots[offset + i];<a name="line.925"></a>
-<span class="sourceLineNo">926</span>      data.writeTo(stream);<a name="line.926"></a>
-<span class="sourceLineNo">927</span>      totalSynced += data.size();<a name="line.927"></a>
-<span class="sourceLineNo">928</span>    }<a name="line.928"></a>
-<span class="sourceLineNo">929</span><a name="line.929"></a>
-<span class="sourceLineNo">930</span>    syncStream(stream);<a name="line.930"></a>
-<span class="sourceLineNo">931</span>    sendPostSyncSignal();<a name="line.931"></a>
-<span class="sourceLineNo">932</span><a name="line.932"></a>
-<span class="sourceLineNo">933</span>    if (LOG.isTraceEnabled()) {<a name="line.933"></a>
-<span class="sourceLineNo">934</span>      LOG.trace("Sync slots=" + count + '/' + syncMaxSlot +<a name="line.934"></a>
-<span class="sourceLineNo">935</span>                ", flushed=" + StringUtils.humanSize(totalSynced));<a name="line.935"></a>
-<span class="sourceLineNo">936</span>    }<a name="line.936"></a>
-<span class="sourceLineNo">937</span>    return totalSynced;<a name="line.937"></a>
-<span class="sourceLineNo">938</span>  }<a name="line.938"></a>
-<span class="sourceLineNo">939</span><a name="line.939"></a>
-<span class="sourceLineNo">940</span>  protected void syncStream(final FSDataOutputStream stream) throws IOException {<a name="line.940"></a>
-<span class="sourceLineNo">941</span>    if (useHsync) {<a name="line.941"></a>
-<span class="sourceLineNo">942</span>      stream.hsync();<a name="line.942"></a>
-<span class="sourceLineNo">943</span>    } else {<a name="line.943"></a>
-<span class="sourceLineNo">944</span>      stream.hflush();<a name="line.944"></a>
-<span class="sourceLineNo">945</span>    }<a name="line.945"></a>
-<span class="sourceLineNo">946</span>  }<a name="line.946"></a>
-<span class="sourceLineNo">947</span><a name="line.947"></a>
-<span class="sourceLineNo">948</span>  private boolean rollWriterWithRetries() {<a name="line.948"></a>
-<span class="sourceLineNo">949</span>    for (int i = 0; i &lt; rollRetries &amp;&amp; isRunning(); ++i) {<a name="line.949"></a>
-<span class="sourceLineNo">950</span>      if (i &gt; 0) {<a name="line.950"></a>
-<span class="sourceLineNo">951</span>        Threads.sleepWithoutInterrupt(waitBeforeRoll * i);<a name="line.951"></a>
-<span class="sourceLineNo">952</span>      }<a name="line.952"></a>
-<span class="sourceLineNo">953</span><a name="line.953"></a>
-<span class="sourceLineNo">954</span>      try {<a name="line.954"></a>
-<span class="sourceLineNo">955</span>        if (rollWriter()) {<a name="line.955"></a>
-<span class="sourceLineNo">956</span>          return true;<a name="line.956"></a>
-<span class="sourceLineNo">957</span>        }<a name="line.957"></a>
-<span class="sourceLineNo">958</span>      } catch (IOException e) {<a name="line.958"></a>
-<span class="sourceLineNo">959</span>        LOG.warn("Unable to roll the log, attempt=" + (i + 1), e);<a name="line.959"></a>
-<span class="sourceLineNo">960</span>      }<a name="line.960"></a>
-<span class="sourceLineNo">961</span>    }<a name="line.961"></a>
-<span class="sourceLineNo">962</span>    LOG.error(HBaseMarkers.FATAL, "Unable to roll the log");<a name="line.962"></a>
-<span class="sourceLineNo">963</span>    return false;<a name="line.963"></a>
-<span class="sourceLineNo">964</span>  }<a name="line.964"></a>
-<span class="sourceLineNo">965</span><a name="line.965"></a>
-<span class="sourceLineNo">966</span>  private boolean tryRollWriter() {<a name="line.966"></a>
-<span class="sourceLineNo">967</span>    try {<a name="line.967"></a>
-<span class="sourceLineNo">968</span>      return rollWriter();<a name="line.968"></a>
-<span class="sourceLineNo">969</span>    } catch (IOException e) {<a name="line.969"></a>
-<span class="sourceLineNo">970</span>      LOG.warn("Unable to roll the log", e);<a name="line.970"></a>
-<span class="sourceLineNo">971</span>      return false;<a name="line.971"></a>
-<span class="sourceLineNo">972</span>    }<a name="line.972"></a>
-<span class="sourceLineNo">973</span>  }<a name="line.973"></a>
-<span class="sourceLineNo">974</span><a name="line.974"></a>
-<span class="sourceLineNo">975</span>  public long getMillisToNextPeriodicRoll() {<a name="line.975"></a>
-<span class="sourceLineNo">976</span>    if (lastRollTs.get() &gt; 0 &amp;&amp; periodicRollMsec &gt; 0) {<a name="line.976"></a>
-<span class="sourceLineNo">977</span>      return periodicRollMsec - getMillisFromLastRoll();<a name="line.977"></a>
-<span class="sourceLineNo">978</span>    }<a name="line.978"></a>
-<span class="sourceLineNo">979</span>    return Long.MAX_VALUE;<a name="line.979"></a>
-<span class="sourceLineNo">980</span>  }<a name="line.980"></a>
-<span class="sourceLineNo">981</span><a name="line.981"></a>
-<span class="sourceLineNo">982</span>  public long getMillisFromLastRoll() {<a name="line.982"></a>
-<span class="sourceLineNo">983</span>    return (EnvironmentEdgeManager.currentTime() - lastRollTs.get());<a name="line.983"></a>
-<span class="sourceLineNo">984</span>  }<a name="line.984"></a>
-<span class="sourceLineNo">985</span><a name="line.985"></a>
-<span class="sourceLineNo">986</span>  void periodicRollForTesting() throws IOException {<a name="line.986"></a>
-<span class="sourceLineNo">987</span>    lock.lock();<a name="line.987"></a>
-<span class="sourceLineNo">988</span>    try {<a name="line.988"></a>
-<span class="sourceLineNo">989</span>      periodicRoll();<a name="line.989"></a>
-<span class="sourceLineNo">990</span>    } finally {<a name="line.990"></a>
-<span class="sourceLineNo">991</span>      lock.unlock();<a name="line.991"></a>
-<span class="sourceLineNo">992</span>    }<a name="line.992"></a>
-<span class="sourceLineNo">993</span>  }<a name="line.993"></a>
-<span class="sourceLineNo">994</span><a name="line.994"></a>
-<span class="sourceLineNo">995</span>  public boolean rollWriterForTesting() throws IOException {<a name="line.995"></a>
-<span class="sourceLineNo">996</span>    lock.lock();<a name="line.996"></a>
-<span class="sourceLineNo">997</span>    try {<a name="line.997"></a>
-<span class="sourceLineNo">998</span>      return rollWriter();<a name="line.998"></a>
-<span class="sourceLineNo">999</span>    } finally {<a name="line.999"></a>
-<span class="sourceLineNo">1000</span>      lock.unlock();<a name="line.1000"></a>
-<span class="sourceLineNo">1001</span>    }<a name="line.1001"></a>
-<span class="sourceLineNo">1002</span>  }<a name="line.1002"></a>
-<span class="sourceLineNo">1003</span><a name="line.1003"></a>
-<span class="sourceLineNo">1004</span>  void removeInactiveLogsForTesting() throws Exception {<a name="line.1004"></a>
-<span class="sourceLineNo">1005</span>    lock.lock();<a name="line.1005"></a>
-<span class="sourceLineNo">1006</span>    try {<a name="line.1006"></a>
-<span class="sourceLineNo">1007</span>      removeInactiveLogs();<a name="line.1007"></a>
-<span class="sourceLineNo">1008</span>    } finally  {<a name="line.1008"></a>
-<span class="sourceLineNo">1009</span>      lock.unlock();<a name="line.1009"></a>
-<span class="sourceLineNo">1010</span>    }<a name="line.1010"></a>
-<span class="sourceLineNo">1011</span>  }<a name="line.1011"></a>
-<span class="sourceLineNo">1012</span><a name="line.1012"></a>
-<span class="sourceLineNo">1013</span>  private void periodicRoll() throws IOException {<a name="line.1013"></a>
-<span class="sourceLineNo">1014</span>    if (storeTracker.isEmpty()) {<a name="line.1014"></a>
-<span class="sourceLineNo">1015</span>      LOG.trace("no active procedures");<a name="line.1015"></a>
-<span class="sourceLineNo">1016</span>      tryRollWriter();<a name="line.1016"></a>
-<span class="sourceLineNo">1017</span>      removeAllLogs(flushLogId - 1, "no active procedures");<a name="line.1017"></a>
-<span class="sourceLineNo">1018</span>    } else {<a name="line.1018"></a>
-<span class="sourceLineNo">1019</span>      if (storeTracker.isAllModified()) {<a name="line.1019"></a>
-<span class="sourceLineNo">1020</span>        LOG.trace("all the active procedures are in the latest log");<a name="line.1020"></a>
-<span class="sourceLineNo">1021</span>        removeAllLogs(flushLogId - 1, "all the active procedures are in the latest log");<a name="line.1021"></a>
-<span class="sourceLineNo">1022</span>      }<a name="line.1022"></a>
-<span class="sourceLineNo">1023</span><a name="line.1023"></a>
-<span class="sourceLineNo">1024</span>      // if the log size has exceeded the roll threshold<a name="line.1024"></a>
-<span class="sourceLineNo">1025</span>      // or the periodic roll timeout is expired, try to roll the wal.<a name="line.1025"></a>
-<span class="sourceLineNo">1026</span>      if (totalSynced.get() &gt; rollThreshold || getMillisToNextPeriodicRoll() &lt;= 0) {<a name="line.1026"></a>
-<span class="sourceLineNo">1027</span>        tryRollWriter();<a name="line.1027"></a>
-<span class="sourceLineNo">1028</span>      }<a name="line.1028"></a>
-<span class="sourceLineNo">1029</span><a name="line.1029"></a>
-<span class="sourceLineNo">1030</span>      removeInactiveLogs();<a name="line.1030"></a>
-<span class="sourceLineNo">1031</span>    }<a name="line.1031"></a>
-<span class="sourceLineNo">1032</span>  }<a name="line.1032"></a>
-<span class="sourceLineNo">1033</span><a name="line.1033"></a>
-<span class="sourceLineNo">1034</span>  private boolean rollWriter() throws IOException {<a name="line.1034"></a>
-<span class="sourceLineNo">1035</span>    if (!isRunning()) {<a name="line.1035"></a>
-<span class="sourceLineNo">1036</span>      return false;<a name="line.1036"></a>
-<span class="sourceLineNo">1037</span>    }<a name="line.1037"></a>
-<span class="sourceLineNo">1038</span><a name="line.1038"></a>
-<span class="sourceLineNo">1039</span>    // Create new state-log<a name="line.1039"></a>
-<span class="sourceLineNo">1040</span>    if (!rollWriter(flushLogId + 1)) {<a name="line.1040"></a>
-<span class="sourceLineNo">1041</span>      LOG.warn("someone else has already created log {}", flushLogId);<a name="line.1041"></a>
-<span class="sourceLineNo">1042</span>      return false;<a name="line.1042"></a>
-<span class="sourceLineNo">1043</span>    }<a name="line.1043"></a>
-<span class="sourceLineNo">1044</span><a name="line.1044"></a>
-<span class="sourceLineNo">1045</span>    // We have the lease on the log,<a name="line.1045"></a>
-<span class="sourceLineNo">1046</span>    // but we should check if someone else has created new files<a name="line.1046"></a>
-<span class="sourceLineNo">1047</span>    if (getMaxLogId(getLogFiles()) &gt; flushLogId) {<a name="line.1047"></a>
-<span class="sourceLineNo">1048</span>      LOG.warn("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.1048"></a>
-<span class="sourceLineNo">1049</span>      logs.getLast().removeFile(this.walArchiveDir);<a name="line.1049"></a>
-<span class="sourceLineNo">1050</span>      return false;<a name="line.1050"></a>
-<span class="sourceLineNo">1051</span>    }<a name="line.1051"></a>
-<span class="sourceLineNo">1052</span><a name="line.1052"></a>
-<span class="sourceLineNo">1053</span>    // We have the lease on the log<a name="line.1053"></a>
-<span class="sourceLineNo">1054</span>    return true;<a name="line.1054"></a>
-<span class="sourceLineNo">1055</span>  }<a name="line.1055"></a>
-<span class="sourceLineNo">1056</span><a name="line.1056"></a>
-<span class="sourceLineNo">1057</span>  boolean rollWriter(long logId) throws IOException {<a name="line.1057"></a>
-<span class="sourceLineNo">1058</span>    assert logId &gt; flushLogId : "logId=" + logId + " flushLogId=" + flushLogId;<a name="line.1058"></a>
-<span class="sourceLineNo">1059</span>    assert lock.isHeldByCurrentThread() : "expected to be the lock owner. " + lock.isLocked();<a name="line.1059"></a>
-<span class="sourceLineNo">1060</span><a name="line.1060"></a>
-<span class="sourceLineNo">1061</span>    ProcedureWALHeader header = ProcedureWALHeader.newBuilder()<a name="line.1061"></a>
-<span class="sourceLineNo">1062</span>      .setVersion(ProcedureWALFormat.HEADER_VERSION)<a name="line.1062"></a>
-<span class="sourceLineNo">1063</span>      .setType(ProcedureWALFormat.LOG_TYPE_STREAM)<a name="line.1063"></a>
-<span class="sourceLineNo">1064</span>      .setMinProcId(storeTracker.getActiveMinProcId())<a name="line.1064"></a>
-<span class="sourceLineNo">1065</span>      .setLogId(logId)<a name="line.1065"></a>
-<span class="sourceLineNo">1066</span>      .build();<a name="line.1066"></a>
-<span class="sourceLineNo">1067</span><a name="line.1067"></a>
-<span class="sourceLineNo">1068</span>    FSDataOutputStream newStream = null;<a name="line.1068"></a>
-<span class="sourceLineNo">1069</span>    Path newLogFile = null;<a name="line.1069"></a>
-<span class="sourceLineNo">1070</span>    long startPos = -1;<a name="line.1070"></a>
-<span class="sourceLineNo">1071</span>    newLogFile = getLogFilePath(logId);<a name="line.1071"></a>
-<span class="sourceLineNo">1072</span>    try {<a name="line.1072"></a>
-<span class="sourceLineNo">1073</span>      newStream = CommonFSUtils.createForWal(fs, newLogFile, false);<a name="line.1073"></a>
-<span class="sourceLineNo">1074</span>    } catch (FileAlreadyExistsException e) {<a name="line.1074"></a>
-<span class="sourceLineNo">1075</span>      LOG.error("Log file with id={} already exists", logId, e);<a name="line.1075"></a>
-<span class="sourceLineNo">1076</span>      return false;<a name="line.1076"></a>
-<span class="sourceLineNo">1077</span>    } catch (RemoteException re) {<a name="line.1077"></a>
-<span class="sourceLineNo">1078</span>      LOG.warn("failed to create log file with id={}", logId, re);<a name="line.1078"></a>
-<span class="sourceLineNo">1079</span>      return false;<a name="line.1079"></a>
-<span class="sourceLineNo">1080</span>    }<a name="line.1080"></a>
-<span class="sourceLineNo">1081</span>    // After we create the stream but before we attempt to use it at all<a name="line.1081"></a>
-<span class="sourceLineNo">1082</span>    // ensure that we can provide the level of data safety we're configured<a name="line.1082"></a>
-<span class="sourceLineNo">1083</span>    // to provide.<a name="line.1083"></a>
-<span class="sourceLineNo">1084</span>    final String durability = useHsync ? StreamCapabilities.HSYNC : StreamCapabilities.HFLUSH;<a name="line.1084"></a>
-<span class="sourceLineNo">1085</span>    if (enforceStreamCapability &amp;&amp; !newStream.hasCapability(durability)) {<a name="line.1085"></a>
-<span class="sourceLineNo">1086</span>      throw new IllegalStateException("The procedure WAL relies on the ability to " + durability +<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>          " for proper operation during component failures, but the underlying filesystem does " +<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span>          "not support doing so. Please check the config value of '" + USE_HSYNC_CONF_KEY +<a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>          "' to set the desired level of robustness and ensure the config value of '" +<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span>          CommonFSUtils.HBASE_WAL_DIR + "' points to a FileSystem mount that can provide it.");<a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>    }<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>    try {<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>      ProcedureWALFormat.writeHeader(newStream, header);<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span>      startPos = newStream.getPos();<a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>    } catch (IOException ioe) {<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>      LOG.warn("Encountered exception writing header", ioe);<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span>      newStream.close();<a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>      return false;<a name="line.1098"></a>
+<span class="sourceLineNo">709</span>  private enum PushType { INSERT, UPDATE, DELETE }<a name="line.709"></a>
+<span class="sourceLineNo">710</span><a name="line.710"></a>
+<span class="sourceLineNo">711</span>  private long pushData(final PushType type, final ByteSlot slot,<a name="line.711"></a>
+<span class="sourceLineNo">712</span>      final long procId, final long[] subProcIds) {<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    if (!isRunning()) {<a name="line.713"></a>
+<span class="sourceLineNo">714</span>      throw new RuntimeException("the store must be running before inserting data");<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    }<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    if (logs.isEmpty()) {<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      throw new RuntimeException("recoverLease() must be called before inserting data");<a name="line.717"></a>
+<span class="sourceLineNo">718</span>    }<a name="line.718"></a>
+<span class="sourceLineNo">719</span><a name="line.719"></a>
+<span class="sourceLineNo">720</span>    long logId = -1;<a name="line.720"></a>
+<span class="sourceLineNo">721</span>    lock.lock();<a name="line.721"></a>
+<span class="sourceLineNo">722</span>    try {<a name="line.722"></a>
+<span class="sourceLineNo">723</span>      // Wait for the sync to be completed<a name="line.723"></a>
+<span class="sourceLineNo">724</span>      while (true) {<a name="line.724"></a>
+<span class="sourceLineNo">725</span>        if (!isRunning()) {<a name="line.725"></a>
+<span class="sourceLineNo">726</span>          throw new RuntimeException("store no longer running");<a name="line.726"></a>
+<span class="sourceLineNo">727</span>        } else if (isSyncAborted()) {<a name="line.727"></a>
+<span class="sourceLineNo">728</span>          throw new RuntimeException("sync aborted", syncException.get());<a name="line.728"></a>
+<span class="sourceLineNo">729</span>        } else if (inSync.get()) {<a name="line.729"></a>
+<span class="sourceLineNo">730</span>          syncCond.await();<a name="line.730"></a>
+<span class="sourceLineNo">731</span>        } else if (slotIndex &gt;= syncMaxSlot) {<a name="line.731"></a>
+<span class="sourceLineNo">732</span>          slotCond.signal();<a name="line.732"></a>
+<span class="sourceLineNo">733</span>          syncCond.await();<a name="line.733"></a>
+<span class="sourceLineNo">734</span>        } else {<a name="line.734"></a>
+<span class="sourceLineNo">735</span>          break;<a name="line.735"></a>
+<span class="sourceLineNo">736</span>        }<a name="line.736"></a>
+<span class="sourceLineNo">737</span>      }<a name="line.737"></a>
+<span class="sourceLineNo">738</span><a name="line.738"></a>
+<span class="sourceLineNo">739</span>      final long pushSyncId = syncId.get();<a name="line.739"></a>
+<span class="sourceLineNo">740</span>      updateStoreTracker(type, procId, subProcIds);<a name="line.740"></a>
+<span class="sourceLineNo">741</span>      slots[slotIndex++] = slot;<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      logId = flushLogId;<a name="line.742"></a>
+<span class="sourceLineNo">743</span><a name="line.743"></a>
+<span class="sourceLineNo">744</span>      // Notify that there is new data<a name="line.744"></a>
+<span class="sourceLineNo">745</span>      if (slotIndex == 1) {<a name="line.745"></a>
+<span class="sourceLineNo">746</span>        waitCond.signal();<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      }<a name="line.747"></a>
+<span class="sourceLineNo">748</span><a name="line.748"></a>
+<span class="sourceLineNo">749</span>      // Notify that the slots are full<a name="line.749"></a>
+<span class="sourceLineNo">750</span>      if (slotIndex == syncMaxSlot) {<a name="line.750"></a>
+<span class="sourceLineNo">751</span>        waitCond.signal();<a name="line.751"></a>
+<span class="sourceLineNo">752</span>        slotCond.signal();<a name="line.752"></a>
+<span class="sourceLineNo">753</span>      }<a name="line.753"></a>
+<span class="sourceLineNo">754</span><a name="line.754"></a>
+<span class="sourceLineNo">755</span>      while (pushSyncId == syncId.get() &amp;&amp; isRunning()) {<a name="line.755"></a>
+<span class="sourceLineNo">756</span>        syncCond.await();<a name="line.756"></a>
+<span class="sourceLineNo">757</span>      }<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    } catch (InterruptedException e) {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      Thread.currentThread().interrupt();<a name="line.759"></a>
+<span class="sourceLineNo">760</span>      sendAbortProcessSignal();<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      throw new RuntimeException(e);<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    } finally {<a name="line.762"></a>
+<span class="sourceLineNo">763</span>      lock.unlock();<a name="line.763"></a>
+<span class="sourceLineNo">764</span>      if (isSyncAborted()) {<a name="line.764"></a>
+<span class="sourceLineNo">765</span>        throw new RuntimeException("sync aborted", syncException.get());<a name="line.765"></a>
+<span class="sourceLineNo">766</span>      }<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    }<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    return logId;<a name="line.768"></a>
+<span class="sourceLineNo">769</span>  }<a name="line.769"></a>
+<span class="sourceLineNo">770</span><a name="line.770"></a>
+<span class="sourceLineNo">771</span>  private void updateStoreTracker(final PushType type,<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      final long procId, final long[] subProcIds) {<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    switch (type) {<a name="line.773"></a>
+<span class="sourceLineNo">774</span>      case INSERT:<a name="line.774"></a>
+<span class="sourceLineNo">775</span>        if (subProcIds == null) {<a name="line.775"></a>
+<span class="sourceLineNo">776</span>          storeTracker.insert(procId);<a name="line.776"></a>
+<span class="sourceLineNo">777</span>        } else if (procId == Procedure.NO_PROC_ID) {<a name="line.777"></a>
+<span class="sourceLineNo">778</span>          storeTracker.insert(subProcIds);<a name="line.778"></a>
+<span class="sourceLineNo">779</span>        } else {<a name="line.779"></a>
+<span class="sourceLineNo">780</span>          storeTracker.insert(procId, subProcIds);<a name="line.780"></a>
+<span class="sourceLineNo">781</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.781"></a>
+<span class="sourceLineNo">782</span>        }<a name="line.782"></a>
+<span class="sourceLineNo">783</span>        break;<a name="line.783"></a>
+<span class="sourceLineNo">784</span>      case UPDATE:<a name="line.784"></a>
+<span class="sourceLineNo">785</span>        storeTracker.update(procId);<a name="line.785"></a>
+<span class="sourceLineNo">786</span>        holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.786"></a>
+<span class="sourceLineNo">787</span>        break;<a name="line.787"></a>
+<span class="sourceLineNo">788</span>      case DELETE:<a name="line.788"></a>
+<span class="sourceLineNo">789</span>        if (subProcIds != null &amp;&amp; subProcIds.length &gt; 0) {<a name="line.789"></a>
+<span class="sourceLineNo">790</span>          storeTracker.delete(subProcIds);<a name="line.790"></a>
+<span class="sourceLineNo">791</span>          holdingCleanupTracker.setDeletedIfModified(subProcIds);<a name="line.791"></a>
+<span class="sourceLineNo">792</span>        } else {<a name="line.792"></a>
+<span class="sourceLineNo">793</span>          storeTracker.delete(procId);<a name="line.793"></a>
+<span class="sourceLineNo">794</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.794"></a>
+<span class="sourceLineNo">795</span>        }<a name="line.795"></a>
+<span class="sourceLineNo">796</span>        break;<a name="line.796"></a>
+<span class="sourceLineNo">797</span>      default:<a name="line.797"></a>
+<span class="sourceLineNo">798</span>        throw new RuntimeException("invalid push type " + type);<a name="line.798"></a>
+<span class="sourceLineNo">799</span>    }<a name="line.799"></a>
+<span class="sourceLineNo">800</span>  }<a name="line.800"></a>
+<span class="sourceLineNo">801</span><a name="line.801"></a>
+<span class="sourceLineNo">802</span>  private boolean isSyncAborted() {<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    return syncException.get() != null;<a name="line.803"></a>
+<span class="sourceLineNo">804</span>  }<a name="line.804"></a>
+<span class="sourceLineNo">805</span><a name="line.805"></a>
+<span class="sourceLineNo">806</span>  private void syncLoop() throws Throwable {<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    long totalSyncedToStore = 0;<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    inSync.set(false);<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    lock.lock();<a name="line.809"></a>
+<span class="sourceLineNo">810</span>    try {<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      while (isRunning()) {<a name="line.811"></a>
+<span class="sourceLineNo">812</span>        try {<a name="line.812"></a>
+<span class="sourceLineNo">813</span>          // Wait until new data is available<a name="line.813"></a>
+<span class="sourceLineNo">814</span>          if (slotIndex == 0) {<a name="line.814"></a>
+<span class="sourceLineNo">815</span>            if (!loading.get()) {<a name="line.815"></a>
+<span class="sourceLineNo">816</span>              periodicRoll();<a name="line.816"></a>
+<span class="sourceLineNo">817</span>            }<a name="line.817"></a>
+<span class="sourceLineNo">818</span><a name="line.818"></a>
+<span class="sourceLineNo">819</span>            if (LOG.isTraceEnabled()) {<a name="line.819"></a>
+<span class="sourceLineNo">820</span>              float rollTsSec = getMillisFromLastRoll() / 1000.0f;<a name="line.820"></a>
+<span class="sourceLineNo">821</span>              LOG.trace(String.format("Waiting for data. flushed=%s (%s/sec)",<a name="line.821"></a>
+<span class="sourceLineNo">822</span>                        StringUtils.humanSize(totalSynced.get()),<a name="line.822"></a>
+<span class="sourceLineNo">823</span>                        StringUtils.humanSize(totalSynced.get() / rollTsSec)));<a name="line.823"></a>
+<span class="sourceLineNo">824</span>            }<a name="line.824"></a>
+<span class="sourceLineNo">825</span><a name="line.825"></a>
+<span class="sourceLineNo">826</span>            waitCond.await(getMillisToNextPeriodicRoll(), TimeUnit.MILLISECONDS);<a name="line.826"></a>
+<span class="sourceLineNo">827</span>            if (slotIndex == 0) {<a name="line.827"></a>
+<span class="sourceLineNo">828</span>              // no data.. probably a stop() or a periodic roll<a name="line.828"></a>
+<span class="sourceLineNo">829</span>              continue;<a name="line.829"></a>
+<span class="sourceLineNo">830</span>            }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>          }<a name="line.831"></a>
+<span class="sourceLineNo">832</span>          // Wait SYNC_WAIT_MSEC or the signal of "slots full" before flushing<a name="line.832"></a>
+<span class="sourceLineNo">833</span>          syncMaxSlot = runningProcCount;<a name="line.833"></a>
+<span class="sourceLineNo">834</span>          assert syncMaxSlot &gt; 0 : "unexpected syncMaxSlot=" + syncMaxSlot;<a name="line.834"></a>
+<span class="sourceLineNo">835</span>          final long syncWaitSt = EnvironmentEdgeManager.currentTime();<a name="line.835"></a>
+<span class="sourceLineNo">836</span>          if (slotIndex != syncMaxSlot) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>            slotCond.await(syncWaitMsec, TimeUnit.MILLISECONDS);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>          }<a name="line.838"></a>
+<span class="sourceLineNo">839</span><a name="line.839"></a>
+<span class="sourceLineNo">840</span>          final long currentTs = EnvironmentEdgeManager.currentTime();<a name="line.840"></a>
+<span class="sourceLineNo">841</span>          final long syncWaitMs = currentTs - syncWaitSt;<a name="line.841"></a>
+<span class="sourceLineNo">842</span>          final float rollSec = getMillisFromLastRoll() / 1000.0f;<a name="line.842"></a>
+<span class="sourceLineNo">843</span>          final float syncedPerSec = totalSyncedToStore / rollSec;<a name="line.843"></a>
+<span class="sourceLineNo">844</span>          if (LOG.isTraceEnabled() &amp;&amp; (syncWaitMs &gt; 10 || slotIndex &lt; syncMaxSlot)) {<a name="line.844"></a>
+<span class="sourceLineNo">845</span>            LOG.trace(String.format("Sync wait %s, slotIndex=%s , totalSynced=%s (%s/sec)",<a name="line.845"></a>
+<span class="sourceLineNo">846</span>                      StringUtils.humanTimeDiff(syncWaitMs), slotIndex,<a name="line.846"></a>
+<span class="sourceLineNo">847</span>                      StringUtils.humanSize(totalSyncedToStore),<a name="line.847"></a>
+<span class="sourceLineNo">848</span>                      StringUtils.humanSize(syncedPerSec)));<a name="line.848"></a>
+<span class="sourceLineNo">849</span>          }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>          // update webui circular buffers (TODO: get rid of allocations)<a name="line.851"></a>
+<span class="sourceLineNo">852</span>          final SyncMetrics syncMetrics = new SyncMetrics();<a name="line.852"></a>
+<span class="sourceLineNo">853</span>          syncMetrics.timestamp = currentTs;<a name="line.853"></a>
+<span class="sourceLineNo">854</span>          syncMetrics.syncWaitMs = syncWaitMs;<a name="line.854"></a>
+<span class="sourceLineNo">855</span>          syncMetrics.syncedEntries = slotIndex;<a name="line.855"></a>
+<span class="sourceLineNo">856</span>          syncMetrics.totalSyncedBytes = totalSyncedToStore;<a name="line.856"></a>
+<span class="sourceLineNo">857</span>          syncMetrics.syncedPerSec = syncedPerSec;<a name="line.857"></a>
+<span class="sourceLineNo">858</span>          syncMetricsQueue.add(syncMetrics);<a name="line.858"></a>
+<span class="sourceLineNo">859</span><a name="line.859"></a>
+<span class="sourceLineNo">860</span>          // sync<a name="line.860"></a>
+<span class="sourceLineNo">861</span>          inSync.set(true);<a name="line.861"></a>
+<span class="sourceLineNo">862</span>          long slotSize = syncSlots();<a name="line.862"></a>
+<span class="sourceLineNo">863</span>          logs.getLast().addToSize(slotSize);<a name="line.863"></a>
+<span class="sourceLineNo">864</span>          totalSyncedToStore = totalSynced.addAndGet(slotSize);<a name="line.864"></a>
+<span class="sourceLineNo">865</span>          slotIndex = 0;<a name="line.865"></a>
+<span class="sourceLineNo">866</span>          inSync.set(false);<a name="line.866"></a>
+<span class="sourceLineNo">867</span>          syncId.incrementAndGet();<a name="line.867"></a>
+<span class="sourceLineNo">868</span>        } catch (InterruptedException e) {<a name="line.868"></a>
+<span class="sourceLineNo">869</span>          Thread.currentThread().interrupt();<a name="line.869"></a>
+<span class="sourceLineNo">870</span>          syncException.compareAndSet(null, e);<a name="line.870"></a>
+<span class="sourceLineNo">871</span>          sendAbortProcessSignal();<a name="line.871"></a>
+<span class="sourceLineNo">872</span>          throw e;<a name="line.872"></a>
+<span class="sourceLineNo">873</span>        } catch (Throwable t) {<a name="line.873"></a>
+<span class="sourceLineNo">874</span>          syncException.compareAndSet(null, t);<a name="line.874"></a>
+<span class="sourceLineNo">875</span>          sendAbortProcessSignal();<a name="line.875"></a>
+<span class="sourceLineNo">876</span>          throw t;<a name="line.876"></a>
+<span class="sourceLineNo">877</span>        } finally {<a name="line.877"></a>
+<span class="sourceLineNo">878</span>          syncCond.signalAll();<a name="line.878"></a>
+<span class="sourceLineNo">879</span>        }<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      }<a name="line.880"></a>
+<span class="sourceLineNo">881</span>    } finally {<a name="line.881"></a>
+<span class="sourceLineNo">882</span>      lock.unlock();<a name="line.882"></a>
+<span class="sourceLineNo">883</span>    }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>  }<a name="line.884"></a>
+<span class="sourceLineNo">885</span><a name="line.885"></a>
+<span class="sourceLineNo">886</span>  public ArrayList&lt;SyncMetrics&gt; getSyncMetrics() {<a name="line.886"></a>
+<span class="sourceLineNo">887</span>    lock.lock();<a name="line.887"></a>
+<span class="sourceLineNo">888</span>    try {<a name="line.888"></a>
+<span class="sourceLineNo">889</span>      return new ArrayList&lt;&gt;(syncMetricsQueue);<a name="line.889"></a>
+<span class="sourceLineNo">890</span>    } finally {<a name="line.890"></a>
+<span class="sourceLineNo">891</span>      lock.unlock();<a name="line.891"></a>
+<span class="sourceLineNo">892</span>    }<a name="line.892"></a>
+<span class="sourceLineNo">893</span>  }<a name="line.893"></a>
+<span class="sourceLineNo">894</span><a name="line.894"></a>
+<span class="sourceLineNo">895</span>  private long syncSlots() throws Throwable {<a name="line.895"></a>
+<span class="sourceLineNo">896</span>    int retry = 0;<a name="line.896"></a>
+<span class="sourceLineNo">897</span>    int logRolled = 0;<a name="line.897"></a>
+<span class="sourceLineNo">898</span>    long totalSynced = 0;<a name="line.898"></a>
+<span class="sourceLineNo">899</span>    do {<a name="line.899"></a>
+<span class="sourceLineNo">900</span>      try {<a name="line.900"></a>
+<span class="sourceLineNo">901</span>        totalSynced = syncSlots(stream, slots, 0, slotIndex);<a name="line.901"></a>
+<span class="sourceLineNo">902</span>        break;<a name="line.902"></a>
+<span class="sourceLineNo">903</span>      } catch (Throwable e) {<a name="line.903"></a>
+<span class="sourceLineNo">904</span>        LOG.warn("unable to sync slots, retry=" + retry);<a name="line.904"></a>
+<span class="sourceLineNo">905</span>        if (++retry &gt;= maxRetriesBeforeRoll) {<a name="line.905"></a>
+<span class="sourceLineNo">906</span>          if (logRolled &gt;= maxSyncFailureRoll &amp;&amp; isRunning()) {<a name="line.906"></a>
+<span class="sourceLineNo">907</span>            LOG.error("Sync slots after log roll failed, abort.", e);<a name="line.907"></a>
+<span class="sourceLineNo">908</span>            throw e;<a name="line.908"></a>
+<span class="sourceLineNo">909</span>          }<a name="line.909"></a>
+<span class="sourceLineNo">910</span><a name="line.910"></a>
+<span class="sourceLineNo">911</span>          if (!rollWriterWithRetries()) {<a name="line.911"></a>
+<span class="sourceLineNo">912</span>            throw e;<a name="line.912"></a>
+<span class="sourceLineNo">913</span>          }<a name="line.913"></a>
+<span class="sourceLineNo">914</span><a name="line.914"></a>
+<span class="sourceLineNo">915</span>          logRolled++;<a name="line.915"></a>
+<span class="sourceLineNo">916</span>          retry = 0;<a name="line.916"></a>
+<span class="sourceLineNo">917</span>        }<a name="line.917"></a>
+<span class="sourceLineNo">918</span>      }<a name="line.918"></a>
+<span class="sourceLineNo">919</span>    } while (isRunning());<a name="line.919"></a>
+<span class="sourceLineNo">920</span>    return totalSynced;<a name="line.920"></a>
+<span class="sourceLineNo">921</span>  }<a name="line.921"></a>
+<span class="sourceLineNo">922</span><a name="line.922"></a>
+<span class="sourceLineNo">923</span>  protected long syncSlots(final FSDataOutputStream stream, final ByteSlot[] slots,<a name="line.923"></a>
+<span class="sourceLineNo">924</span>      final int offset, final int count) throws IOException {<a name="line.924"></a>
+<span class="sourceLineNo">925</span>    long totalSynced = 0;<a name="line.925"></a>
+<span class="sourceLineNo">926</span>    for (int i = 0; i &lt; count; ++i) {<a name="line.926"></a>
+<span class="sourceLineNo">927</span>      final ByteSlot data = slots[offset + i];<a name="line.927"></a>
+<span class="sourceLineNo">928</span>      data.writeTo(stream);<a name="line.928"></a>
+<span class="sourceLineNo">929</span>      totalSynced += data.size();<a name="line.929"></a>
+<span class="sourceLineNo">930</span>    }<a name="line.930"></a>
+<span class="sourceLineNo">931</span><a name="line.931"></a>
+<span class="sourceLineNo">932</span>    syncStream(stream);<a name="line.932"></a>
+<span class="sourceLineNo">933</span>    sendPostSyncSignal();<a name="line.933"></a>
+<span class="sourceLineNo">934</span><a name="line.934"></a>
+<span class="sourceLineNo">935</span>    if (LOG.isTraceEnabled()) {<a name="line.935"></a>
+<span class="sourceLineNo">936</span>      LOG.trace("Sync slots=" + count + '/' + syncMaxSlot +<a name="line.936"></a>
+<span class="sourceLineNo">937</span>                ", flushed=" + StringUtils.humanSize(totalSynced));<a name="line.937"></a>
+<span class="sourceLineNo">938</span>    }<a name="line.938"></a>
+<span class="sourceLineNo">939</span>    return totalSynced;<a name="line.939"></a>
+<span class="sourceLineNo">940</span>  }<a name="line.940"></a>
+<span class="sourceLineNo">941</span><a name="line.941"></a>
+<span class="sourceLineNo">942</span>  protected void syncStream(final FSDataOutputStream stream) throws IOException {<a name="line.942"></a>
+<span class="sourceLineNo">943</span>    if (useHsync) {<a name="line.943"></a>
+<span class="sourceLineNo">944</span>      stream.hsync();<a name="line.944"></a>
+<span class="sourceLineNo">945</span>    } else {<a name="line.945"></a>
+<span class="sourceLineNo">946</span>      stream.hflush();<a name="line.946"></a>
+<span class="sourceLineNo">947</span>    }<a name="line.947"></a>
+<span class="sourceLineNo">948</span>  }<a name="line.948"></a>
+<span class="sourceLineNo">949</span><a name="line.949"></a>
+<span class="sourceLineNo">950</span>  private boolean rollWriterWithRetries() {<a name="line.950"></a>
+<span class="sourceLineNo">951</span>    for (int i = 0; i &lt; rollRetries &amp;&amp; isRunning(); ++i) {<a name="line.951"></a>
+<span class="sourceLineNo">952</span>      if (i &gt; 0) {<a name="line.952"></a>
+<span class="sourceLineNo">953</span>        Threads.sleepWithoutInterrupt(waitBeforeRoll * i);<a name="line.953"></a>
+<span class="sourceLineNo">954</span>      }<a name="line.954"></a>
+<span class="sourceLineNo">955</span><a name="line.955"></a>
+<span class="sourceLineNo">956</span>      try {<a name="line.956"></a>
+<span class="sourceLineNo">957</span>        if (rollWriter()) {<a name="line.957"></a>
+<span class="sourceLineNo">958</span>          return true;<a name="line.958"></a>
+<span class="sourceLineNo">959</span>        }<a name="line.959"></a>
+<span class="sourceLineNo">960</span>      } catch (IOException e) {<a name="line.960"></a>
+<span class="sourceLineNo">961</span>        LOG.warn("Unable to roll the log, attempt=" + (i + 1), e);<a name="line.961"></a>
+<span class="sourceLineNo">962</span>      }<a name="line.962"></a>
+<span class="sourceLineNo">963</span>    }<a name="line.963"></a>
+<span class="sourceLineNo">964</span>    LOG.error(HBaseMarkers.FATAL, "Unable to roll the log");<a name="line.964"></a>
+<span class="sourceLineNo">965</span>    return false;<a name="line.965"></a>
+<span class="sourceLineNo">966</span>  }<a name="line.966"></a>
+<span class="sourceLineNo">967</span><a name="line.967"></a>
+<span class="sourceLineNo">968</span>  private boolean tryRollWriter() {<a name="line.968"></a>
+<span class="sourceLineNo">969</span>    try {<a name="line.969"></a>
+<span class="sourceLineNo">970</span>      return rollWriter();<a name="line.970"></a>
+<span class="sourceLineNo">971</span>    } catch (IOException e) {<a name="line.971"></a>
+<span class="sourceLineNo">972</span>      LOG.warn("Unable to roll the log", e);<a name="line.972"></a>
+<span class="sourceLineNo">973</span>      return false;<a name="line.973"></a>
+<span class="sourceLineNo">974</span>    }<a name="line.974"></a>
+<span class="sourceLineNo">975</span>  }<a name="line.975"></a>
+<span class="sourceLineNo">976</span><a name="line.976"></a>
+<span class="sourceLineNo">977</span>  public long getMillisToNextPeriodicRoll() {<a name="line.977"></a>
+<span class="sourceLineNo">978</span>    if (lastRollTs.get() &gt; 0 &amp;&amp; periodicRollMsec &gt; 0) {<a name="line.978"></a>
+<span class="sourceLineNo">979</span>      return periodicRollMsec - getMillisFromLastRoll();<a name="line.979"></a>
+<span class="sourceLineNo">980</span>    }<a name="line.980"></a>
+<span class="sourceLineNo">981</span>    return Long.MAX_VALUE;<a name="line.981"></a>
+<span class="sourceLineNo">982</span>  }<a name="line.982"></a>
+<span class="sourceLineNo">983</span><a name="line.983"></a>
+<span class="sourceLineNo">984</span>  public long getMillisFromLastRoll() {<a name="line.984"></a>
+<span class="sourceLineNo">985</span>    return (EnvironmentEdgeManager.currentTime() - lastRollTs.get());<a name="line.985"></a>
+<span class="sourceLineNo">986</span>  }<a name="line.986"></a>
+<span class="sourceLineNo">987</span><a name="line.987"></a>
+<span class="sourceLineNo">988</span>  void periodicRollForTesting() throws IOException {<a name="line.988"></a>
+<span class="sourceLineNo">989</span>    lock.lock();<a name="line.989"></a>
+<span class="sourceLineNo">990</span>    try {<a name="line.990"></a>
+<span class="sourceLineNo">991</span>      periodicRoll();<a name="line.991"></a>
+<span class="sourceLineNo">992</span>    } finally {<a name="line.992"></a>
+<span class="sourceLineNo">993</span>      lock.unlock();<a name="line.993"></a>
+<span class="sourceLineNo">994</span>    }<a name="line.994"></a>
+<span class="sourceLineNo">995</span>  }<a name="line.995"></a>
+<span class="sourceLineNo">996</span><a name="line.996"></a>
+<span class="sourceLineNo">997</span>  public boolean rollWriterForTesting() throws IOException {<a name="line.997"></a>
+<span class="sourceLineNo">998</span>    lock.lock();<a name="line.998"></a>
+<span class="sourceLineNo">999</span>    try {<a name="line.999"></a>
+<span class="sourceLineNo">1000</span>      return rollWriter();<a name="line.1000"></a>
+<span class="sourceLineNo">1001</span>    } finally {<a name="line.1001"></a>
+<span class="sourceLineNo">1002</span>      lock.unlock();<a name="line.1002"></a>
+<span class="sourceLineNo">1003</span>    }<a name="line.1003"></a>
+<span class="sourceLineNo">1004</span>  }<a name="line.1004"></a>
+<span class="sourceLineNo">1005</span><a name="line.1005"></a>
+<span class="sourceLineNo">1006</span>  void removeInactiveLogsForTesting() throws Exception {<a name="line.1006"></a>
+<span class="sourceLineNo">1007</span>    lock.lock();<a name="line.1007"></a>
+<span class="sourceLineNo">1008</span>    try {<a name="line.1008"></a>
+<span class="sourceLineNo">1009</span>      removeInactiveLogs();<a name="line.1009"></a>
+<span class="sourceLineNo">1010</span>    } finally  {<a name="line.1010"></a>
+<span class="sourceLineNo">1011</span>      lock.unlock();<a name="line.1011"></a>
+<span class="sourceLineNo">1012</span>    }<a name="line.1012"></a>
+<span class="sourceLineNo">1013</span>  }<a name="line.1013"></a>
+<span class="sourceLineNo">1014</span><a name="line.1014"></a>
+<span class="sourceLineNo">1015</span>  private void periodicRoll() throws IOException {<a name="line.1015"></a>
+<span class="sourceLineNo">1016</span>    if (storeTracker.isEmpty()) {<a name="line.1016"></a>
+<span class="sourceLineNo">1017</span>      LOG.trace("no active procedures");<a name="line.1017"></a>
+<span class="sourceLineNo">1018</span>      tryRollWriter();<a name="line.1018"></a>
+<span class="sourceLineNo">1019</span>      removeAllLogs(flushLogId - 1, "no active procedures");<a name="line.1019"></a>
+<span class="sourceLineNo">1020</span>    } else {<a name="line.1020"></a>
+<span class="sourceLineNo">1021</span>      if (storeTracker.isAllModified()) {<a name="line.1021"></a>
+<span class="sourceLineNo">1022</span>        LOG.trace("all the active procedures are in the latest log");<a name="line.1022"></a>
+<span class="sourceLineNo">1023</span>        removeAllLogs(flushLogId - 1, "all the active procedures are in the latest log");<a name="line.1023"></a>
+<span class="sourceLineNo">1024</span>      }<a name="line.1024"></a>
+<span class="sourceLineNo">1025</span><a name="line.1025"></a>
+<span class="sourceLineNo">1026</span>      // if the log size has exceeded the roll threshold<a name="line.1026"></a>
+<span class="sourceLineNo">1027</span>      // or the periodic roll timeout is expired, try to roll the wal.<a name="line.1027"></a>
+<span class="sourceLineNo">1028</span>      if (totalSynced.get() &gt; rollThreshold || getMillisToNextPeriodicRoll() &lt;= 0) {<a name="line.1028"></a>
+<span class="sourceLineNo">1029</span>        tryRollWriter();<a name="line.1029"></a>
+<span class="sourceLineNo">1030</span>      }<a name="line.1030"></a>
+<span class="sourceLineNo">1031</span><a name="line.1031"></a>
+<span class="sourceLineNo">1032</span>      removeInactiveLogs();<a name="line.1032"></a>
+<span class="sourceLineNo">1033</span>    }<a name="line.1033"></a>
+<span class="sourceLineNo">1034</span>  }<a name="line.1034"></a>
+<span class="sourceLineNo">1035</span><a name="line.1035"></a>
+<span class="sourceLineNo">1036</span>  private boolean rollWriter() throws IOException {<a name="line.1036"></a>
+<span class="sourceLineNo">1037</span>    if (!isRunning()) {<a name="line.1037"></a>
+<span class="sourceLineNo">1038</span>      return false;<a name="line.1038"></a>
+<span class="sourceLineNo">1039</span>    }<a name="line.1039"></a>
+<span class="sourceLineNo">1040</span><a name="line.1040"></a>
+<span class="sourceLineNo">1041</span>    // Create new state-log<a name="line.1041"></a>
+<span class="sourceLineNo">1042</span>    if (!rollWriter(flushLogId + 1)) {<a name="line.1042"></a>
+<span class="sourceLineNo">1043</span>      LOG.warn("someone else has already created log {}", flushLogId);<a name="line.1043"></a>
+<span class="sourceLineNo">1044</span>      return false;<a name="line.1044"></a>
+<span class="sourceLineNo">1045</span>    }<a name="line.1045"></a>
+<span class="sourceLineNo">1046</span><a name="line.1046"></a>
+<span class="sourceLineNo">1047</span>    // We have the lease on the log,<a name="line.1047"></a>
+<span class="sourceLineNo">1048</span>    // but we should check if someone else has created new files<a name="line.1048"></a>
+<span class="sourceLineNo">1049</span>    if (getMaxLogId(getLogFiles()) &gt; flushLogId) {<a name="line.1049"></a>
+<span class="sourceLineNo">1050</span>      LOG.warn("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.1050"></a>
+<span class="sourceLineNo">1051</span>      logs.getLast().removeFile(this.walArchiveDir);<a name="line.1051"></a>
+<span class="sourceLineNo">1052</span>      return false;<a name="line.1052"></a>
+<span class="sourceLineNo">1053</span>    }<a name="line.1053"></a>
+<span class="sourceLineNo">1054</span><a name="line.1054"></a>
+<span class="sourceLineNo">1055</span>    // We have the lease on the log<a name="line.1055"></a>
+<span class="sourceLineNo">1056</span>    return true;<a name="line.1056"></a>
+<span class="sourceLineNo">1057</span>  }<a name="line.1057"></a>
+<span class="sourceLineNo">1058</span><a name="line.1058"></a>
+<span class="sourceLineNo">1059</span>  boolean rollWriter(long logId) throws IOException {<a name="line.1059"></a>
+<span class="sourceLineNo">1060</span>    assert logId &gt; flushLogId : "logId=" + logId + " flushLogId=" + flushLogId;<a name="line.1060"></a>
+<span class="sourceLineNo">1061</span>    assert lock.isHeldByCurrentThread() : "expected to be the lock owner. " + lock.isLocked();<a name="line.1061"></a>
+<span class="sourceLineNo">1062</span><a name="line.1062"></a>
+<span class="sourceLineNo">1063</span>    ProcedureWALHeader header = ProcedureWALHeader.newBuilder()<a name="line.1063"></a>
+<span class="sourceLineNo">1064</span>      .setVersion(ProcedureWALFormat.HEADER_VERSION)<a name="line.1064"></a>
+<span class="sourceLineNo">1065</span>      .setType(ProcedureWALFormat.LOG_TYPE_STREAM)<a name="line.1065"></a>
+<span class="sourceLineNo">1066</span>      .setMinProcId(storeTracker.getActiveMinProcId())<a name="line.1066"></a>
+<span class="sourceLineNo">1067</span>      .setLogId(logId)<a name="line.1067"></a>
+<span class="sourceLineNo">1068</span>      .build();<a name="line.1068"></a>
+<span class="sourceLineNo">1069</span><a name="line.1069"></a>
+<span class="sourceLineNo">1070</span>    FSDataOutputStream newStream = null;<a name="line.1070"></a>
+<span class="sourceLineNo">1071</span>    Path newLogFile = null;<a name="line.1071"></a>
+<span class="sourceLineNo">1072</span>    long startPos = -1;<a name="line.1072"></a>
+<span class="sourceLineNo">1073</span>    newLogFile = getLogFilePath(logId);<a name="line.1073"></a>
+<span class="sourceLineNo">1074</span>    try {<a name="line.1074"></a>
+<span class="sourceLineNo">1075</span>      FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(newLogFile).overwrite(false);<a name="line.1075"></a>
+<span class="sourceLineNo">1076</span>      if (builder instanceof DistributedFileSystem.HdfsDataOutputStreamBuilder) {<a name="line.1076"></a>
+<span class="sourceLineNo">1077</span>        newStream = ((DistributedFileSystem.HdfsDataOutputStreamBuilder) builder)<a name="line.1077"></a>
+<span class="sourceLineNo">1078</span>          .replicate().build();<a name="line.1078"></a>
+<span class="sourceLineNo">1079</span>      } else {<a name="line.1079"></a>
+<span class="sourceLineNo">1080</span>        newStream = builder.build();<a name="line.1080"></a>
+<span class="sourceLineNo">1081</span>      }<a name="line.1081"></a>
+<span class="sourceLineNo">1082</span>    } catch (FileAlreadyExistsException e) {<a name="line.1082"></a>
+<span class="sourceLineNo">1083</span>      LOG.error("Log file with id={} already exists", logId, e);<a name="line.1083"></a>
+<span class="sourceLineNo">1084</span>      return false;<a name="line.1084"></a>
+<span class="sourceLineNo">1085</span>    } catch (RemoteException re) {<a name="line.1085"></a>
+<span class="sourceLineNo">1086</span>      LOG.warn("failed to create log file with id={}", logId, re);<a name="line.1086"></a>
+<span class="sourceLineNo">1087</span>      return false;<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>    }<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>    // After we create the stream but before we attempt to use it at all<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>    // ensure that we can provide the level of data safety we're configured<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span>    // to provide.<a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>    final String durability = useHsync ? StreamCapabilities.HSYNC : StreamCapabilities.HFLUSH;<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>    if (enforceStreamCapability &amp;&amp; !newStream.hasCapability(durability)) {<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>      throw new IllegalStateException("The procedure WAL relies on the ability to " + durability +<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>          " for proper operation during component failures, but the underlying filesystem does " +<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span>          "not support doing so. Please check the config value of '" + USE_HSYNC_CONF_KEY +<a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>          "' to set the desired level of robustness and ensure the config value of '" +<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span>          CommonFSUtils.HBASE_WAL_DIR + "' points to a FileSystem mount that can provide it.");<a name="line.1098"></a>
 <span class="sourceLineNo">1099</span>    }<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span><a name="line.1100"></a>
-<span class="sourceLineNo">1101</span>    closeCurrentLogStream(false);<a name="line.1101"></a>
-<span class="sourceLineNo">1102</span><a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>    storeTracker.resetModified();<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>    stream = newStream;<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span>    flushLogId = logId;<a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>    totalSynced.set(0);<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>    long rollTs = EnvironmentEdgeManager.currentTime();<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span>    lastRollTs.set(rollTs);<a name="line.1108"></a>
-<span class="sourceLineNo">1109</span>    logs.add(new ProcedureWALFile(fs, newLogFile, header, startPos, rollTs));<a name="line.1109"></a>
+<span class="sourceLineNo">1100</span>    try {<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>      ProcedureWALFormat.writeHeader(newStream, header);<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span>      startPos = newStream.getPos();<a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>    } catch (IOException ioe) {<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>      LOG.warn("Encountered exception writing header", ioe);<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>      newStream.close();<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span>      return false;<a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>    }<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span><a name="line.1108"></a>
+<span class="sourceLineNo">1109</span>    closeCurrentLogStream(false);<a name="line.1109"></a>
 <span class="sourceLineNo">1110</span><a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>    // if it's the first next WAL being added, build the holding cleanup tracker<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>    if (logs.size() == 2) {<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>      buildHoldingCleanupTracker();<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>    } else if (logs.size() &gt; walCountWarnThreshold) {<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>      LOG.warn("procedure WALs count={} above the warning threshold {}. check running procedures" +<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span>        " to see if something is stuck.", logs.size(), walCountWarnThreshold);<a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>      // This is just like what we have done at RS side when there are too many wal files. For RS,<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>      // if there are too many wal files, we will find out the wal entries in the oldest file, and<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>      // tell the upper layer to flush these regions so the wal entries will be useless and then we<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span>      // can delete the wal file. For WALProcedureStore, the assumption is that, if all the<a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>      // procedures recorded in a proc wal file are modified or deleted in a new proc wal file, then<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>      // we are safe to delete it. So here if there are too many proc wal files, we will find out<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>      // the procedure ids in the oldest file, which are neither modified nor deleted in newer proc<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>      // wal files, and tell upper layer to update the state of these procedures to the newest proc<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>      // wal file(by calling ProcedureStore.update), then we are safe to delete the oldest proc wal<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>      // file.<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span>      sendForceUpdateSignal(holdingCleanupTracker.getAllActiveProcIds());<a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>    }<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span><a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    LOG.info("Rolled new Procedure Store WAL, id={}", logId);<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>    return true;<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span>  }<a name="line.1132"></a>
-<span class="sourceLineNo">1133</span><a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>  private void closeCurrentLogStream(boolean abort) {<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>    if (stream == null || logs.isEmpty()) {<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>      return;<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>    }<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span><a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>    try {<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>      ProcedureWALFile log = logs.getLast();<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>      // If the loading flag is true, it usually means that we fail when loading procedures, so we<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>      // should not persist the store tracker, as its state may not be correct.<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>      if (!loading.get()) {<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>        log.setProcIds(storeTracker.getModifiedMinProcId(), storeTracker.getModifiedMaxProcId());<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>        log.updateLocalTracker(storeTracker);<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>        if (!abort) {<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>          long trailerSize = ProcedureWALFormat.writeTrailer(stream, storeTracker);<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>          log.addToSize(trailerSize);<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>        }<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>      }<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>    } catch (IOException | FSError e) {<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>      LOG.warn("Unable to write the trailer", e);<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>    }<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>    try {<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>      stream.close();<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>    } catch (IOException | FSError e) {<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>      LOG.error("Unable to close the stream", e);<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>    }<a name="line.1158"></a>
-<span class="sourceLineNo">1159</span>    stream = null;<a name="line.1159"></a>
-<span class="sourceLineNo">1160</span>  }<a name="line.1160"></a>
-<span class="sourceLineNo">1161</span><a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>  // ==========================================================================<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>  //  Log Files cleaner helpers<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span>  // ==========================================================================<a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>  private void removeInactiveLogs() throws IOException {<a name="line.1165"></a>
-<span class="sourceLineNo">1166</span>    // We keep track of which procedures are holding the oldest WAL in 'holdingCleanupTracker'.<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span>    // once there is nothing olding the oldest WAL we can remove it.<a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>    while (logs.size() &gt; 1 &amp;&amp; holdingCleanupTracker.isEmpty()) {<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>      LOG.info("Remove the oldest log {}", logs.getFirst());<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>      removeLogFile(logs.getFirst(), walArchiveDir);<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>      buildHoldingCleanupTracker();<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>    }<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span><a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>    // TODO: In case we are holding up a lot of logs for long time we should<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span>    // rewrite old procedures (in theory parent procs) to the new WAL.<a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>  }<a name="line.1176"></a>
-<span class="sourceLineNo">1177</span><a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>  private void buildHoldingCleanupTracker() {<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>    if (logs.size() &lt;= 1) {<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span>      // we only have one wal, so nothing to do<a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>      holdingCleanupTracker.reset();<a name="line.1181"></a>
-<span class="sourceLineNo">1182</span>      return;<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>    }<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span><a name="line.1184"></a>
-<span class="sourceLineNo">1185</span>    // compute the holding tracker.<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>    // - the first WAL is used for the 'updates'<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span>    // - the global tracker will be used to determine whether a procedure has been deleted<a name="line.1187"></a>
-<span class="sourceLineNo">1188</span>    // - other trackers will be used to determine whether a procedure has been updated, as a deleted<a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>    // procedure can always be detected by checking the global tracker, we can save the deleted<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span>    // checks when applying other trackers<a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>    holdingCleanupTracker.resetTo(logs.getFirst().getTracker(), true);<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>    holdingCleanupTracker.setDeletedIfDeletedByThem(storeTracker);<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>    // the logs is a linked list, so avoid calling get(index) on it.<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>    Iterator&lt;ProcedureWALFile&gt; iter = logs.iterator();<a name="line.1194"></a>
-<span class="sourceLineNo">1195</span>    // skip the tracker for the first file when creating the iterator.<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>    iter.next();<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span>    ProcedureStoreTracker tracker = iter.next().getTracker();<a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>    // testing iter.hasNext after calling iter.next to skip applying the tracker for last file,<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>    // which is just the storeTracker above.<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span>    while (iter.hasNext()) {<a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>      holdingCleanupTracker.setDeletedIfModifiedInBoth(tracker);<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>      if (holdingCleanupTracker.isEmpty()) {<a name="line.1202"></a>
-<span class="sourceLineNo">1203</span>        break;<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>      }<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>      tracker = iter.next().getTracker();<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>    }<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>  }<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span><a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>  /**<a name="line.1209"></a>
-<span class="sourceLineNo">1210</span>   * Remove all logs with logId &lt;= {@code lastLogId}.<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span>   */<a name="line.1211"></a>
-<span class="sourceLineNo">1212</span>  private void removeAllLogs(long lastLogId, String why) {<a name="line.1212"></a>
-<span class="sourceLineNo">1213</span>    if (logs.size() &lt;= 1) {<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span>      return;<a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>    }<a name="line.1215"></a>
+<span class="sourceLineNo">1111</span>    storeTracker.resetModified();<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>    stream = newStream;<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>    flushLogId = logId;<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>    totalSynced.set(0);<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>    long rollTs = EnvironmentEdgeManager.currentTime();<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>    lastRollTs.set(rollTs);<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>    logs.add(new ProcedureWALFile(fs, newLogFile, header, startPos, rollTs));<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span><a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>    // if it's the first next WAL being added, build the holding cleanup tracker<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>    if (logs.size() == 2) {<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>      buildHoldingCleanupTracker();<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>    } else if (logs.size() &gt; walCountWarnThreshold) {<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>      LOG.warn("procedure WALs count={} above the warning threshold {}. check running procedures" +<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span>        " to see if something is stuck.", logs.size(), walCountWarnThreshold);<a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>      // This is just like what we have done at RS side when there are too many wal files. For RS,<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span>      // if there are too many wal files, we will find out the wal entries in the oldest file, and<a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>      // tell the upper layer to flush these regions so the wal entries will be useless and then we<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>      // can delete the wal file. For WALProcedureStore, the assumption is that, if all the<a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>      // procedures recorded in a proc wal file are modified or deleted in a new proc wal file, then<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>      // we are safe to delete it. So here if there are too many proc wal files, we will find out<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>      // the procedure ids in the oldest file, which are neither modified nor deleted in newer proc<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>      // wal files, and tell upper layer to update the state of these procedures to the newest proc<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span>      // wal file(by calling ProcedureStore.update), then we are safe to delete the oldest proc wal<a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>      // file.<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span>      sendForceUpdateSignal(holdingCleanupTracker.getAllActiveProcIds());<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span>    }<a name="line.1136"></a>
+<span class="sourceLineNo">1137</span><a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>    LOG.info("Rolled new Procedure Store WAL, id={}", logId);<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>    return true;<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>  }<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span><a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>  private void closeCurrentLogStream(boolean abort) {<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>    if (stream == null || logs.isEmpty()) {<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      return;<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>    }<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span><a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>    try {<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>      ProcedureWALFile log = logs.getLast();<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>      // If the loading flag is true, it usually means that we fail when loading procedures, so we<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>      // should not persist the store tracker, as its state may not be correct.<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>      if (!loading.get()) {<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>        log.setProcIds(storeTracker.getModifiedMinProcId(), storeTracker.getModifiedMaxProcId());<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>        log.updateLocalTracker(storeTracker);<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>        if (!abort) {<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>          long trailerSize = ProcedureWALFormat.writeTrailer(stream, storeTracker);<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>          log.addToSize(trailerSize);<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>        }<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      }<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>    } catch (IOException | FSError e) {<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>      LOG.warn("Unable to write the trailer", e);<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span>    }<a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>    try {<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>      stream.close();<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>    } catch (IOException | FSError e) {<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>      LOG.error("Unable to close the stream", e);<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span>    }<a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>    stream = null;<a name="line.1167"></a>
+<span class="sourceLineNo">1168</span>  }<a name="line.1168"></a>
+<span class="sourceLineNo">1169</span><a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>  // ==========================================================================<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>  //  Log Files cleaner helpers<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>  // ==========================================================================<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>  private void removeInactiveLogs() throws IOException {<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>    // We keep track of which procedures are holding the oldest WAL in 'holdingCleanupTracker'.<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>    // once there is nothing olding the oldest WAL we can remove it.<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>    while (logs.size() &gt; 1 &amp;&amp; holdingCleanupTracker.isEmpty()) {<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span>      LOG.info("Remove the oldest log {}", logs.getFirst());<a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>      removeLogFile(logs.getFirst(), walArchiveDir);<a name="line.1178"></a>
+<span class="sourceLineNo">1179</span>      buildHoldingCleanupTracker();<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>    }<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span><a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>    // TODO: In case we are holding up a lot of logs for long time we should<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>    // rewrite old procedures (in theory parent procs) to the new WAL.<a name="line.1183"></a>
+<span class="sourceLineNo">1184</span>  }<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span><a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>  private void buildHoldingCleanupTracker() {<a name="line.1186"></a>
+<span class="sourceLineNo">1187</span>    if (logs.size() &lt;= 1) {<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>      // we only have one wal, so nothing to do<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>      holdingCleanupTracker.reset();<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span>      return;<a name="line.1190"></a>
+<span class="sourceLineNo">1191</span>    }<a name="line.1191"></a>
+<span class="sourceLineNo">1192</span><a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>    // compute the holding tracker.<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>    // - the first WAL is used for the 'updates'<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>    // - the global tracker will be used to determine whether a procedure has been deleted<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>    // - other trackers will be used to determine whether a procedure has been updated, as a deleted<a name="line.1196"></a>
+<span class="sourceLineNo">1197</span>    // procedure can always be detected by checking the global tracker, we can save the deleted<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>    // checks when applying other trackers<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span>    holdingCleanupTracker.resetTo(logs.getFirst().getTracker(), true);<a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>    holdingCleanupTracker.setDeletedIfDeletedByThem(storeTracker);<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span>    // the logs is a linked list, so avoid calling get(index) on it.<a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>    Iterator&lt;ProcedureWALFile&gt; iter = logs.iterator();<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>    // skip the tracker for the first file when creating the iterator.<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span>    iter.next();<a name="line.1204"></a>
+<span class="sourceLineNo">1205</span>    ProcedureStoreTracker tracker = iter.next().getTracker();<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>    // testing iter.hasNext after calling iter.next to skip applying the tracker for last file,<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>    // which is just the storeTracker above.<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>    while (iter.hasNext()) {<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>      holdingCleanupTracker.setDeletedIfModifiedInBoth(tracker);<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>      if (holdingCleanupTracker.isEmpty()) {<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>        break;<a name="line.1211"></a>
+<span class="sourceLineNo">1212</span>      }<a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>      tracker = iter.next().getTracker();<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>    }<a name="line.1214"></a>
+<span class="sourceLineNo">1215</span>  }<a name="line.1215"></a>
 <span class="sourceLineNo">1216</span><a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>    LOG.info("Remove all state logs with ID less than {}, since {}", lastLogId, why);<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span><a name="line.1218"></a>
-<span class="sourceLineNo">1219</span>    boolean removed = false;<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>    while (logs.size() &gt; 1) {<a name="line.1220"></a>
-<span class="sourceLineNo">1221</span>      ProcedureWALFile log = logs.getFirst();<a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>      if (lastLogId &lt; log.getLogId()) {<a name="line.1222"></a>
-<span class="sourceLineNo">1223</span>        break;<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>      }<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span>      removeLogFile(log, walArchiveDir);<a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>      removed = true;<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>    }<a name="line.1227"></a>
-<span class="sourceLineNo">1228</span><a name="line.1228"></a>
-<span class="sourceLineNo">1229</span>    if (removed) {<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>      buildHoldingCleanupTracker();<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>    }<a name="line.1231"></a>
-<span class="sourceLineNo">1232</span>  }<a name="line.1232"></a>
-<span class="sourceLineNo">1233</span><a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>  private boolean removeLogFile(final ProcedureWALFile log, final Path walArchiveDir) {<a name="line.1234"></a>
-<span class="sourceLineNo">1235</span>    try {<a name="line.1235"></a>
-<span class="sourceLineNo">1236</span>      LOG.trace("Removing log={}", log);<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span>      log.removeFile(walArchiveDir);<a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>      logs.remove(log);<a name="line.1238"></a>
-<span class="sourceLineNo">1239</span>      LOG.debug("Removed log={}, activeLogs={}", log, logs);<a name="line.1239"></a>
-<span class="sourceLineNo">1240</span>      assert logs.size() &gt; 0 : "expected at least one log";<a name="line.1240"></a>
-<span class="sourceLineNo">1241</span>    } catch (IOException e) {<a name="line.1241"></a>
-<span class="sourceLineNo">1242</span>      LOG.error("Unable to remove log: " + log, e);<a name="line.1242"></a>
-<span class="sourceLineNo">1243</span>      return false;<a name="line.1243"></a>
-<span class="sourceLineNo">1244</span>    }<a name="line.1244"></a>
-<span class="sourceLineNo">1245</span>    return true;<a name="line.1245"></a>
-<span class="sourceLineNo">1246</span>  }<a name="line.1246"></a>
-<span class="sourceLineNo">1247</span><a name="line.1247"></a>
-<span class="sourceLineNo">1248</span>  // ==========================================================================<a name="line.1248"></a>
-<span class="sourceLineNo">1249</span>  //  FileSystem Log Files helpers<a name="line.1249"></a>
-<span class="sourceLineNo">1250</span>  // ==========================================================================<a name="line.1250"></a>
-<span class="sourceLineNo">1251</span>  public Path getWALDir() {<a name="line.1251"></a>
-<span class="sourceLineNo">1252</span>    return this.walDir;<a name="line.1252"></a>
-<span class="sourceLineNo">1253</span>  }<a name="line.1253"></a>
-<span class="sourceLineNo">1254</span><a name="line.1254"></a>
-<span class="sourceLineNo">1255</span>  Path getWalArchiveDir() {<a name="line.1255"></a>
-<span class="sourceLineNo">1256</span>    return this.walArchiveDir;<a name="line.1256"></a>
-<span class="sourceLineNo">1257</span>  }<a name="line.1257"></a>
-<span class="sourceLineNo">1258</span><a name="line.1258"></a>
-<span class="sourceLineNo">1259</span>  public FileSystem getFileSystem() {<a name="line.1259"></a>
-<span class="sourceLineNo">1260</span>    return this.fs;<a name="line.1260"></a>
+<span class="sourceLineNo">1217</span>  /**<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>   * Remove all logs with logId &lt;= {@code lastLogId}.<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>   */<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>  private void removeAllLogs(long lastLogId, String why) {<a name="line.1220"></a>
+<span class="sourceLineNo">1221</span>    if (logs.size() &lt;= 1) {<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span>      return;<a name="line.1222"></a>
+<span class="sourceLineNo">1223</span>    }<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span><a name="line.1224"></a>
+<span class="sourceLineNo">1225</span>    LOG.info("Remove all state logs with ID less than {}, since {}", lastLogId, why);<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span><a name="line.1226"></a>
+<span class="sourceLineNo">1227</span>    boolean removed = false;<a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>    while (logs.size() &gt; 1) {<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span>      ProcedureWALFile log = logs.getFirst();<a name="line.1229"></a>
+<span class="sourceLineNo">1230</span>      if (lastLogId &lt; log.getLogId()) {<a name="line.1230"></a>
+<span class="sourceLineNo">1231</span>        break;<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>      }<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span>      removeLogFile(log, walArchiveDir);<a name="line.1233"></a>
+<span class="sourceLineNo">1234</span>      removed = true;<a name="line.1234"></a>
+<span class="sourceLineNo">1235</span>    }<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span><a name="line.1236"></a>
+<span class="sourceLineNo">1237</span>    if (removed) {<a name="line.1237"></a>
+<span class="sourceLineNo">1238</span>      buildHoldingCleanupTracker();<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span>    }<a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>  }<a name="line.1240"></a>
+<span class="sourceLineNo">1241</span><a name="line.1241"></a>
+<span class="sourceLineNo">1242</span>  private boolean removeLogFile(final ProcedureWALFile log, final Path walArchiveDir) {<a name="line.1242"></a>
+<span class="sourceLineNo">1243</span>    try {<a name="line.1243"></a>
+<span class="sourceLineNo">1244</span>      LOG.trace("Removing log={}", log);<a name="line.1244"></a>
+<span class="sourceLineNo">1245</span>      log.removeFile(walArchiveDir);<a name="line.1245"></a>
+<span class="sourceLineNo">1246</span>      logs.remove(log);<a name="line.1246"></a>
+<span class="sourceLineNo">1247</span>      LOG.debug("Removed log={}, activeLogs={}", log, logs);<a name="line.1247"></a>
+<span class="sourceLineNo">1248</span>      assert logs.size() &gt; 0 : "expected at least one log";<a name="line.1248"></a>
+<span class="sourceLineNo">1249</span>    } catch (IOException e) {<a name="line.1249"></a>
+<span class="sourceLineNo">1250</span>      LOG.error("Unable to remove log: " + log, e);<a name="line.1250"></a>
+<span class="sourceLineNo">1251</span>      return false;<a name="line.1251"></a>
+<span class="sourceLineNo">1252</span>    }<a name="line.1252"></a>
+<span class="sourceLineNo">1253</span>    return true;<a name="line.1253"></a>
+<span class="sourceLineNo">1254</span>  }<a name="line.1254"></a>
+<span class="sourceLineNo">1255</span><a name="line.1255"></a>
+<span class="sourceLineNo">1256</span>  // ==========================================================================<a name="line.1256"></a>
+<span class="sourceLineNo">1257</span>  //  FileSystem Log Files helpers<a name="line.1257"></a>
+<span class="sourceLineNo">1258</span>  // ==========================================================================<a name="line.1258"></a>
+<span class="sourceLineNo">1259</span>  public Path getWALDir() {<a name="line.1259"></a>
+<span class="sourceLineNo">1260</span>    return this.walDir;<a name="line.1260"></a>
 <span class="sourceLineNo">1261</span>  }<a name="line.1261"></a>
 <span class="sourceLineNo">1262</span><a name="line.1262"></a>
-<span class="sourceLineNo">1263</span>  protected Path getLogFilePath(final long logId) throws IOException {<a name="line.1263"></a>
-<span class="sourceLineNo">1264</span>    return new Path(walDir, String.format(LOG_PREFIX + "%020d.log", logId));<a name="line.1264"></a>
+<span class="sourceLineNo">1263</span>  Path getWalArchiveDir() {<a name="line.1263"></a>
+<span class="sourceLineNo">1264</span>    return this.walArchiveDir;<a name="line.1264"></a>
 <span class="sourceLineNo">1265</span>  }<a name="line.1265"></a>
 <span class="sourceLineNo">1266</span><a name="line.1266"></a>
-<span class="sourceLineNo">1267</span>  private static long getLogIdFromName(final String name) {<a name="line.1267"></a>
-<span class="sourceLineNo">1268</span>    int end = name.lastIndexOf(".log");<a name="line.1268"></a>
-<span class="sourceLineNo">1269</span>    int start = name.lastIndexOf('-') + 1;<a name="line.1269"></a>
-<span class="sourceLineNo">1270</span>    return Long.parseLong(name.substring(start, end));<a name="line.1270"></a>
-<span class="sourceLineNo">1271</span>  }<a name="line.1271"></a>
-<span class="sourceLineNo">1272</span><a name="line.1272"></a>
-<span class="sourceLineNo">1273</span>  private static final PathFilter WALS_PATH_FILTER = new PathFilter() {<a name="line.1273"></a>
-<span class="sourceLineNo">1274</span>    @Override<a name="line.1274"></a>
-<span class="sourceLineNo">1275</span>    public boolean accept(Path path) {<a name="line.1275"></a>
-<span class="sourceLineNo">1276</span>      String name = path.getName();<a name="line.1276"></a>
-<span class="sourceLineNo">1277</span>      return name.startsWith(LOG_PREFIX) &amp;&amp; name.endsWith(".log");<a name="line.1277"></a>
-<span class="sourceLineNo">1278</span>    }<a name="line.1278"></a>
-<span class="sourceLineNo">1279</span>  };<a name="line.1279"></a>
+<span class="sourceLineNo">1267</span>  public FileSystem getFileSystem() {<a name="line.1267"></a>
+<span class="sourceLineNo">1268</span>    return this.fs;<a name="line.1268"></a>
+<span class="sourceLineNo">1269</span>  }<a name="line.1269"></a>
+<span class="sourceLineNo">1270</span><a name="line.1270"></a>
+<span class="sourceLineNo">1271</span>  protected Path getLogFilePath(final long logId) throws IOException {<a name="line.1271"></a>
+<span class="sourceLineNo">1272</span>    return new Path(walDir, String.format(LOG_PREFIX + "%020d.log", logId));<a name="line.1272"></a>
+<span class="sourceLineNo">1273</span>  }<a name="line.1273"></a>
+<span class="sourceLineNo">1274</span><a name="line.1274"></a>
+<span class="sourceLineNo">1275</span>  private static long getLogIdFromName(final String name) {<a name="line.1275"></a>
+<span class="sourceLineNo">1276</span>    int end = name.lastIndexOf(".log");<a name="line.1276"></a>
+<span class="sourceLineNo">1277</span>    int start = name.lastIndexOf('-') + 1;<a name="line.1277"></a>
+<span class="sourceLineNo">1278</span>    return Long.parseLong(name.substring(start, end));<a name="line.1278"></a>
+<span class="sourceLineNo">1279</span>  }<a name="line.1279"></a>
 <span class="sourceLineNo">1280</span><a name="line.1280"></a>
-<span class="sourceLineNo">1281</span>  private static final Comparator&lt;FileStatus&gt; FILE_STATUS_ID_COMPARATOR =<a name="line.1281"></a>
-<span class="sourceLineNo">1282</span>      new Comparator&lt;FileStatus&gt;() {<a name="line.1282"></a>
-<span class="sourceLineNo">1283</span>    @Override<a name="line.1283"></a>
-<span class="sourceLineNo">1284</span>    public int compare(FileStatus a, FileStatus b) {<a name="line.1284"></a>
-<span class="sourceLineNo">1285</span>      final long aId = getLogIdFromName(a.getPath().getName());<a name="line.1285"></a>
-<span class="sourceLineNo">1286</span>      final long bId = getLogIdFromName(b.getPath().getName());<a name="line.1286"></a>
-<span class="sourceLineNo">1287</span>      return Long.compare(aId, bId);<a name="line.1287"></a>
-<span class="sourceLineNo">1288</span>    }<a name="line.1288"></a>
-<span class="sourceLineNo">1289</span>  };<a name="line.1289"></a>
-<span class="sourceLineNo">1290</span><a name="line.1290"></a>
-<span class="sourceLineNo">1291</span>  private FileStatus[] getLogFiles() throws IOException {<a name="line.1291"></a>
-<span class="sourceLineNo">1292</span>    try {<a name="line.1292"></a>
-<span class="sourceLineNo">1293</span>      FileStatus[] files = fs.listStatus(walDir, WALS_PATH_FILTER);<a name="line.1293"></a>
-<span class="sourceLineNo">1294</span>      Arrays.sort(files, FILE_STATUS_ID_COMPARATOR);<a name="line.1294"></a>
-<span class="sourceLineNo">1295</span>      return files;<a name="line.1295"></a>
-<span class="sourceLineNo">1296</span>    } catch (FileNotFoundException e) {<a name="line.1296"></a>
-<span class="sourceLineNo">1297</span>      LOG.warn("Log directory not found: " + e.getMessage());<a name="line.1297"></a>
-<span class="sourceLineNo">1298</span>      return null;<a name="line.1298"></a>
-<span class="sourceLineNo">1299</span>    }<a name="line.1299"></a>
-<span class="sourceLineNo">1300</span>  }<a name="line.1300"></a>
-<span class="sourceLineNo">1301</span><a name="line.1301"></a>
-<span class="sourceLineNo">1302</span>  /**<a name="line.1302"></a>
-<span class="sourceLineNo">1303</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1303"></a>
-<span class="sourceLineNo">1304</span>   * the file set by log id.<a name="line.1304"></a>
-<span class="sourceLineNo">1305</span>   * @return Max-LogID of the specified log file set<a name="line.1305"></a>
-<span class="sourceLineNo">1306</span>   */<a name="line.1306"></a>
-<span class="sourceLineNo">1307</span>  private static long getMaxLogId(FileStatus[] logFiles) {<a name="line.1307"></a>
-<span class="sourceLineNo">1308</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1308"></a>
-<span class="sourceLineNo">1309</span>      return 0L;<a name="line.1309"></a>
-<span class="sourceLineNo">1310</span>    }<a name="line.1310"></a>
-<span class="sourceLineNo">1311</span>    return getLogIdFromName(logFiles[logFiles.length - 1].getPath().getName());<a name="line.1311"></a>
-<span class="sourceLineNo">1312</span>  }<a name="line.1312"></a>
-<span class="sourceLineNo">1313</span><a name="line.1313"></a>
-<span class="sourceLineNo">1314</span>  /**<a name="line.1314"></a>
-<span class="sourceLineNo">1315</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1315"></a>
-<span class="sourceLineNo">1316</span>   * the file set by log id.<a name="line.1316"></a>
-<span class="sourceLineNo">1317</span>   * @return Max-LogID of the specified log file set<a name="line.1317"></a>
-<span class="sourceLineNo">1318</span>   */<a name="line.1318"></a>
-<span class="sourceLineNo">1319</span>  private long initOldLogs(FileStatus[] logFiles) throws IOException {<a name="line.1319"></a>
-<span class="sourceLineNo">1320</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1320"></a>
-<span class="sourceLineNo">1321</span>      return 0L;<a name="line.1321"></a>
-<span class="sourceLineNo">1322</span>    }<a name="line.1322"></a>
-<span class="sourceLineNo">1323</span>    long maxLogId = 0;<a name="line.1323"></a>
-<span class="sourceLineNo">1324</span>    for (int i = 0; i &lt; logFiles.length; ++i) {<a name="line.1324"></a>
-<span class="sourceLineNo">1325</span>      final Path logPath = logFiles[i].getPath();<a name="line.1325"></a>
-<span class="sourceLineNo">1326</span>      leaseRecovery.recoverFileLease(fs, logPath);<a name="line.1326"></a>
-<span class="sourceLineNo">1327</span>      if (!isRunning()) {<a name="line.1327"></a>
-<span class="sourceLineNo">1328</span>        throw new IOException("wal aborting");<a name="line.1328"></a>
-<span class="sourceLineNo">1329</span>      }<a name="line.1329"></a>
-<span class="sourceLineNo">1330</span><a name="line.1330"></a>
-<span class="sourceLineNo">1331</span>      maxLogId = Math.max(maxLogId, getLogIdFromName(logPath.getName()));<a name="line.1331"></a>
-<span class="sourceLineNo">1332</span>      ProcedureWALFile log = initOldLog(logFiles[i], this.walArchiveDir);<a name="line.1332"></a>
-<span class="sourceLineNo">1333</span>      if (log != null) {<a name="line.1333"></a>
-<span class="sourceLineNo">1334</span>        this.logs.add(log);<a name="line.1334"></a>
-<span class="sourceLineNo">1335</span>      }<a name="line.1335"></a>
-<span class="sourceLineNo">1336</span>    }<a name="line.1336"></a>
-<span class="sourceLineNo">1337</span>    initTrackerFromOldLogs();<a name="line.1337"></a>
-<span class="sourceLineNo">1338</span>    return maxLogId;<a name="line.1338"></a>
-<span class="sourceLineNo">1339</span>  }<a name="line.1339"></a>
-<span class="sourceLineNo">1340</span><a name="line.1340"></a>
-<span class="sourceLineNo">1341</span>  /**<a name="line.1341"></a>
-<span class="sourceLineNo">1342</span>   * If last log's tracker is not null, use it as {@link #storeTracker}. Otherwise, set storeTracker<a name="line.1342"></a>
-<span class="sourceLineNo">1343</span>   * as partial, and let {@link ProcedureWALFormatReader} rebuild it using entries in the log.<a name="line.1343"></a>
-<span class="sourceLineNo">1344</span>   */<a name="line.1344"></a>
-<span class="sourceLineNo">1345</span>  private void initTrackerFromOldLogs() {<a name="line.1345"></a>
-<span class="sourceLineNo">1346</span>    if (logs.isEmpty() || !isRunning()) {<a name="line.1346"></a>
-<span class="sourceLineNo">1347</span>      return;<a name="line.1347"></a>
-<span class="sourceLineNo">1348</span>    }<a name="line.1348"></a>
-<span class="sourceLineNo">1349</span>    ProcedureWALFile log = logs.getLast();<a name="line.1349"></a>
-<span class="sourceLineNo">1350</span>    if (!log.getTracker().isPartial()) {<a name="line.1350"></a>
-<span class="sourceLineNo">1351</span>      storeTracker.resetTo(log.getTracker());<a name="line.1351"></a>
-<span class="sourceLineNo">1352</span>    } else {<a name="line.1352"></a>
-<span class="sourceLineNo">1353</span>      storeTracker.reset();<a name="line.1353"></a>
-<span class="sourceLineNo">1354</span>      storeTracker.setPartialFlag(true);<a name="line.1354"></a>
-<span class="sourceLineNo">1355</span>    }<a name="line.1355"></a>
-<span class="sourceLineNo">1356</span>  }<a name="line.1356"></a>
-<span class="sourceLineNo">1357</span><a name="line.1357"></a>
-<span class="sourceLineNo">1358</span>  /**<a name="line.1358"></a>
-<span class="sourceLineNo">1359</span>   * Loads given log file and it's tracker.<a name="line.1359"></a>
-<span class="sourceLineNo">1360</span>   */<a name="line.1360"></a>
-<span class="sourceLineNo">1361</span>  private ProcedureWALFile initOldLog(final FileStatus logFile, final Path walArchiveDir)<a name="line.1361"></a>
-<span class="sourceLineNo">1362</span>      throws IOException {<a name="line.1362"></a>
-<span class="sourceLineNo">1363</span>    final ProcedureWALFile log = new ProcedureWALFile(fs, logFile);<a name="line.1363"></a>
-<span class="sourceLineNo">1364</span>    if (logFile.getLen() == 0) {<a name="line.1364"></a>
-<span class="sourceLineNo">1365</span>      LOG.warn("Remove uninitialized log: {}", logFile);<a name="line.1365"></a>
-<span class="sourceLineNo">1366</span>      log.removeFile(walArchiveDir);<a name="line.1366"></a>
-<span class="sourceLineNo">1367</span>      return null;<a name="line.1367"></a>
-<span class="sourceLineNo">1368</span>    }<a name="line.1368"></a>
-<span class="sourceLineNo">1369</span>    LOG.debug("Opening Pv2 {}", logFile);<a name="line.1369"></a>
-<span class="sourceLineNo">1370</span>    try {<a name="line.1370"></a>
-<span class="sourceLineNo">1371</span>      log.open();<a name="line.1371"></a>
-<span class="sourceLineNo">1372</span>    } catch (ProcedureWALFormat.InvalidWALDataException e) {<a name="line.1372"></a>
-<span class="sourceLineNo">1373</span>      LOG.warn("Remove uninitialized log: {}", logFile, e);<a name="line.1373"></a>
+<span class="sourceLineNo">1281</span>  private static final PathFilter WALS_PATH_FILTER = new PathFilter() {<a name="line.1281"></a>
+<span class="sourceLineNo">1282</span>    @Override<a name="line.1282"></a>
+<span class="sourceLineNo">1283</span>    public boolean accept(Path path) {<a name="line.1283"></a>
+<span class="sourceLineNo">1284</span>      String name = path.getName();<a name="line.1284"></a>
+<span class="sourceLineNo">1285</span>      return name.startsWith(LOG_PREFIX) &amp;&amp; name.endsWith(".log");<a name="line.1285"></a>
+<span class="sourceLineNo">1286</span>    }<a name="line.1286"></a>
+<span class="sourceLineNo">1287</span>  };<a name="line.1287"></a>
+<span class="sourceLineNo">1288</span><a name="line.1288"></a>
+<span class="sourceLineNo">1289</span>  private static final Comparator&lt;FileStatus&gt; FILE_STATUS_ID_COMPARATOR =<a name="line.1289"></a>
+<span class="sourceLineNo">1290</span>      new Comparator&lt;FileStatus&gt;() {<a name="line.1290"></a>
+<span class="sourceLineNo">1291</span>    @Override<a name="line.1291"></a>
+<span class="sourceLineNo">1292</span>    public int compare(FileStatus a, FileStatus b) {<a name="line.1292"></a>
+<span class="sourceLineNo">1293</span>      final long aId = getLogIdFromName(a.getPath().getName());<a name="line.1293"></a>
+<span class="sourceLineNo">1294</span>      final long bId = getLogIdFromName(b.getPath().getName());<a name="line.1294"></a>
+<span class="sourceLineNo">1295</span>      return Long.compare(aId, bId);<a name="line.1295"></a>
+<span class="sourceLineNo">1296</span>    }<a name="line.1296"></a>
+<span class="sourceLineNo">1297</span>  };<a name="line.1297"></a>
+<span class="sourceLineNo">1298</span><a name="line.1298"></a>
+<span class="sourceLineNo">1299</span>  private FileStatus[] getLogFiles() throws IOException {<a name="line.1299"></a>
+<span class="sourceLineNo">1300</span>    try {<a name="line.1300"></a>
+<span class="sourceLineNo">1301</span>      FileStatus[] files = fs.listStatus(walDir, WALS_PATH_FILTER);<a name="line.1301"></a>
+<span class="sourceLineNo">1302</span>      Arrays.sort(files, FILE_STATUS_ID_COMPARATOR);<a name="line.1302"></a>
+<span class="sourceLineNo">1303</span>      return files;<a name="line.1303"></a>
+<span class="sourceLineNo">1304</span>    } catch (FileNotFoundException e) {<a name="line.1304"></a>
+<span class="sourceLineNo">1305</span>      LOG.warn("Log directory not found: " + e.getMessage());<a name="line.1305"></a>
+<span class="sourceLineNo">1306</span>      return null;<a name="line.1306"></a>
+<span class="sourceLineNo">1307</span>    }<a name="line.1307"></a>
+<span class="sourceLineNo">1308</span>  }<a name="line.1308"></a>
+<span class="sourceLineNo">1309</span><a name="line.1309"></a>
+<span class="sourceLineNo">1310</span>  /**<a name="line.1310"></a>
+<span class="sourceLineNo">1311</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1311"></a>
+<span class="sourceLineNo">1312</span>   * the file set by log id.<a name="line.1312"></a>
+<span class="sourceLineNo">1313</span>   * @return Max-LogID of the specified log file set<a name="line.1313"></a>
+<span class="sourceLineNo">1314</span>   */<a name="line.1314"></a>
+<span class="sourceLineNo">1315</span>  private static long getMaxLogId(FileStatus[] logFiles) {<a name="line.1315"></a>
+<span class="sourceLineNo">1316</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1316"></a>
+<span class="sourceLineNo">1317</span>      return 0L;<a name="line.1317"></a>
+<span class="sourceLineNo">1318</span>    }<a name="line.1318"></a>
+<span class="sourceLineNo">1319</span>    return getLogIdFromName(logFiles[logFiles.length - 1].getPath().getName());<a name="line.1319"></a>
+<span class="sourceLineNo">1320</span>  }<a name="line.1320"></a>
+<span class="sourceLineNo">1321</span><a name="line.1321"></a>
+<span class="sourceLineNo">1322</span>  /**<a name="line.1322"></a>
+<span class="sourceLineNo">1323</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1323"></a>
+<span class="sourceLineNo">1324</span>   * the file set by log id.<a name="line.1324"></a>
+<span class="sourceLineNo">1325</span>   * @return Max-LogID of the specified log file set<a name="line.1325"></a>
+<span class="sourceLineNo">1326</span>   */<a name="line.1326"></a>
+<span class="sourceLineNo">1327</span>  private long initOldLogs(FileStatus[] logFiles) throws IOException {<a name="line.1327"></a>
+<span class="sourceLineNo">1328</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1328"></a>
+<span class="sourceLineNo">1329</span>      return 0L;<a name="line.1329"></a>
+<span class="sourceLineNo">1330</span>    }<a name="line.1330"></a>
+<span class="sourceLineNo">1331</span>    long maxLogId = 0;<a name="line.1331"></a>
+<span class="sourceLineNo">1332</span>    for (int i = 0; i &lt; logFiles.length; ++i) {<a name="line.1332"></a>
+<span class="sourceLineNo">1333</span>      final Path logPath = logFiles[i].getPath();<a name="line.1333"></a>
+<span class="sourceLineNo">1334</span>      leaseRecovery.recoverFileLease(fs, logPath);<a name="line.1334"></a>
+<span class="sourceLineNo">1335</span>      if (!isRunning()) {<a name="line.1335"></a>
+<span class="sourceLineNo">1336</span>        throw new IOException("wal aborting");<a name="line.1336"></a>
+<span class="sourceLineNo">1337</span>      }<a name="line.1337"></a>
+<span class="sourceLineNo">1338</span><a name="line.1338"></a>
+<span class="sourceLineNo">1339</span>      maxLogId = Math.max(maxLogId, getLogIdFromName(logPath.getName()));<a name="line.1339"></a>
+<span class="sourceLineNo">1340</span>      ProcedureWALFile log = initOldLog(logFiles[i], this.walArchiveDir);<a name="line.1340"></a>
+<span class="sourceLineNo">1341</span>      if (log != null) {<a name="line.1341"></a>
+<span class="sourceLineNo">1342</span>        this.logs.add(log);<a name="line.1342"></a>
+<span class="sourceLineNo">1343</span>      }<a name="line.1343"></a>
+<span class="sourceLineNo">1344</span>    }<a name="line.1344"></a>
+<span class="sourceLineNo">1345</span>    initTrackerFromOldLogs();<a name="line.1345"></a>
+<span class="sourceLineNo">1346</span>    return maxLogId;<a name="line.1346"></a>
+<span class="sourceLineNo">1347</span>  }<a name="line.1347"></a>
+<span class="sourceLineNo">1348</span><a name="line.1348"></a>
+<span class="sourceLineNo">1349</span>  /**<a name="line.1349"></a>
+<span class="sourceLineNo">1350</span>   * If last log's tracker is not null, use it as {@link #storeTracker}. Otherwise, set storeTracker<a name="line.1350"></a>
+<span class="sourceLineNo">1351</span>   * as partial, and let {@link ProcedureWALFormatReader} rebuild it using entries in the log.<a name="line.1351"></a>
+<span class="sourceLineNo">1352</span>   */<a name="line.1352"></a>
+<span class="sourceLineNo">1353</span>  private void initTrackerFromOldLogs() {<a name="line.1353"></a>
+<span class="sourceLineNo">1354</span>    if (logs.isEmpty() || !isRunning()) {<a name="line.1354"></a>
+<span class="sourceLineNo">1355</span>      return;<a name="line.1355"></a>
+<span class="sourceLineNo">1356</span>    }<a name="line.1356"></a>
+<span class="sourceLineNo">1357</span>    ProcedureWALFile log = logs.getLast();<a name="line.1357"></a>
+<span class="sourceLineNo">1358</span>    if (!log.getTracker().isPartial()) {<a name="line.1358"></a>
+<span class="sourceLineNo">1359</span>      storeTracker.resetTo(log.getTracker());<a name="line.1359"></a>
+<span class="sourceLineNo">1360</span>    } else {<a name="line.1360"></a>
+<span class="sourceLineNo">1361</span>      storeTracker.reset();<a name="line.1361"></a>
+<span class="sourceLineNo">1362</span>      storeTracker.setPartialFlag(true);<a name="line.1362"></a>
+<span class="sourceLineNo">1363</span>    }<a name="line.1363"></a>
+<span class="sourceLineNo">1364</span>  }<a name="line.1364"></a>
+<span class="sourceLineNo">1365</span><a name="line.1365"></a>
+<span class="sourceLineNo">1366</span>  /**<a name="line.1366"></a>
+<span class="sourceLineNo">1367</span>   * Loads given log file and it's tracker.<a name="line.1367"></a>
+<span class="sourceLineNo">1368</span>   */<a name="line.1368"></a>
+<span class="sourceLineNo">1369</span>  private ProcedureWALFile initOldLog(final FileStatus logFile, final Path walArchiveDir)<a name="line.1369"></a>
+<span class="sourceLineNo">1370</span>      throws IOException {<a name="line.1370"></a>
+<span class="sourceLineNo">1371</span>    final ProcedureWALFile log = new ProcedureWALFile(fs, logFile);<a name="line.1371"></a>
+<span class="sourceLineNo">1372</span>    if (logFile.getLen() == 0) {<a name="line.1372"></a>
+<span class="sourceLineNo">1373</span>      LOG.warn("Remove uninitialized log: {}", logFile);<a name="line.1373"></a>
 <span class="sourceLineNo">1374</span>      log.removeFile(walArchiveDir);<a name="line.1374"></a>
 <span class="sourceLineNo">1375</span>      return null;<a name="line.1375"></a>
-<span class="sourceLineNo">1376</span>    } catch (IOException e) {<a name="line.1376"></a>
-<span class="sourceLineNo">1377</span>      String msg = "Unable to read state log: " + logFile;<a name="line.1377"></a>
-<span class="sourceLineNo">1378</span>      LOG.error(msg, e);<a name="line.1378"></a>
-<span class="sourceLineNo">1379</span>      throw new IOException(msg, e);<a name="line.1379"></a>
-<span class="sourceLineNo">1380</span>    }<a name="line.1380"></a>
-<span class="sourceLineNo">1381</span><a name="line.1381"></a>
-<span class="sourceLineNo">1382</span>    try {<a name="line.1382"></a>
-<span class="sourceLineNo">1383</span>      log.readTracker();<a name="line.1383"></a>
+<span class="sourceLineNo">1376</span>    }<a name="line.1376"></a>
+<span class="sourceLineNo">1377</span>    LOG.debug("Opening Pv2 {}", logFile);<a name="line.1377"></a>
+<span class="sourceLineNo">1378</span>    try {<a name="line.1378"></a>
+<span class="sourceLineNo">1379</span>      log.open();<a name="line.1379"></a>
+<span class="sourceLineNo">1380</span>    } catch (ProcedureWALFormat.InvalidWALDataException e) {<a name="line.1380"></a>
+<span class="sourceLineNo">1381</span>      LOG.warn("Remove uninitialized log: {}", logFile, e);<a name="line.1381"></a>
+<span class="sourceLineNo">1382</span>      log.removeFile(walArchiveDir);<a name="line.1382"></a>
+<span class="sourceLineNo">1383</span>      return null;<a name="line.1383"></a>
 <span class="sourceLineNo">1384</span>    } catch (IOException e) {<a name="line.1384"></a>
-<span class="sourceLineNo">1385</span>      log.getTracker().reset();<a name="line.1385"></a>
-<span class="sourceLineNo">1386</span>      log.getTracker().setPartialFlag(true);<a name="line.1386"></a>
-<span class="sourceLineNo">1387</span>      LOG.warn("Unable to read tracker for {}", log, e);<a name="line.1387"></a>
+<span class="sourceLineNo">1385</span>      String msg = "Unable to read state log: " + logFile;<a name="line.1385"></a>
+<span class="sourceLineNo">1386</span>      LOG.error(msg, e);<a name="line.1386"></a>
+<span class="sourceLineNo">1387</span>      throw new IOException(msg, e);<a name="line.1387"></a>
 <span class="sourceLineNo">1388</span>    }<a name="line.1388"></a>
 <span class="sourceLineNo">1389</span><a name="line.1389"></a>
-<span class="sourceLineNo">1390</span>    log.close();<a name="line.1390"></a>
-<span class="sourceLineNo">1391</span>    return log;<a name="line.1391"></a>
-<span class="sourceLineNo">1392</span>  }<a name="line.1392"></a>
-<span class="sourceLineNo">1393</span><a name="line.1393"></a>
-<span class="sourceLineNo">1394</span>  /**<a name="line.1394"></a>
-<span class="sourceLineNo">1395</span>   * Parses a directory of WALs building up ProcedureState.<a name="line.1395"></a>
-<span class="sourceLineNo">1396</span>   * For testing parse and profiling.<a name="line.1396"></a>
-<span class="sourceLineNo">1397</span>   * @param args Include pointer to directory of WAL files for a store instance to parse &amp; load.<a name="line.1397"></a>
-<span class="sourceLineNo">1398</span>   */<a name="line.1398"></a>
-<span class="sourceLineNo">1399</span>  public static void main(String [] args) throws IOException {<a name="line.1399"></a>
-<span class="sourceLineNo">1400</span>    Configuration conf = HBaseConfiguration.create();<a name="line.1400"></a>
-<span class="sourceLineNo">1401</span>    if (args == null || args.length != 1) {<a name="line.1401"></a>
-<span class="sourceLineNo">1402</span>      System.out.println("ERROR: Empty arguments list; pass path to MASTERPROCWALS_DIR.");<a name="line.1402"></a>
-<span class="sourceLineNo">1403</span>      System.out.println("Usage: WALProcedureStore MASTERPROCWALS_DIR");<a name="line.1403"></a>
-<span class="sourceLineNo">1404</span>      System.exit(-1);<a name="line.1404"></a>
-<span class="sourceLineNo">1405</span>    }<a name="line.1405"></a>
-<span class="sourceLineNo">1406</span>    WALProcedureStore store = new WALProcedureStore(conf, new Path(args[0]), null,<a name="line.1406"></a>
-<span class="sourceLineNo">1407</span>      new LeaseRecovery() {<a name="line.1407"></a>
-<span class="sourceLineNo">1408</span>        @Override<a name="line.1408"></a>
-<span class="sourceLineNo">1409</span>        public void recoverFileLease(FileSystem fs, Path path) throws IOException {<a name="line.1409"></a>
-<span class="sourceLineNo">1410</span>          // no-op<a name="line.1410"></a>
-<span class="sourceLineNo">1411</span>        }<a name="line.1411"></a>
-<span class="sourceLineNo">1412</span>      });<a name="line.1412"></a>
-<span class="sourceLineNo">1413</span>    try {<a name="line.1413"></a>
-<span class="sourceLineNo">1414</span>      store.start(16);<a name="line.1414"></a>
-<span class="sourceLineNo">1415</span>      ProcedureExecutor&lt;?&gt; pe = new ProcedureExecutor&lt;&gt;(conf, new Object()/*Pass anything*/, store);<a name="line.1415"></a>
-<span class="sourceLineNo">1416</span>      pe.init(1, true);<a name="line.1416"></a>
-<span class="sourceLineNo">1417</span>    } finally {<a name="line.1417"></a>
-<span class="sourceLineNo">1418</span>      store.stop(true);<a name="line.1418"></a>
-<span class="sourceLineNo">1419</span>    }<a name="line.1419"></a>
-<span class="sourceLineNo">1420</span>  }<a name="line.1420"></a>
-<span class="sourceLineNo">1421</span>}<a name="line.1421"></a>
+<span class="sourceLineNo">1390</span>    try {<a name="line.1390"></a>
+<span class="sourceLineNo">1391</span>      log.readTracker();<a name="line.1391"></a>
+<span class="sourceLineNo">1392</span>    } catch (IOException e) {<a name="line.1392"></a>
+<span class="sourceLineNo">1393</span>      log.getTracker().reset();<a name="line.1393"></a>
+<span class="sourceLineNo">1394</span>      log.getTracker().setPartialFlag(true);<a name="line.1394"></a>
+<span class="sourceLineNo">1395</span>      LOG.warn("Unable to read tracker for {}", log, e);<a name="line.1395"></a>
+<span class="sourceLineNo">1396</span>    }<a name="line.1396"></a>
+<span class="sourceLineNo">1397</span><a name="line.1397"></a>
+<span class="sourceLineNo">1398</span>    log.close();<a name="line.1398"></a>
+<span class="sourceLineNo">1399</span>    return log;<a name="line.1399"></a>
+<span class="sourceLineNo">1400</span>  }<a name="line.1400"></a>
+<span class="sourceLineNo">1401</span><a name="line.1401"></a>
+<span class="sourceLineNo">1402</span>  /**<a name="line.1402"></a>
+<span class="sourceLineNo">1403</span>   * Parses a directory of WALs building up ProcedureState.<a name="line.1403"></a>
+<span class="sourceLineNo">1404</span>   * For testing parse and profiling.<a name="line.1404"></a>
+<span class="sourceLineNo">1405</span>   * @param args Include pointer to directory of WAL files for a store instance to parse &amp; load.<a name="line.1405"></a>
+<span class="sourceLineNo">1406</span>   */<a name="line.1406"></a>
+<span class="sourceLineNo">1407</span>  public static void main(String [] args) throws IOException {<a name="line.1407"></a>
+<span class="sourceLineNo">1408</span>    Configuration conf = HBaseConfiguration.create();<a name="line.1408"></a>
+<span class="sourceLineNo">1409</span>    if (args == null || args.length != 1) {<a name="line.1409"></a>
+<span class="sourceLineNo">1410</span>      System.out.println("ERROR: Empty arguments list; pass path to MASTERPROCWALS_DIR.");<a name="line.1410"></a>
+<span class="sourceLineNo">1411</span>      System.out.println("Usage: WALProcedureStore MASTERPROCWALS_DIR");<a name="line.1411"></a>
+<span class="sourceLineNo">1412</span>      System.exit(-1);<a name="line.1412"></a>
+<span class="sourceLineNo">1413</span>    }<a name="line.1413"></a>
+<span class="sourceLineNo">1414</span>    WALProcedureStore store = new WALProcedureStore(conf, new Path(args[0]), null,<a name="line.1414"></a>
+<span class="sourceLineNo">1415</span>      new LeaseRecovery() {<a name="line.1415"></a>
+<span class="sourceLineNo">1416</span>        @Override<a name="line.1416"></a>
+<span class="sourceLineNo">1417</span>        public void recoverFileLease(FileSystem fs, Path path) throws IOException {<a name="line.1417"></a>
+<span class="sourceLineNo">1418</span>          // no-op<a name="line.1418"></a>
+<span class="sourceLineNo">1419</span>        }<a name="line.1419"></a>
+<span class="sourceLineNo">1420</span>      });<a name="line.1420"></a>
+<span class="sourceLineNo">1421</span>    try {<a name="line.1421"></a>
+<span class="sourceLineNo">1422</span>      store.start(16);<a name="line.1422"></a>
+<span class="sourceLineNo">1423</span>      ProcedureExecutor&lt;?&gt; pe = new ProcedureExecutor&lt;&gt;(conf, new Object()/*Pass anything*/, store);<a name="line.1423"></a>
+<span class="sourceLineNo">1424</span>      pe.init(1, true);<a name="line.1424"></a>
+<span class="sourceLineNo">1425</span>    } finally {<a name="line.1425"></a>
+<span class="sourceLineNo">1426</span>      store.stop(true);<a name="line.1426"></a>
+<span class="sourceLineNo">1427</span>    }<a name="line.1427"></a>
+<span class="sourceLineNo">1428</span>  }<a name="line.1428"></a>
+<span class="sourceLineNo">1429</span>}<a name="line.1429"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html b/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html
index aad88b8..aa5d974 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html
@@ -43,1390 +43,1398 @@
 <span class="sourceLineNo">035</span>import java.util.concurrent.locks.ReentrantLock;<a name="line.35"></a>
 <span class="sourceLineNo">036</span>import org.apache.hadoop.conf.Configuration;<a name="line.36"></a>
 <span class="sourceLineNo">037</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.FSError;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.FileAlreadyExistsException;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.FileStatus;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.fs.FileSystem;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.fs.Path;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.fs.PathFilter;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.HConstants;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.log.HBaseMarkers;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.procedure2.Procedure;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.procedure2.ProcedureExecutor;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.procedure2.store.LeaseRecovery;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStore;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.procedure2.util.ByteSlot;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.procedure2.util.StringUtils;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.ipc.RemoteException;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.slf4j.Logger;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.slf4j.LoggerFactory;<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue;<a name="line.63"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.FSError;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.FileAlreadyExistsException;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.fs.FileStatus;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.apache.hadoop.fs.FileSystem;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.apache.hadoop.fs.Path;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.PathFilter;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.HConstants;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.log.HBaseMarkers;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.procedure2.Procedure;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.procedure2.ProcedureExecutor;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.procedure2.store.LeaseRecovery;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStore;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.procedure2.util.ByteSlot;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.procedure2.util.StringUtils;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hdfs.DistributedFileSystem;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.ipc.RemoteException;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.slf4j.Logger;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.slf4j.LoggerFactory;<a name="line.63"></a>
 <span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureWALHeader;<a name="line.65"></a>
+<span class="sourceLineNo">065</span>import org.apache.hbase.thirdparty.org.apache.commons.collections4.queue.CircularFifoQueue;<a name="line.65"></a>
 <span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>/**<a name="line.67"></a>
-<span class="sourceLineNo">068</span> * WAL implementation of the ProcedureStore.<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;p/&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * When starting, the upper layer will first call {@link #start(int)}, then {@link #recoverLease()},<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * then {@link #load(ProcedureLoader)}.<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * &lt;p/&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * In {@link #recoverLease()}, we will get the lease by closing all the existing wal files(by<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * calling recoverFileLease), and creating a new wal writer. And we will also get the list of all<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * the old wal files.<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;p/&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * FIXME: notice that the current recover lease implementation is problematic, it can not deal with<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * the races if there are two master both wants to acquire the lease...<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;p/&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * In {@link #load(ProcedureLoader)} method, we will load all the active procedures. See the<a name="line.80"></a>
-<span class="sourceLineNo">081</span> * comments of this method for more details.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> * &lt;p/&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> * The actual logging way is a bit like our FileSystem based WAL implementation as RS side. There is<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * a {@link #slots}, which is more like the ring buffer, and in the insert, update and delete<a name="line.84"></a>
-<span class="sourceLineNo">085</span> * methods we will put thing into the {@link #slots} and wait. And there is a background sync<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * thread(see the {@link #syncLoop()} method) which get data from the {@link #slots} and write them<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * to the FileSystem, and notify the caller that we have finished.<a name="line.87"></a>
-<span class="sourceLineNo">088</span> * &lt;p/&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> * TODO: try using disruptor to increase performance and simplify the logic?<a name="line.89"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureWALHeader;<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>/**<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * WAL implementation of the ProcedureStore.<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * &lt;p/&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * When starting, the upper layer will first call {@link #start(int)}, then {@link #recoverLease()},<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * then {@link #load(ProcedureLoader)}.<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p/&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * In {@link #recoverLease()}, we will get the lease by closing all the existing wal files(by<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * calling recoverFileLease), and creating a new wal writer. And we will also get the list of all<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * the old wal files.<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;p/&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * FIXME: notice that the current recover lease implementation is problematic, it can not deal with<a name="line.79"></a>
+<span class="sourceLineNo">080</span> * the races if there are two master both wants to acquire the lease...<a name="line.80"></a>
+<span class="sourceLineNo">081</span> * &lt;p/&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> * In {@link #load(ProcedureLoader)} method, we will load all the active procedures. See the<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * comments of this method for more details.<a name="line.83"></a>
+<span class="sourceLineNo">084</span> * &lt;p/&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * The actual logging way is a bit like our FileSystem based WAL implementation as RS side. There is<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * a {@link #slots}, which is more like the ring buffer, and in the insert, update and delete<a name="line.86"></a>
+<span class="sourceLineNo">087</span> * methods we will put thing into the {@link #slots} and wait. And there is a background sync<a name="line.87"></a>
+<span class="sourceLineNo">088</span> * thread(see the {@link #syncLoop()} method) which get data from the {@link #slots} and write them<a name="line.88"></a>
+<span class="sourceLineNo">089</span> * to the FileSystem, and notify the caller that we have finished.<a name="line.89"></a>
 <span class="sourceLineNo">090</span> * &lt;p/&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> * The {@link #storeTracker} keeps track of the modified procedures in the newest wal file, which is<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * also the one being written currently. And the deleted bits in it are for all the procedures, not<a name="line.92"></a>
-<span class="sourceLineNo">093</span> * only the ones in the newest wal file. And when rolling a log, we will first store it in the<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * trailer of the current wal file, and then reset its modified bits, so that it can start to track<a name="line.94"></a>
-<span class="sourceLineNo">095</span> * the modified procedures for the new wal file.<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;p/&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * The {@link #holdingCleanupTracker} is used to test whether we are safe to delete the oldest wal<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * file. When there are log rolling and there are more than 1 wal files, we will make use of it. It<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * will first be initialized to the oldest file's tracker(which is stored in the trailer), using the<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * method {@link ProcedureStoreTracker#resetTo(ProcedureStoreTracker, boolean)}, and then merge it<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * with the tracker of every newer wal files, using the<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * {@link ProcedureStoreTracker#setDeletedIfModifiedInBoth(ProcedureStoreTracker)}.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> * If we find out<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * that all the modified procedures for the oldest wal file are modified or deleted in newer wal<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * files, then we can delete it. This is because that, every time we call<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@link ProcedureStore#insert(Procedure[])} or {@link ProcedureStore#update(Procedure)}, we will<a name="line.106"></a>
-<span class="sourceLineNo">107</span> * persist the full state of a Procedure, so the earlier wal records for this procedure can all be<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * deleted.<a name="line.108"></a>
-<span class="sourceLineNo">109</span> * @see ProcedureWALPrettyPrinter for printing content of a single WAL.<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * @see #main(String[]) to parse a directory of MasterWALProcs.<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * @deprecated Since 2.3.0, will be removed in 4.0.0. Keep here only for rolling upgrading, now we<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *             use the new region based procedure store.<a name="line.112"></a>
-<span class="sourceLineNo">113</span> */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>@Deprecated<a name="line.114"></a>
-<span class="sourceLineNo">115</span>@InterfaceAudience.Private<a name="line.115"></a>
-<span class="sourceLineNo">116</span>public class WALProcedureStore extends ProcedureStoreBase {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>  private static final Logger LOG = LoggerFactory.getLogger(WALProcedureStore.class);<a name="line.117"></a>
-<span class="sourceLineNo">118</span>  public static final String LOG_PREFIX = "pv2-";<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  /** Used to construct the name of the log directory for master procedures */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>  public static final String MASTER_PROCEDURE_LOGDIR = "MasterProcWALs";<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>  public static final String WAL_COUNT_WARN_THRESHOLD_CONF_KEY =<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    "hbase.procedure.store.wal.warn.threshold";<a name="line.124"></a>
-<span class="sourceLineNo">125</span>  private static final int DEFAULT_WAL_COUNT_WARN_THRESHOLD = 10;<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>  public static final String EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY =<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    "hbase.procedure.store.wal.exec.cleanup.on.load";<a name="line.128"></a>
-<span class="sourceLineNo">129</span>  private static final boolean DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY = true;<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>  public static final String MAX_RETRIES_BEFORE_ROLL_CONF_KEY =<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    "hbase.procedure.store.wal.max.retries.before.roll";<a name="line.132"></a>
-<span class="sourceLineNo">133</span>  private static final int DEFAULT_MAX_RETRIES_BEFORE_ROLL = 3;<a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>  public static final String WAIT_BEFORE_ROLL_CONF_KEY =<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    "hbase.procedure.store.wal.wait.before.roll";<a name="line.136"></a>
-<span class="sourceLineNo">137</span>  private static final int DEFAULT_WAIT_BEFORE_ROLL = 500;<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>  public static final String ROLL_RETRIES_CONF_KEY =<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    "hbase.procedure.store.wal.max.roll.retries";<a name="line.140"></a>
-<span class="sourceLineNo">141</span>  private static final int DEFAULT_ROLL_RETRIES = 3;<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>  public static final String MAX_SYNC_FAILURE_ROLL_CONF_KEY =<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    "hbase.procedure.store.wal.sync.failure.roll.max";<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  private static final int DEFAULT_MAX_SYNC_FAILURE_ROLL = 3;<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  public static final String PERIODIC_ROLL_CONF_KEY =<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    "hbase.procedure.store.wal.periodic.roll.msec";<a name="line.148"></a>
-<span class="sourceLineNo">149</span>  private static final int DEFAULT_PERIODIC_ROLL = 60 * 60 * 1000; // 1h<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>  public static final String SYNC_WAIT_MSEC_CONF_KEY = "hbase.procedure.store.wal.sync.wait.msec";<a name="line.151"></a>
-<span class="sourceLineNo">152</span>  private static final int DEFAULT_SYNC_WAIT_MSEC = 100;<a name="line.152"></a>
-<span class="sourceLineNo">153</span><a name="line.153"></a>
-<span class="sourceLineNo">154</span>  public static final String USE_HSYNC_CONF_KEY = "hbase.procedure.store.wal.use.hsync";<a name="line.154"></a>
-<span class="sourceLineNo">155</span>  private static final boolean DEFAULT_USE_HSYNC = true;<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>  public static final String ROLL_THRESHOLD_CONF_KEY = "hbase.procedure.store.wal.roll.threshold";<a name="line.157"></a>
-<span class="sourceLineNo">158</span>  private static final long DEFAULT_ROLL_THRESHOLD = 32 * 1024 * 1024; // 32M<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>  public static final String STORE_WAL_SYNC_STATS_COUNT =<a name="line.160"></a>
-<span class="sourceLineNo">161</span>      "hbase.procedure.store.wal.sync.stats.count";<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  private static final int DEFAULT_SYNC_STATS_COUNT = 10;<a name="line.162"></a>
-<span class="sourceLineNo">163</span><a name="line.163"></a>
-<span class="sourceLineNo">164</span>  private final LinkedList&lt;ProcedureWALFile&gt; logs = new LinkedList&lt;&gt;();<a name="line.164"></a>
-<span class="sourceLineNo">165</span>  private final ProcedureStoreTracker holdingCleanupTracker = new ProcedureStoreTracker();<a name="line.165"></a>
-<span class="sourceLineNo">166</span>  private final ProcedureStoreTracker storeTracker = new ProcedureStoreTracker();<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  private final ReentrantLock lock = new ReentrantLock();<a name="line.167"></a>
-<span class="sourceLineNo">168</span>  private final Condition waitCond = lock.newCondition();<a name="line.168"></a>
-<span class="sourceLineNo">169</span>  private final Condition slotCond = lock.newCondition();<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  private final Condition syncCond = lock.newCondition();<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>  private final LeaseRecovery leaseRecovery;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>  private final Configuration conf;<a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private final FileSystem fs;<a name="line.174"></a>
-<span class="sourceLineNo">175</span>  private final Path walDir;<a name="line.175"></a>
-<span class="sourceLineNo">176</span>  private final Path walArchiveDir;<a name="line.176"></a>
-<span class="sourceLineNo">177</span>  private final boolean enforceStreamCapability;<a name="line.177"></a>
-<span class="sourceLineNo">178</span><a name="line.178"></a>
-<span class="sourceLineNo">179</span>  private final AtomicReference&lt;Throwable&gt; syncException = new AtomicReference&lt;&gt;();<a name="line.179"></a>
-<span class="sourceLineNo">180</span>  private final AtomicBoolean loading = new AtomicBoolean(true);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>  private final AtomicBoolean inSync = new AtomicBoolean(false);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>  private final AtomicLong totalSynced = new AtomicLong(0);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>  private final AtomicLong lastRollTs = new AtomicLong(0);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>  private final AtomicLong syncId = new AtomicLong(0);<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>  private LinkedTransferQueue&lt;ByteSlot&gt; slotsCache = null;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>  private Set&lt;ProcedureWALFile&gt; corruptedLogs = null;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>  private FSDataOutputStream stream = null;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>  private int runningProcCount = 1;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  private long flushLogId = 0;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>  private int syncMaxSlot = 1;<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  private int slotIndex = 0;<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  private Thread syncThread;<a name="line.193"></a>
-<span class="sourceLineNo">194</span>  private ByteSlot[] slots;<a name="line.194"></a>
-<span class="sourceLineNo">195</span><a name="line.195"></a>
-<span class="sourceLineNo">196</span>  private int walCountWarnThreshold;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  private int maxRetriesBeforeRoll;<a name="line.197"></a>
-<span class="sourceLineNo">198</span>  private int maxSyncFailureRoll;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>  private int waitBeforeRoll;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>  private int rollRetries;<a name="line.200"></a>
-<span class="sourceLineNo">201</span>  private int periodicRollMsec;<a name="line.201"></a>
-<span class="sourceLineNo">202</span>  private long rollThreshold;<a name="line.202"></a>
-<span class="sourceLineNo">203</span>  private boolean useHsync;<a name="line.203"></a>
-<span class="sourceLineNo">204</span>  private int syncWaitMsec;<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>  // Variables used for UI display<a name="line.206"></a>
-<span class="sourceLineNo">207</span>  private CircularFifoQueue&lt;SyncMetrics&gt; syncMetricsQueue;<a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>  public static class SyncMetrics {<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    private long timestamp;<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    private long syncWaitMs;<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    private long totalSyncedBytes;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    private int syncedEntries;<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    private float syncedPerSec;<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>    public long getTimestamp() {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      return timestamp;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    }<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span>    public long getSyncWaitMs() {<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      return syncWaitMs;<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    }<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>    public long getTotalSyncedBytes() {<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      return totalSyncedBytes;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span><a name="line.227"></a>
-<span class="sourceLineNo">228</span>    public long getSyncedEntries() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return syncedEntries;<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>    public float getSyncedPerSec() {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return syncedPerSec;<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
-<span class="sourceLineNo">236</span><a name="line.236"></a>
-<span class="sourceLineNo">237</span>  public WALProcedureStore(Configuration conf, LeaseRecovery leaseRecovery) throws IOException {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    this(conf, new Path(CommonFSUtils.getWALRootDir(conf), MASTER_PROCEDURE_LOGDIR),<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      new Path(CommonFSUtils.getWALRootDir(conf), HConstants.HREGION_OLDLOGDIR_NAME),<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      leaseRecovery);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>  public WALProcedureStore(final Configuration conf, final Path walDir, final Path walArchiveDir,<a name="line.243"></a>
-<span class="sourceLineNo">244</span>      final LeaseRecovery leaseRecovery) throws IOException {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    this.conf = conf;<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    this.leaseRecovery = leaseRecovery;<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    this.walDir = walDir;<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    this.walArchiveDir = walArchiveDir;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    this.fs = CommonFSUtils.getWALFileSystem(conf);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    this.enforceStreamCapability = conf.getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE,<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        true);<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span>    // Create the log directory for the procedure store<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    if (!fs.exists(walDir)) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      if (!fs.mkdirs(walDir)) {<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        throw new IOException("Unable to mkdir " + walDir);<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      }<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    // Now that it exists, set the log policy<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    String storagePolicy =<a name="line.260"></a>
-<span class="sourceLineNo">261</span>        conf.get(HConstants.WAL_STORAGE_POLICY, HConstants.DEFAULT_WAL_STORAGE_POLICY);<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    CommonFSUtils.setStoragePolicy(fs, walDir, storagePolicy);<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>    // Create archive dir up front. Rename won't work w/o it up on HDFS.<a name="line.264"></a>
-<span class="sourceLineNo">265</span>    if (this.walArchiveDir != null &amp;&amp; !this.fs.exists(this.walArchiveDir)) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      if (this.fs.mkdirs(this.walArchiveDir)) {<a name="line.266"></a>
-<span class="sourceLineNo">267</span>        LOG.debug("Created Procedure Store WAL archive dir {}", this.walArchiveDir);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>      } else {<a name="line.268"></a>
-<span class="sourceLineNo">269</span>        LOG.warn("Failed create of {}", this.walArchiveDir);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>      }<a name="line.270"></a>
-<span class="sourceLineNo">271</span>    }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>  }<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>  @Override<a name="line.274"></a>
-<span class="sourceLineNo">275</span>  public void start(int numSlots) throws IOException {<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    if (!setRunning(true)) {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      return;<a name="line.277"></a>
-<span class="sourceLineNo">278</span>    }<a name="line.278"></a>
-<span class="sourceLineNo">279</span><a name="line.279"></a>
-<span class="sourceLineNo">280</span>    // Init buffer slots<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    loading.set(true);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    runningProcCount = numSlots;<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    syncMaxSlot = numSlots;<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    slots = new ByteSlot[numSlots];<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    slotsCache = new LinkedTransferQueue&lt;&gt;();<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    while (slotsCache.size() &lt; numSlots) {<a name="line.286"></a>
-<span class="sourceLineNo">287</span>      slotsCache.offer(new ByteSlot());<a name="line.287"></a>
-<span class="sourceLineNo">288</span>    }<a name="line.288"></a>
-<span class="sourceLineNo">289</span><a name="line.289"></a>
-<span class="sourceLineNo">290</span>    // Tunings<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    walCountWarnThreshold =<a name="line.291"></a>
-<span class="sourceLineNo">292</span>      conf.getInt(WAL_COUNT_WARN_THRESHOLD_CONF_KEY, DEFAULT_WAL_COUNT_WARN_THRESHOLD);<a name="line.292"></a>
-<span class="sourceLineNo">293</span>    maxRetriesBeforeRoll =<a name="line.293"></a>
-<span class="sourceLineNo">294</span>      conf.getInt(MAX_RETRIES_BEFORE_ROLL_CONF_KEY, DEFAULT_MAX_RETRIES_BEFORE_ROLL);<a name="line.294"></a>
-<span class="sourceLineNo">295</span>    maxSyncFailureRoll = conf.getInt(MAX_SYNC_FAILURE_ROLL_CONF_KEY, DEFAULT_MAX_SYNC_FAILURE_ROLL);<a name="line.295"></a>
-<span class="sourceLineNo">296</span>    waitBeforeRoll = conf.getInt(WAIT_BEFORE_ROLL_CONF_KEY, DEFAULT_WAIT_BEFORE_ROLL);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>    rollRetries = conf.getInt(ROLL_RETRIES_CONF_KEY, DEFAULT_ROLL_RETRIES);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    rollThreshold = conf.getLong(ROLL_THRESHOLD_CONF_KEY, DEFAULT_ROLL_THRESHOLD);<a name="line.298"></a>
-<span class="sourceLineNo">299</span>    periodicRollMsec = conf.getInt(PERIODIC_ROLL_CONF_KEY, DEFAULT_PERIODIC_ROLL);<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    syncWaitMsec = conf.getInt(SYNC_WAIT_MSEC_CONF_KEY, DEFAULT_SYNC_WAIT_MSEC);<a name="line.300"></a>
-<span class="sourceLineNo">301</span>    useHsync = conf.getBoolean(USE_HSYNC_CONF_KEY, DEFAULT_USE_HSYNC);<a name="line.301"></a>
-<span class="sourceLineNo">302</span><a name="line.302"></a>
-<span class="sourceLineNo">303</span>    // WebUI<a name="line.303"></a>
-<span class="sourceLineNo">304</span>    syncMetricsQueue = new CircularFifoQueue&lt;&gt;(<a name="line.304"></a>
-<span class="sourceLineNo">305</span>      conf.getInt(STORE_WAL_SYNC_STATS_COUNT, DEFAULT_SYNC_STATS_COUNT));<a name="line.305"></a>
-<span class="sourceLineNo">306</span><a name="line.306"></a>
-<span class="sourceLineNo">307</span>    // Init sync thread<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    syncThread = new Thread("WALProcedureStoreSyncThread") {<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      @Override<a name="line.309"></a>
-<span class="sourceLineNo">310</span>      public void run() {<a name="line.310"></a>
-<span class="sourceLineNo">311</span>        try {<a name="line.311"></a>
-<span class="sourceLineNo">312</span>          syncLoop();<a name="line.312"></a>
-<span class="sourceLineNo">313</span>        } catch (Throwable e) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>          LOG.error("Got an exception from the sync-loop", e);<a name="line.314"></a>
-<span class="sourceLineNo">315</span>          if (!isSyncAborted()) {<a name="line.315"></a>
-<span class="sourceLineNo">316</span>            sendAbortProcessSignal();<a name="line.316"></a>
-<span class="sourceLineNo">317</span>          }<a name="line.317"></a>
-<span class="sourceLineNo">318</span>        }<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      }<a name="line.319"></a>
-<span class="sourceLineNo">320</span>    };<a name="line.320"></a>
-<span class="sourceLineNo">321</span>    syncThread.start();<a name="line.321"></a>
-<span class="sourceLineNo">322</span>  }<a name="line.322"></a>
-<span class="sourceLineNo">323</span><a name="line.323"></a>
-<span class="sourceLineNo">324</span>  @Override<a name="line.324"></a>
-<span class="sourceLineNo">325</span>  public void stop(final boolean abort) {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    if (!setRunning(false)) {<a name="line.326"></a>
-<span class="sourceLineNo">327</span>      return;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>    }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>    LOG.info("Stopping the WAL Procedure Store, isAbort=" + abort +<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      (isSyncAborted() ? " (self aborting)" : ""));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>    sendStopSignal();<a name="line.332"></a>
-<span class="sourceLineNo">333</span>    if (!isSyncAborted()) {<a name="line.333"></a>
-<span class="sourceLineNo">334</span>      try {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>        while (syncThread.isAlive()) {<a name="line.335"></a>
-<span class="sourceLineNo">336</span>          sendStopSignal();<a name="line.336"></a>
-<span class="sourceLineNo">337</span>          syncThread.join(250);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>        }<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      } catch (InterruptedException e) {<a name="line.339"></a>
-<span class="sourceLineNo">340</span>        LOG.warn("join interrupted", e);<a name="line.340"></a>
-<span class="sourceLineNo">341</span>        Thread.currentThread().interrupt();<a name="line.341"></a>
-<span class="sourceLineNo">342</span>      }<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    }<a name="line.343"></a>
-<span class="sourceLineNo">344</span><a name="line.344"></a>
-<span class="sourceLineNo">345</span>    // Close the writer<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    closeCurrentLogStream(abort);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    // Close the old logs<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    // they should be already closed, this is just in case the load fails<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    // and we call start() and then stop()<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    for (ProcedureWALFile log: logs) {<a name="line.351"></a>
-<span class="sourceLineNo">352</span>      log.close();<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    }<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    logs.clear();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    loading.set(true);<a name="line.355"></a>
-<span class="sourceLineNo">356</span>  }<a name="line.356"></a>
-<span class="sourceLineNo">357</span><a name="line.357"></a>
-<span class="sourceLineNo">358</span>  private void sendStopSignal() {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    if (lock.tryLock()) {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>      try {<a name="line.360"></a>
-<span class="sourceLineNo">361</span>        waitCond.signalAll();<a name="line.361"></a>
-<span class="sourceLineNo">362</span>        syncCond.signalAll();<a name="line.362"></a>
-<span class="sourceLineNo">363</span>      } finally {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>        lock.unlock();<a name="line.364"></a>
-<span class="sourceLineNo">365</span>      }<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    }<a name="line.366"></a>
-<span class="sourceLineNo">367</span>  }<a name="line.367"></a>
-<span class="sourceLineNo">368</span><a name="line.368"></a>
-<span class="sourceLineNo">369</span>  @Override<a name="line.369"></a>
-<span class="sourceLineNo">370</span>  public int getNumThreads() {<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    return slots == null ? 0 : slots.length;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  }<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  @Override<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  public int setRunningProcedureCount(final int count) {<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    this.runningProcCount = count &gt; 0 ? Math.min(count, slots.length) : slots.length;<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    return this.runningProcCount;<a name="line.377"></a>
-<span class="sourceLineNo">378</span>  }<a name="line.378"></a>
-<span class="sourceLineNo">379</span><a name="line.379"></a>
-<span class="sourceLineNo">380</span>  public ProcedureStoreTracker getStoreTracker() {<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    return storeTracker;<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  }<a name="line.382"></a>
-<span class="sourceLineNo">383</span><a name="line.383"></a>
-<span class="sourceLineNo">384</span>  public ArrayList&lt;ProcedureWALFile&gt; getActiveLogs() {<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    lock.lock();<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    try {<a name="line.386"></a>
-<span class="sourceLineNo">387</span>      return new ArrayList&lt;&gt;(logs);<a name="line.387"></a>
-<span class="sourceLineNo">388</span>    } finally {<a name="line.388"></a>
-<span class="sourceLineNo">389</span>      lock.unlock();<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    }<a name="line.390"></a>
-<span class="sourceLineNo">391</span>  }<a name="line.391"></a>
-<span class="sourceLineNo">392</span><a name="line.392"></a>
-<span class="sourceLineNo">393</span>  public Set&lt;ProcedureWALFile&gt; getCorruptedLogs() {<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    return corruptedLogs;<a name="line.394"></a>
-<span class="sourceLineNo">395</span>  }<a name="line.395"></a>
-<span class="sourceLineNo">396</span><a name="line.396"></a>
-<span class="sourceLineNo">397</span>  @Override<a name="line.397"></a>
-<span class="sourceLineNo">398</span>  public void recoverLease() throws IOException {<a name="line.398"></a>
-<span class="sourceLineNo">399</span>    lock.lock();<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    try {<a name="line.400"></a>
-<span class="sourceLineNo">401</span>      LOG.debug("Starting WAL Procedure Store lease recovery");<a name="line.401"></a>
-<span class="sourceLineNo">402</span>      boolean afterFirstAttempt = false;<a name="line.402"></a>
-<span class="sourceLineNo">403</span>      while (isRunning()) {<a name="line.403"></a>
-<span class="sourceLineNo">404</span>        // Don't sleep before first attempt<a name="line.404"></a>
-<span class="sourceLineNo">405</span>        if (afterFirstAttempt) {<a name="line.405"></a>
-<span class="sourceLineNo">406</span>          LOG.trace("Sleep {} ms after first lease recovery attempt.",<a name="line.406"></a>
-<span class="sourceLineNo">407</span>              waitBeforeRoll);<a name="line.407"></a>
-<span class="sourceLineNo">408</span>          Threads.sleepWithoutInterrupt(waitBeforeRoll);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>        } else {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>          afterFirstAttempt = true;<a name="line.410"></a>
-<span class="sourceLineNo">411</span>        }<a name="line.411"></a>
-<span class="sourceLineNo">412</span>        FileStatus[] oldLogs = getLogFiles();<a name="line.412"></a>
-<span class="sourceLineNo">413</span>        // Get Log-MaxID and recover lease on old logs<a name="line.413"></a>
-<span class="sourceLineNo">414</span>        try {<a name="line.414"></a>
-<span class="sourceLineNo">415</span>          flushLogId = initOldLogs(oldLogs);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>        } catch (FileNotFoundException e) {<a name="line.416"></a>
-<span class="sourceLineNo">417</span>          LOG.warn("Someone else is active and deleted logs. retrying.", e);<a name="line.417"></a>
-<span class="sourceLineNo">418</span>          continue;<a name="line.418"></a>
-<span class="sourceLineNo">419</span>        }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>        // Create new state-log<a name="line.421"></a>
-<span class="sourceLineNo">422</span>        if (!rollWriter(flushLogId + 1)) {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>          // someone else has already created this log<a name="line.423"></a>
-<span class="sourceLineNo">424</span>          LOG.debug("Someone else has already created log {}. Retrying.", flushLogId);<a name="line.424"></a>
-<span class="sourceLineNo">425</span>          continue;<a name="line.425"></a>
-<span class="sourceLineNo">426</span>        }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>        // We have the lease on the log<a name="line.428"></a>
-<span class="sourceLineNo">429</span>        oldLogs = getLogFiles();<a name="line.429"></a>
-<span class="sourceLineNo">430</span>        if (getMaxLogId(oldLogs) &gt; flushLogId) {<a name="line.430"></a>
-<span class="sourceLineNo">431</span>          LOG.debug("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>          logs.getLast().removeFile(this.walArchiveDir);<a name="line.432"></a>
-<span class="sourceLineNo">433</span>          continue;<a name="line.433"></a>
-<span class="sourceLineNo">434</span>        }<a name="line.434"></a>
-<span class="sourceLineNo">435</span><a name="line.435"></a>
-<span class="sourceLineNo">436</span>        LOG.debug("Lease acquired for flushLogId={}", flushLogId);<a name="line.436"></a>
-<span class="sourceLineNo">437</span>        break;<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      }<a name="line.438"></a>
-<span class="sourceLineNo">439</span>    } finally {<a name="line.439"></a>
-<span class="sourceLineNo">440</span>      lock.unlock();<a name="line.440"></a>
-<span class="sourceLineNo">441</span>    }<a name="line.441"></a>
-<span class="sourceLineNo">442</span>  }<a name="line.442"></a>
-<span class="sourceLineNo">443</span><a name="line.443"></a>
-<span class="sourceLineNo">444</span>  @Override<a name="line.444"></a>
-<span class="sourceLineNo">445</span>  public void load(ProcedureLoader loader) throws IOException {<a name="line.445"></a>
-<span class="sourceLineNo">446</span>    lock.lock();<a name="line.446"></a>
-<span class="sourceLineNo">447</span>    try {<a name="line.447"></a>
-<span class="sourceLineNo">448</span>      if (logs.isEmpty()) {<a name="line.448"></a>
-<span class="sourceLineNo">449</span>        throw new IllegalStateException("recoverLease() must be called before loading data");<a name="line.449"></a>
-<span class="sourceLineNo">450</span>      }<a name="line.450"></a>
-<span class="sourceLineNo">451</span><a name="line.451"></a>
-<span class="sourceLineNo">452</span>      // Nothing to do, If we have only the current log.<a name="line.452"></a>
-<span class="sourceLineNo">453</span>      if (logs.size() == 1) {<a name="line.453"></a>
-<span class="sourceLineNo">454</span>        LOG.debug("No state logs to replay.");<a name="line.454"></a>
-<span class="sourceLineNo">455</span>        loader.setMaxProcId(0);<a name="line.455"></a>
-<span class="sourceLineNo">456</span>        loading.set(false);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>        return;<a name="line.457"></a>
-<span class="sourceLineNo">458</span>      }<a name="line.458"></a>
-<span class="sourceLineNo">459</span><a name="line.459"></a>
-<span class="sourceLineNo">460</span>      // Load the old logs<a name="line.460"></a>
-<span class="sourceLineNo">461</span>      Iterator&lt;ProcedureWALFile&gt; it = logs.descendingIterator();<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      it.next(); // Skip the current log<a name="line.462"></a>
-<span class="sourceLineNo">463</span><a name="line.463"></a>
-<span class="sourceLineNo">464</span>      ProcedureWALFormat.load(it, storeTracker, new ProcedureWALFormat.Loader() {<a name="line.464"></a>
+<span class="sourceLineNo">091</span> * TODO: try using disruptor to increase performance and simplify the logic?<a name="line.91"></a>
+<span class="sourceLineNo">092</span> * &lt;p/&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * The {@link #storeTracker} keeps track of the modified procedures in the newest wal file, which is<a name="line.93"></a>
+<span class="sourceLineNo">094</span> * also the one being written currently. And the deleted bits in it are for all the procedures, not<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * only the ones in the newest wal file. And when rolling a log, we will first store it in the<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * trailer of the current wal file, and then reset its modified bits, so that it can start to track<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * the modified procedures for the new wal file.<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p/&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * The {@link #holdingCleanupTracker} is used to test whether we are safe to delete the oldest wal<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * file. When there are log rolling and there are more than 1 wal files, we will make use of it. It<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * will first be initialized to the oldest file's tracker(which is stored in the trailer), using the<a name="line.101"></a>
+<span class="sourceLineNo">102</span> * method {@link ProcedureStoreTracker#resetTo(ProcedureStoreTracker, boolean)}, and then merge it<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * with the tracker of every newer wal files, using the<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * {@link ProcedureStoreTracker#setDeletedIfModifiedInBoth(ProcedureStoreTracker)}.<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * If we find out<a name="line.105"></a>
+<span class="sourceLineNo">106</span> * that all the modified procedures for the oldest wal file are modified or deleted in newer wal<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * files, then we can delete it. This is because that, every time we call<a name="line.107"></a>
+<span class="sourceLineNo">108</span> * {@link ProcedureStore#insert(Procedure[])} or {@link ProcedureStore#update(Procedure)}, we will<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * persist the full state of a Procedure, so the earlier wal records for this procedure can all be<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * deleted.<a name="line.110"></a>
+<span class="sourceLineNo">111</span> * @see ProcedureWALPrettyPrinter for printing content of a single WAL.<a name="line.111"></a>
+<span class="sourceLineNo">112</span> * @see #main(String[]) to parse a directory of MasterWALProcs.<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * @deprecated Since 2.3.0, will be removed in 4.0.0. Keep here only for rolling upgrading, now we<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *             use the new region based procedure store.<a name="line.114"></a>
+<span class="sourceLineNo">115</span> */<a name="line.115"></a>
+<span class="sourceLineNo">116</span>@Deprecated<a name="line.116"></a>
+<span class="sourceLineNo">117</span>@InterfaceAudience.Private<a name="line.117"></a>
+<span class="sourceLineNo">118</span>public class WALProcedureStore extends ProcedureStoreBase {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>  private static final Logger LOG = LoggerFactory.getLogger(WALProcedureStore.class);<a name="line.119"></a>
+<span class="sourceLineNo">120</span>  public static final String LOG_PREFIX = "pv2-";<a name="line.120"></a>
+<span class="sourceLineNo">121</span>  /** Used to construct the name of the log directory for master procedures */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>  public static final String MASTER_PROCEDURE_LOGDIR = "MasterProcWALs";<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>  public static final String WAL_COUNT_WARN_THRESHOLD_CONF_KEY =<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    "hbase.procedure.store.wal.warn.threshold";<a name="line.126"></a>
+<span class="sourceLineNo">127</span>  private static final int DEFAULT_WAL_COUNT_WARN_THRESHOLD = 10;<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>  public static final String EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY =<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    "hbase.procedure.store.wal.exec.cleanup.on.load";<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  private static final boolean DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY = true;<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  public static final String MAX_RETRIES_BEFORE_ROLL_CONF_KEY =<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    "hbase.procedure.store.wal.max.retries.before.roll";<a name="line.134"></a>
+<span class="sourceLineNo">135</span>  private static final int DEFAULT_MAX_RETRIES_BEFORE_ROLL = 3;<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public static final String WAIT_BEFORE_ROLL_CONF_KEY =<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    "hbase.procedure.store.wal.wait.before.roll";<a name="line.138"></a>
+<span class="sourceLineNo">139</span>  private static final int DEFAULT_WAIT_BEFORE_ROLL = 500;<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>  public static final String ROLL_RETRIES_CONF_KEY =<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    "hbase.procedure.store.wal.max.roll.retries";<a name="line.142"></a>
+<span class="sourceLineNo">143</span>  private static final int DEFAULT_ROLL_RETRIES = 3;<a name="line.143"></a>
+<span class="sourceLineNo">144</span><a name="line.144"></a>
+<span class="sourceLineNo">145</span>  public static final String MAX_SYNC_FAILURE_ROLL_CONF_KEY =<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    "hbase.procedure.store.wal.sync.failure.roll.max";<a name="line.146"></a>
+<span class="sourceLineNo">147</span>  private static final int DEFAULT_MAX_SYNC_FAILURE_ROLL = 3;<a name="line.147"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>  public static final String PERIODIC_ROLL_CONF_KEY =<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    "hbase.procedure.store.wal.periodic.roll.msec";<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  private static final int DEFAULT_PERIODIC_ROLL = 60 * 60 * 1000; // 1h<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>  public static final String SYNC_WAIT_MSEC_CONF_KEY = "hbase.procedure.store.wal.sync.wait.msec";<a name="line.153"></a>
+<span class="sourceLineNo">154</span>  private static final int DEFAULT_SYNC_WAIT_MSEC = 100;<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>  public static final String USE_HSYNC_CONF_KEY = "hbase.procedure.store.wal.use.hsync";<a name="line.156"></a>
+<span class="sourceLineNo">157</span>  private static final boolean DEFAULT_USE_HSYNC = true;<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>  public static final String ROLL_THRESHOLD_CONF_KEY = "hbase.procedure.store.wal.roll.threshold";<a name="line.159"></a>
+<span class="sourceLineNo">160</span>  private static final long DEFAULT_ROLL_THRESHOLD = 32 * 1024 * 1024; // 32M<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>  public static final String STORE_WAL_SYNC_STATS_COUNT =<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      "hbase.procedure.store.wal.sync.stats.count";<a name="line.163"></a>
+<span class="sourceLineNo">164</span>  private static final int DEFAULT_SYNC_STATS_COUNT = 10;<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>  private final LinkedList&lt;ProcedureWALFile&gt; logs = new LinkedList&lt;&gt;();<a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private final ProcedureStoreTracker holdingCleanupTracker = new ProcedureStoreTracker();<a name="line.167"></a>
+<span class="sourceLineNo">168</span>  private final ProcedureStoreTracker storeTracker = new ProcedureStoreTracker();<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  private final ReentrantLock lock = new ReentrantLock();<a name="line.169"></a>
+<span class="sourceLineNo">170</span>  private final Condition waitCond = lock.newCondition();<a name="line.170"></a>
+<span class="sourceLineNo">171</span>  private final Condition slotCond = lock.newCondition();<a name="line.171"></a>
+<span class="sourceLineNo">172</span>  private final Condition syncCond = lock.newCondition();<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>  private final LeaseRecovery leaseRecovery;<a name="line.174"></a>
+<span class="sourceLineNo">175</span>  private final Configuration conf;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  private final FileSystem fs;<a name="line.176"></a>
+<span class="sourceLineNo">177</span>  private final Path walDir;<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  private final Path walArchiveDir;<a name="line.178"></a>
+<span class="sourceLineNo">179</span>  private final boolean enforceStreamCapability;<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>  private final AtomicReference&lt;Throwable&gt; syncException = new AtomicReference&lt;&gt;();<a name="line.181"></a>
+<span class="sourceLineNo">182</span>  private final AtomicBoolean loading = new AtomicBoolean(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>  private final AtomicBoolean inSync = new AtomicBoolean(false);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>  private final AtomicLong totalSynced = new AtomicLong(0);<a name="line.184"></a>
+<span class="sourceLineNo">185</span>  private final AtomicLong lastRollTs = new AtomicLong(0);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>  private final AtomicLong syncId = new AtomicLong(0);<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>  private LinkedTransferQueue&lt;ByteSlot&gt; slotsCache = null;<a name="line.188"></a>
+<span class="sourceLineNo">189</span>  private Set&lt;ProcedureWALFile&gt; corruptedLogs = null;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>  private FSDataOutputStream stream = null;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>  private int runningProcCount = 1;<a name="line.191"></a>
+<span class="sourceLineNo">192</span>  private long flushLogId = 0;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>  private int syncMaxSlot = 1;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>  private int slotIndex = 0;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>  private Thread syncThread;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  private ByteSlot[] slots;<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  private int walCountWarnThreshold;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  private int maxRetriesBeforeRoll;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>  private int maxSyncFailureRoll;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>  private int waitBeforeRoll;<a name="line.201"></a>
+<span class="sourceLineNo">202</span>  private int rollRetries;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>  private int periodicRollMsec;<a name="line.203"></a>
+<span class="sourceLineNo">204</span>  private long rollThreshold;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>  private boolean useHsync;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>  private int syncWaitMsec;<a name="line.206"></a>
+<span class="sourceLineNo">207</span><a name="line.207"></a>
+<span class="sourceLineNo">208</span>  // Variables used for UI display<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  private CircularFifoQueue&lt;SyncMetrics&gt; syncMetricsQueue;<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  public static class SyncMetrics {<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    private long timestamp;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    private long syncWaitMs;<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    private long totalSyncedBytes;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    private int syncedEntries;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    private float syncedPerSec;<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>    public long getTimestamp() {<a name="line.218"></a>
+<span class="sourceLineNo">219</span>      return timestamp;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    }<a name="line.220"></a>
+<span class="sourceLineNo">221</span><a name="line.221"></a>
+<span class="sourceLineNo">222</span>    public long getSyncWaitMs() {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      return syncWaitMs;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>    public long getTotalSyncedBytes() {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>      return totalSyncedBytes;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    }<a name="line.228"></a>
+<span class="sourceLineNo">229</span><a name="line.229"></a>
+<span class="sourceLineNo">230</span>    public long getSyncedEntries() {<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      return syncedEntries;<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span><a name="line.233"></a>
+<span class="sourceLineNo">234</span>    public float getSyncedPerSec() {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>      return syncedPerSec;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
+<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public WALProcedureStore(Configuration conf, LeaseRecovery leaseRecovery) throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    this(conf, new Path(CommonFSUtils.getWALRootDir(conf), MASTER_PROCEDURE_LOGDIR),<a name="line.240"></a>
+<span class="sourceLineNo">241</span>      new Path(CommonFSUtils.getWALRootDir(conf), HConstants.HREGION_OLDLOGDIR_NAME),<a name="line.241"></a>
+<span class="sourceLineNo">242</span>      leaseRecovery);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>  }<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>  public WALProcedureStore(final Configuration conf, final Path walDir, final Path walArchiveDir,<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      final LeaseRecovery leaseRecovery) throws IOException {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    this.conf = conf;<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    this.leaseRecovery = leaseRecovery;<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    this.walDir = walDir;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    this.walArchiveDir = walArchiveDir;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    this.fs = CommonFSUtils.getWALFileSystem(conf);<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    this.enforceStreamCapability = conf.getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE,<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        true);<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>    // Create the log directory for the procedure store<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    if (!fs.exists(walDir)) {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      if (!fs.mkdirs(walDir)) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        throw new IOException("Unable to mkdir " + walDir);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    }<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    // Now that it exists, set the log policy<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    String storagePolicy =<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        conf.get(HConstants.WAL_STORAGE_POLICY, HConstants.DEFAULT_WAL_STORAGE_POLICY);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    CommonFSUtils.setStoragePolicy(fs, walDir, storagePolicy);<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>    // Create archive dir up front. Rename won't work w/o it up on HDFS.<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    if (this.walArchiveDir != null &amp;&amp; !this.fs.exists(this.walArchiveDir)) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      if (this.fs.mkdirs(this.walArchiveDir)) {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>        LOG.debug("Created Procedure Store WAL archive dir {}", this.walArchiveDir);<a name="line.269"></a>
+<span class="sourceLineNo">270</span>      } else {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>        LOG.warn("Failed create of {}", this.walArchiveDir);<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    }<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public void start(int numSlots) throws IOException {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    if (!setRunning(true)) {<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      return;<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    }<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>    // Init buffer slots<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    loading.set(true);<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    runningProcCount = numSlots;<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    syncMaxSlot = numSlots;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    slots = new ByteSlot[numSlots];<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    slotsCache = new LinkedTransferQueue&lt;&gt;();<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    while (slotsCache.size() &lt; numSlots) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      slotsCache.offer(new ByteSlot());<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    }<a name="line.290"></a>
+<span class="sourceLineNo">291</span><a name="line.291"></a>
+<span class="sourceLineNo">292</span>    // Tunings<a name="line.292"></a>
+<span class="sourceLineNo">293</span>    walCountWarnThreshold =<a name="line.293"></a>
+<span class="sourceLineNo">294</span>      conf.getInt(WAL_COUNT_WARN_THRESHOLD_CONF_KEY, DEFAULT_WAL_COUNT_WARN_THRESHOLD);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    maxRetriesBeforeRoll =<a name="line.295"></a>
+<span class="sourceLineNo">296</span>      conf.getInt(MAX_RETRIES_BEFORE_ROLL_CONF_KEY, DEFAULT_MAX_RETRIES_BEFORE_ROLL);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    maxSyncFailureRoll = conf.getInt(MAX_SYNC_FAILURE_ROLL_CONF_KEY, DEFAULT_MAX_SYNC_FAILURE_ROLL);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    waitBeforeRoll = conf.getInt(WAIT_BEFORE_ROLL_CONF_KEY, DEFAULT_WAIT_BEFORE_ROLL);<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    rollRetries = conf.getInt(ROLL_RETRIES_CONF_KEY, DEFAULT_ROLL_RETRIES);<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    rollThreshold = conf.getLong(ROLL_THRESHOLD_CONF_KEY, DEFAULT_ROLL_THRESHOLD);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    periodicRollMsec = conf.getInt(PERIODIC_ROLL_CONF_KEY, DEFAULT_PERIODIC_ROLL);<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    syncWaitMsec = conf.getInt(SYNC_WAIT_MSEC_CONF_KEY, DEFAULT_SYNC_WAIT_MSEC);<a name="line.302"></a>
+<span class="sourceLineNo">303</span>    useHsync = conf.getBoolean(USE_HSYNC_CONF_KEY, DEFAULT_USE_HSYNC);<a name="line.303"></a>
+<span class="sourceLineNo">304</span><a name="line.304"></a>
+<span class="sourceLineNo">305</span>    // WebUI<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    syncMetricsQueue = new CircularFifoQueue&lt;&gt;(<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      conf.getInt(STORE_WAL_SYNC_STATS_COUNT, DEFAULT_SYNC_STATS_COUNT));<a name="line.307"></a>
+<span class="sourceLineNo">308</span><a name="line.308"></a>
+<span class="sourceLineNo">309</span>    // Init sync thread<a name="line.309"></a>
+<span class="sourceLineNo">310</span>    syncThread = new Thread("WALProcedureStoreSyncThread") {<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      @Override<a name="line.311"></a>
+<span class="sourceLineNo">312</span>      public void run() {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>        try {<a name="line.313"></a>
+<span class="sourceLineNo">314</span>          syncLoop();<a name="line.314"></a>
+<span class="sourceLineNo">315</span>        } catch (Throwable e) {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>          LOG.error("Got an exception from the sync-loop", e);<a name="line.316"></a>
+<span class="sourceLineNo">317</span>          if (!isSyncAborted()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>            sendAbortProcessSignal();<a name="line.318"></a>
+<span class="sourceLineNo">319</span>          }<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        }<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    };<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    syncThread.start();<a name="line.323"></a>
+<span class="sourceLineNo">324</span>  }<a name="line.324"></a>
+<span class="sourceLineNo">325</span><a name="line.325"></a>
+<span class="sourceLineNo">326</span>  @Override<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  public void stop(final boolean abort) {<a name="line.327"></a>
+<span class="sourceLineNo">328</span>    if (!setRunning(false)) {<a name="line.328"></a>
+<span class="sourceLineNo">329</span>      return;<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    }<a name="line.330"></a>
+<span class="sourceLineNo">331</span><a name="line.331"></a>
+<span class="sourceLineNo">332</span>    LOG.info("Stopping the WAL Procedure Store, isAbort=" + abort +<a name="line.332"></a>
+<span class="sourceLineNo">333</span>      (isSyncAborted() ? " (self aborting)" : ""));<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    sendStopSignal();<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    if (!isSyncAborted()) {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>      try {<a name="line.336"></a>
+<span class="sourceLineNo">337</span>        while (syncThread.isAlive()) {<a name="line.337"></a>
+<span class="sourceLineNo">338</span>          sendStopSignal();<a name="line.338"></a>
+<span class="sourceLineNo">339</span>          syncThread.join(250);<a name="line.339"></a>
+<span class="sourceLineNo">340</span>        }<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      } catch (InterruptedException e) {<a name="line.341"></a>
+<span class="sourceLineNo">342</span>        LOG.warn("join interrupted", e);<a name="line.342"></a>
+<span class="sourceLineNo">343</span>        Thread.currentThread().interrupt();<a name="line.343"></a>
+<span class="sourceLineNo">344</span>      }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    // Close the writer<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    closeCurrentLogStream(abort);<a name="line.348"></a>
+<span class="sourceLineNo">349</span><a name="line.349"></a>
+<span class="sourceLineNo">350</span>    // Close the old logs<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    // they should be already closed, this is just in case the load fails<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // and we call start() and then stop()<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    for (ProcedureWALFile log: logs) {<a name="line.353"></a>
+<span class="sourceLineNo">354</span>      log.close();<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    }<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    logs.clear();<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    loading.set(true);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>  private void sendStopSignal() {<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    if (lock.tryLock()) {<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      try {<a name="line.362"></a>
+<span class="sourceLineNo">363</span>        waitCond.signalAll();<a name="line.363"></a>
+<span class="sourceLineNo">364</span>        syncCond.signalAll();<a name="line.364"></a>
+<span class="sourceLineNo">365</span>      } finally {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>        lock.unlock();<a name="line.366"></a>
+<span class="sourceLineNo">367</span>      }<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    }<a name="line.368"></a>
+<span class="sourceLineNo">369</span>  }<a name="line.369"></a>
+<span class="sourceLineNo">370</span><a name="line.370"></a>
+<span class="sourceLineNo">371</span>  @Override<a name="line.371"></a>
+<span class="sourceLineNo">372</span>  public int getNumThreads() {<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    return slots == null ? 0 : slots.length;<a name="line.373"></a>
+<span class="sourceLineNo">374</span>  }<a name="line.374"></a>
+<span class="sourceLineNo">375</span><a name="line.375"></a>
+<span class="sourceLineNo">376</span>  @Override<a name="line.376"></a>
+<span class="sourceLineNo">377</span>  public int setRunningProcedureCount(final int count) {<a name="line.377"></a>
+<span class="sourceLineNo">378</span>    this.runningProcCount = count &gt; 0 ? Math.min(count, slots.length) : slots.length;<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    return this.runningProcCount;<a name="line.379"></a>
+<span class="sourceLineNo">380</span>  }<a name="line.380"></a>
+<span class="sourceLineNo">381</span><a name="line.381"></a>
+<span class="sourceLineNo">382</span>  public ProcedureStoreTracker getStoreTracker() {<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    return storeTracker;<a name="line.383"></a>
+<span class="sourceLineNo">384</span>  }<a name="line.384"></a>
+<span class="sourceLineNo">385</span><a name="line.385"></a>
+<span class="sourceLineNo">386</span>  public ArrayList&lt;ProcedureWALFile&gt; getActiveLogs() {<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    lock.lock();<a name="line.387"></a>
+<span class="sourceLineNo">388</span>    try {<a name="line.388"></a>
+<span class="sourceLineNo">389</span>      return new ArrayList&lt;&gt;(logs);<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    } finally {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>      lock.unlock();<a name="line.391"></a>
+<span class="sourceLineNo">392</span>    }<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  public Set&lt;ProcedureWALFile&gt; getCorruptedLogs() {<a name="line.395"></a>
+<span class="sourceLineNo">396</span>    return corruptedLogs;<a name="line.396"></a>
+<span class="sourceLineNo">397</span>  }<a name="line.397"></a>
+<span class="sourceLineNo">398</span><a name="line.398"></a>
+<span class="sourceLineNo">399</span>  @Override<a name="line.399"></a>
+<span class="sourceLineNo">400</span>  public void recoverLease() throws IOException {<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    lock.lock();<a name="line.401"></a>
+<span class="sourceLineNo">402</span>    try {<a name="line.402"></a>
+<span class="sourceLineNo">403</span>      LOG.debug("Starting WAL Procedure Store lease recovery");<a name="line.403"></a>
+<span class="sourceLineNo">404</span>      boolean afterFirstAttempt = false;<a name="line.404"></a>
+<span class="sourceLineNo">405</span>      while (isRunning()) {<a name="line.405"></a>
+<span class="sourceLineNo">406</span>        // Don't sleep before first attempt<a name="line.406"></a>
+<span class="sourceLineNo">407</span>        if (afterFirstAttempt) {<a name="line.407"></a>
+<span class="sourceLineNo">408</span>          LOG.trace("Sleep {} ms after first lease recovery attempt.",<a name="line.408"></a>
+<span class="sourceLineNo">409</span>              waitBeforeRoll);<a name="line.409"></a>
+<span class="sourceLineNo">410</span>          Threads.sleepWithoutInterrupt(waitBeforeRoll);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>        } else {<a name="line.411"></a>
+<span class="sourceLineNo">412</span>          afterFirstAttempt = true;<a name="line.412"></a>
+<span class="sourceLineNo">413</span>        }<a name="line.413"></a>
+<span class="sourceLineNo">414</span>        FileStatus[] oldLogs = getLogFiles();<a name="line.414"></a>
+<span class="sourceLineNo">415</span>        // Get Log-MaxID and recover lease on old logs<a name="line.415"></a>
+<span class="sourceLineNo">416</span>        try {<a name="line.416"></a>
+<span class="sourceLineNo">417</span>          flushLogId = initOldLogs(oldLogs);<a name="line.417"></a>
+<span class="sourceLineNo">418</span>        } catch (FileNotFoundException e) {<a name="line.418"></a>
+<span class="sourceLineNo">419</span>          LOG.warn("Someone else is active and deleted logs. retrying.", e);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>          continue;<a name="line.420"></a>
+<span class="sourceLineNo">421</span>        }<a name="line.421"></a>
+<span class="sourceLineNo">422</span><a name="line.422"></a>
+<span class="sourceLineNo">423</span>        // Create new state-log<a name="line.423"></a>
+<span class="sourceLineNo">424</span>        if (!rollWriter(flushLogId + 1)) {<a name="line.424"></a>
+<span class="sourceLineNo">425</span>          // someone else has already created this log<a name="line.425"></a>
+<span class="sourceLineNo">426</span>          LOG.debug("Someone else has already created log {}. Retrying.", flushLogId);<a name="line.426"></a>
+<span class="sourceLineNo">427</span>          continue;<a name="line.427"></a>
+<span class="sourceLineNo">428</span>        }<a name="line.428"></a>
+<span class="sourceLineNo">429</span><a name="line.429"></a>
+<span class="sourceLineNo">430</span>        // We have the lease on the log<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        oldLogs = getLogFiles();<a name="line.431"></a>
+<span class="sourceLineNo">432</span>        if (getMaxLogId(oldLogs) &gt; flushLogId) {<a name="line.432"></a>
+<span class="sourceLineNo">433</span>          LOG.debug("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>          logs.getLast().removeFile(this.walArchiveDir);<a name="line.434"></a>
+<span class="sourceLineNo">435</span>          continue;<a name="line.435"></a>
+<span class="sourceLineNo">436</span>        }<a name="line.436"></a>
+<span class="sourceLineNo">437</span><a name="line.437"></a>
+<span class="sourceLineNo">438</span>        LOG.debug("Lease acquired for flushLogId={}", flushLogId);<a name="line.438"></a>
+<span class="sourceLineNo">439</span>        break;<a name="line.439"></a>
+<span class="sourceLineNo">440</span>      }<a name="line.440"></a>
+<span class="sourceLineNo">441</span>    } finally {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>      lock.unlock();<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    }<a name="line.443"></a>
+<span class="sourceLineNo">444</span>  }<a name="line.444"></a>
+<span class="sourceLineNo">445</span><a name="line.445"></a>
+<span class="sourceLineNo">446</span>  @Override<a name="line.446"></a>
+<span class="sourceLineNo">447</span>  public void load(ProcedureLoader loader) throws IOException {<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    lock.lock();<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    try {<a name="line.449"></a>
+<span class="sourceLineNo">450</span>      if (logs.isEmpty()) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>        throw new IllegalStateException("recoverLease() must be called before loading data");<a name="line.451"></a>
+<span class="sourceLineNo">452</span>      }<a name="line.452"></a>
+<span class="sourceLineNo">453</span><a name="line.453"></a>
+<span class="sourceLineNo">454</span>      // Nothing to do, If we have only the current log.<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      if (logs.size() == 1) {<a name="line.455"></a>
+<span class="sourceLineNo">456</span>        LOG.debug("No state logs to replay.");<a name="line.456"></a>
+<span class="sourceLineNo">457</span>        loader.setMaxProcId(0);<a name="line.457"></a>
+<span class="sourceLineNo">458</span>        loading.set(false);<a name="line.458"></a>
+<span class="sourceLineNo">459</span>        return;<a name="line.459"></a>
+<span class="sourceLineNo">460</span>      }<a name="line.460"></a>
+<span class="sourceLineNo">461</span><a name="line.461"></a>
+<span class="sourceLineNo">462</span>      // Load the old logs<a name="line.462"></a>
+<span class="sourceLineNo">463</span>      Iterator&lt;ProcedureWALFile&gt; it = logs.descendingIterator();<a name="line.463"></a>
+<span class="sourceLineNo">464</span>      it.next(); // Skip the current log<a name="line.464"></a>
 <span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>        @Override<a name="line.466"></a>
-<span class="sourceLineNo">467</span>        public void setMaxProcId(long maxProcId) {<a name="line.467"></a>
-<span class="sourceLineNo">468</span>          loader.setMaxProcId(maxProcId);<a name="line.468"></a>
-<span class="sourceLineNo">469</span>        }<a name="line.469"></a>
-<span class="sourceLineNo">470</span><a name="line.470"></a>
-<span class="sourceLineNo">471</span>        @Override<a name="line.471"></a>
-<span class="sourceLineNo">472</span>        public void load(ProcedureIterator procIter) throws IOException {<a name="line.472"></a>
-<span class="sourceLineNo">473</span>          loader.load(procIter);<a name="line.473"></a>
-<span class="sourceLineNo">474</span>        }<a name="line.474"></a>
-<span class="sourceLineNo">475</span><a name="line.475"></a>
-<span class="sourceLineNo">476</span>        @Override<a name="line.476"></a>
-<span class="sourceLineNo">477</span>        public void handleCorrupted(ProcedureIterator procIter) throws IOException {<a name="line.477"></a>
-<span class="sourceLineNo">478</span>          loader.handleCorrupted(procIter);<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        }<a name="line.479"></a>
-<span class="sourceLineNo">480</span><a name="line.480"></a>
-<span class="sourceLineNo">481</span>        @Override<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        public void markCorruptedWAL(ProcedureWALFile log, IOException e) {<a name="line.482"></a>
-<span class="sourceLineNo">483</span>          if (corruptedLogs == null) {<a name="line.483"></a>
-<span class="sourceLineNo">484</span>            corruptedLogs = new HashSet&lt;&gt;();<a name="line.484"></a>
-<span class="sourceLineNo">485</span>          }<a name="line.485"></a>
-<span class="sourceLineNo">486</span>          corruptedLogs.add(log);<a name="line.486"></a>
-<span class="sourceLineNo">487</span>          // TODO: sideline corrupted log<a name="line.487"></a>
-<span class="sourceLineNo">488</span>        }<a name="line.488"></a>
-<span class="sourceLineNo">489</span>      });<a name="line.489"></a>
-<span class="sourceLineNo">490</span>      // if we fail when loading, we should prevent persisting the storeTracker later in the stop<a name="line.490"></a>
-<span class="sourceLineNo">491</span>      // method. As it may happen that, we have finished constructing the modified and deleted bits,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>      // but before we call resetModified, we fail, then if we persist the storeTracker then when<a name="line.492"></a>
-<span class="sourceLineNo">493</span>      // restarting, we will consider that all procedures have been included in this file and delete<a name="line.493"></a>
-<span class="sourceLineNo">494</span>      // all the previous files. Obviously this not correct. So here we will only set loading to<a name="line.494"></a>
-<span class="sourceLineNo">495</span>      // false when we successfully loaded all the procedures, and when closing we will skip<a name="line.495"></a>
-<span class="sourceLineNo">496</span>      // persisting the store tracker. And also, this will prevent the sync thread to do<a name="line.496"></a>
-<span class="sourceLineNo">497</span>      // periodicRoll, where we may also clean old logs.<a name="line.497"></a>
-<span class="sourceLineNo">498</span>      loading.set(false);<a name="line.498"></a>
-<span class="sourceLineNo">499</span>      // try to cleanup inactive wals and complete the operation<a name="line.499"></a>
-<span class="sourceLineNo">500</span>      buildHoldingCleanupTracker();<a name="line.500"></a>
-<span class="sourceLineNo">501</span>      tryCleanupLogsOnLoad();<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    } finally {<a name="line.502"></a>
-<span class="sourceLineNo">503</span>      lock.unlock();<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    }<a name="line.504"></a>
-<span class="sourceLineNo">505</span>  }<a name="line.505"></a>
-<span class="sourceLineNo">506</span><a name="line.506"></a>
-<span class="sourceLineNo">507</span>  private void tryCleanupLogsOnLoad() {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>    // nothing to cleanup.<a name="line.508"></a>
-<span class="sourceLineNo">509</span>    if (logs.size() &lt;= 1) {<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      return;<a name="line.510"></a>
-<span class="sourceLineNo">511</span>    }<a name="line.511"></a>
-<span class="sourceLineNo">512</span><a name="line.512"></a>
-<span class="sourceLineNo">513</span>    // the config says to not cleanup wals on load.<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    if (!conf.getBoolean(EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY,<a name="line.514"></a>
-<span class="sourceLineNo">515</span>      DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY)) {<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      LOG.debug("WALs cleanup on load is not enabled: " + getActiveLogs());<a name="line.516"></a>
-<span class="sourceLineNo">517</span>      return;<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    }<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    try {<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      periodicRoll();<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } catch (IOException e) {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      LOG.warn("Unable to cleanup logs on load: " + e.getMessage(), e);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  @Override<a name="line.527"></a>
-<span class="sourceLineNo">528</span>  public void insert(Procedure&lt;?&gt; proc, Procedure&lt;?&gt;[] subprocs) {<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    if (LOG.isTraceEnabled()) {<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      LOG.trace("Insert " + proc + ", subproc=" + Arrays.toString(subprocs));<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    }<a name="line.531"></a>
-<span class="sourceLineNo">532</span><a name="line.532"></a>
-<span class="sourceLineNo">533</span>    ByteSlot slot = acquireSlot();<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    try {<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      // Serialize the insert<a name="line.535"></a>
-<span class="sourceLineNo">536</span>      long[] subProcIds = null;<a name="line.536"></a>
-<span class="sourceLineNo">537</span>      if (subprocs != null) {<a name="line.537"></a>
-<span class="sourceLineNo">538</span>        ProcedureWALFormat.writeInsert(slot, proc, subprocs);<a name="line.538"></a>
-<span class="sourceLineNo">539</span>        subProcIds = new long[subprocs.length];<a name="line.539"></a>
-<span class="sourceLineNo">540</span>        for (int i = 0; i &lt; subprocs.length; ++i) {<a name="line.540"></a>
-<span class="sourceLineNo">541</span>          subProcIds[i] = subprocs[i].getProcId();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>        }<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      } else {<a name="line.543"></a>
-<span class="sourceLineNo">544</span>        assert !proc.hasParent();<a name="line.544"></a>
-<span class="sourceLineNo">545</span>        ProcedureWALFormat.writeInsert(slot, proc);<a name="line.545"></a>
-<span class="sourceLineNo">546</span>      }<a name="line.546"></a>
-<span class="sourceLineNo">547</span><a name="line.547"></a>
-<span class="sourceLineNo">548</span>      // Push the transaction data and wait until it is persisted<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      pushData(PushType.INSERT, slot, proc.getProcId(), subProcIds);<a name="line.549"></a>
-<span class="sourceLineNo">550</span>    } catch (IOException e) {<a name="line.550"></a>
-<span class="sourceLineNo">551</span>      // We are not able to serialize the procedure.<a name="line.551"></a>
-<span class="sourceLineNo">552</span>      // this is a code error, and we are not able to go on.<a name="line.552"></a>
-<span class="sourceLineNo">553</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: proc=" +<a name="line.553"></a>
-<span class="sourceLineNo">554</span>          proc + ", subprocs=" + Arrays.toString(subprocs), e);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>      throw new RuntimeException(e);<a name="line.555"></a>
-<span class="sourceLineNo">556</span>    } finally {<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      releaseSlot(slot);<a name="line.557"></a>
-<span class="sourceLineNo">558</span>    }<a name="line.558"></a>
-<span class="sourceLineNo">559</span>  }<a name="line.559"></a>
-<span class="sourceLineNo">560</span><a name="line.560"></a>
-<span class="sourceLineNo">561</span>  @Override<a name="line.561"></a>
-<span class="sourceLineNo">562</span>  public void insert(Procedure&lt;?&gt;[] procs) {<a name="line.562"></a>
-<span class="sourceLineNo">563</span>    if (LOG.isTraceEnabled()) {<a name="line.563"></a>
-<span class="sourceLineNo">564</span>      LOG.trace("Insert " + Arrays.toString(procs));<a name="line.564"></a>
-<span class="sourceLineNo">565</span>    }<a name="line.565"></a>
-<span class="sourceLineNo">566</span><a name="line.566"></a>
-<span class="sourceLineNo">567</span>    ByteSlot slot = acquireSlot();<a name="line.567"></a>
-<span class="sourceLineNo">568</span>    try {<a name="line.568"></a>
-<span class="sourceLineNo">569</span>      // Serialize the insert<a name="line.569"></a>
-<span class="sourceLineNo">570</span>      long[] procIds = new long[procs.length];<a name="line.570"></a>
-<span class="sourceLineNo">571</span>      for (int i = 0; i &lt; procs.length; ++i) {<a name="line.571"></a>
-<span class="sourceLineNo">572</span>        assert !procs[i].hasParent();<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        procIds[i] = procs[i].getProcId();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        ProcedureWALFormat.writeInsert(slot, procs[i]);<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      // Push the transaction data and wait until it is persisted<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      pushData(PushType.INSERT, slot, Procedure.NO_PROC_ID, procIds);<a name="line.578"></a>
-<span class="sourceLineNo">579</span>    } catch (IOException e) {<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      // We are not able to serialize the procedure.<a name="line.580"></a>
-<span class="sourceLineNo">581</span>      // this is a code error, and we are not able to go on.<a name="line.581"></a>
-<span class="sourceLineNo">582</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: " +<a name="line.582"></a>
-<span class="sourceLineNo">583</span>          Arrays.toString(procs), e);<a name="line.583"></a>
-<span class="sourceLineNo">584</span>      throw new RuntimeException(e);<a name="line.584"></a>
-<span class="sourceLineNo">585</span>    } finally {<a name="line.585"></a>
-<span class="sourceLineNo">586</span>      releaseSlot(slot);<a name="line.586"></a>
-<span class="sourceLineNo">587</span>    }<a name="line.587"></a>
-<span class="sourceLineNo">588</span>  }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>  @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>  public void update(Procedure&lt;?&gt; proc) {<a name="line.591"></a>
-<span class="sourceLineNo">592</span>    if (LOG.isTraceEnabled()) {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>      LOG.trace("Update " + proc);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>    }<a name="line.594"></a>
-<span class="sourceLineNo">595</span><a name="line.595"></a>
-<span class="sourceLineNo">596</span>    ByteSlot slot = acquireSlot();<a name="line.596"></a>
-<span class="sourceLineNo">597</span>    try {<a name="line.597"></a>
-<span class="sourceLineNo">598</span>      // Serialize the update<a name="line.598"></a>
-<span class="sourceLineNo">599</span>      ProcedureWALFormat.writeUpdate(slot, proc);<a name="line.599"></a>
-<span class="sourceLineNo">600</span><a name="line.600"></a>
-<span class="sourceLineNo">601</span>      // Push the transaction data and wait until it is persisted<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      pushData(PushType.UPDATE, slot, proc.getProcId(), null);<a name="line.602"></a>
-<span class="sourceLineNo">603</span>    } catch (IOException e) {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>      // We are not able to serialize the procedure.<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      // this is a code error, and we are not able to go on.<a name="line.605"></a>
-<span class="sourceLineNo">606</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      throw new RuntimeException(e);<a name="line.607"></a>
-<span class="sourceLineNo">608</span>    } finally {<a name="line.608"></a>
-<span class="sourceLineNo">609</span>      releaseSlot(slot);<a name="line.609"></a>
-<span class="sourceLineNo">610</span>    }<a name="line.610"></a>
-<span class="sourceLineNo">611</span>  }<a name="line.611"></a>
-<span class="sourceLineNo">612</span><a name="line.612"></a>
-<span class="sourceLineNo">613</span>  @Override<a name="line.613"></a>
-<span class="sourceLineNo">614</span>  public void delete(long procId) {<a name="line.614"></a>
-<span class="sourceLineNo">615</span>    LOG.trace("Delete {}", procId);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    ByteSlot slot = acquireSlot();<a name="line.616"></a>
-<span class="sourceLineNo">617</span>    try {<a name="line.617"></a>
-<span class="sourceLineNo">618</span>      // Serialize the delete<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      ProcedureWALFormat.writeDelete(slot, procId);<a name="line.619"></a>
-<span class="sourceLineNo">620</span><a name="line.620"></a>
-<span class="sourceLineNo">621</span>      // Push the transaction data and wait until it is persisted<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      pushData(PushType.DELETE, slot, procId, null);<a name="line.622"></a>
-<span class="sourceLineNo">623</span>    } catch (IOException e) {<a name="line.623"></a>
-<span class="sourceLineNo">624</span>      // We are not able to serialize the procedure.<a name="line.624"></a>
-<span class="sourceLineNo">625</span>      // this is a code error, and we are not able to go on.<a name="line.625"></a>
-<span class="sourceLineNo">626</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + procId, e);<a name="line.626"></a>
-<span class="sourceLineNo">627</span>      throw new RuntimeException(e);<a name="line.627"></a>
-<span class="sourceLineNo">628</span>    } finally {<a name="line.628"></a>
-<span class="sourceLineNo">629</span>      releaseSlot(slot);<a name="line.629"></a>
-<span class="sourceLineNo">630</span>    }<a name="line.630"></a>
-<span class="sourceLineNo">631</span>  }<a name="line.631"></a>
-<span class="sourceLineNo">632</span><a name="line.632"></a>
-<span class="sourceLineNo">633</span>  @Override<a name="line.633"></a>
-<span class="sourceLineNo">634</span>  public void delete(Procedure&lt;?&gt; proc, long[] subProcIds) {<a name="line.634"></a>
-<span class="sourceLineNo">635</span>    assert proc != null : "expected a non-null procedure";<a name="line.635"></a>
-<span class="sourceLineNo">636</span>    assert subProcIds != null &amp;&amp; subProcIds.length &gt; 0 : "expected subProcIds";<a name="line.636"></a>
-<span class="sourceLineNo">637</span>    if (LOG.isTraceEnabled()) {<a name="line.637"></a>
-<span class="sourceLineNo">638</span>      LOG.trace("Update " + proc + " and Delete " + Arrays.toString(subProcIds));<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    }<a name="line.639"></a>
-<span class="sourceLineNo">640</span><a name="line.640"></a>
-<span class="sourceLineNo">641</span>    ByteSlot slot = acquireSlot();<a name="line.641"></a>
-<span class="sourceLineNo">642</span>    try {<a name="line.642"></a>
-<span class="sourceLineNo">643</span>      // Serialize the delete<a name="line.643"></a>
-<span class="sourceLineNo">644</span>      ProcedureWALFormat.writeDelete(slot, proc, subProcIds);<a name="line.644"></a>
-<span class="sourceLineNo">645</span><a name="line.645"></a>
-<span class="sourceLineNo">646</span>      // Push the transaction data and wait until it is persisted<a name="line.646"></a>
-<span class="sourceLineNo">647</span>      pushData(PushType.DELETE, slot, proc.getProcId(), subProcIds);<a name="line.647"></a>
-<span class="sourceLineNo">648</span>    } catch (IOException e) {<a name="line.648"></a>
-<span class="sourceLineNo">649</span>      // We are not able to serialize the procedure.<a name="line.649"></a>
-<span class="sourceLineNo">650</span>      // this is a code error, and we are not able to go on.<a name="line.650"></a>
-<span class="sourceLineNo">651</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.651"></a>
-<span class="sourceLineNo">652</span>      throw new RuntimeException(e);<a name="line.652"></a>
-<span class="sourceLineNo">653</span>    } finally {<a name="line.653"></a>
-<span class="sourceLineNo">654</span>      releaseSlot(slot);<a name="line.654"></a>
-<span class="sourceLineNo">655</span>    }<a name="line.655"></a>
-<span class="sourceLineNo">656</span>  }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>  @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>  public void delete(final long[] procIds, final int offset, final int count) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>    if (count == 0) {<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      return;<a name="line.661"></a>
-<span class="sourceLineNo">662</span>    }<a name="line.662"></a>
-<span class="sourceLineNo">663</span><a name="line.663"></a>
-<span class="sourceLineNo">664</span>    if (offset == 0 &amp;&amp; count == procIds.length) {<a name="line.664"></a>
-<span class="sourceLineNo">665</span>      delete(procIds);<a name="line.665"></a>
-<span class="sourceLineNo">666</span>    } else if (count == 1) {<a name="line.666"></a>
-<span class="sourceLineNo">667</span>      delete(procIds[offset]);<a name="line.667"></a>
-<span class="sourceLineNo">668</span>    } else {<a name="line.668"></a>
-<span class="sourceLineNo">669</span>      delete(Arrays.copyOfRange(procIds, offset, offset + count));<a name="line.669"></a>
-<span class="sourceLineNo">670</span>    }<a name="line.670"></a>
-<span class="sourceLineNo">671</span>  }<a name="line.671"></a>
-<span class="sourceLineNo">672</span><a name="line.672"></a>
-<span class="sourceLineNo">673</span>  private void delete(long[] procIds) {<a name="line.673"></a>
-<span class="sourceLineNo">674</span>    if (LOG.isTraceEnabled()) {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>      LOG.trace("Delete " + Arrays.toString(procIds));<a name="line.675"></a>
-<span class="sourceLineNo">676</span>    }<a name="line.676"></a>
-<span class="sourceLineNo">677</span><a name="line.677"></a>
-<span class="sourceLineNo">678</span>    final ByteSlot slot = acquireSlot();<a name="line.678"></a>
-<span class="sourceLineNo">679</span>    try {<a name="line.679"></a>
-<span class="sourceLineNo">680</span>      // Serialize the delete<a name="line.680"></a>
-<span class="sourceLineNo">681</span>      for (int i = 0; i &lt; procIds.length; ++i) {<a name="line.681"></a>
-<span class="sourceLineNo">682</span>        ProcedureWALFormat.writeDelete(slot, procIds[i]);<a name="line.682"></a>
-<span class="sourceLineNo">683</span>      }<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>      // Push the transaction data and wait until it is persisted<a name="line.685"></a>
-<span class="sourceLineNo">686</span>      pushData(PushType.DELETE, slot, Procedure.NO_PROC_ID, procIds);<a name="line.686"></a>
-<span class="sourceLineNo">687</span>    } catch (IOException e) {<a name="line.687"></a>
-<span class="sourceLineNo">688</span>      // We are not able to serialize the procedure.<a name="line.688"></a>
-<span class="sourceLineNo">689</span>      // this is a code error, and we are not able to go on.<a name="line.689"></a>
-<span class="sourceLineNo">690</span>      LOG.error("Unable to serialize the procedures: " + Arrays.toString(procIds), e);<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      throw new RuntimeException(e);<a name="line.691"></a>
-<span class="sourceLineNo">692</span>    } finally {<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      releaseSlot(slot);<a name="line.693"></a>
-<span class="sourceLineNo">694</span>    }<a name="line.694"></a>
-<span class="sourceLineNo">695</span>  }<a name="line.695"></a>
-<span class="sourceLineNo">696</span><a name="line.696"></a>
-<span class="sourceLineNo">697</span>  private ByteSlot acquireSlot() {<a name="line.697"></a>
-<span class="sourceLineNo">698</span>    ByteSlot slot = slotsCache.poll();<a name="line.698"></a>
-<span class="sourceLineNo">699</span>    return slot != null ? slot : new ByteSlot();<a name="line.699"></a>
-<span class="sourceLineNo">700</span>  }<a name="line.700"></a>
-<span class="sourceLineNo">701</span><a name="line.701"></a>
-<span class="sourceLineNo">702</span>  private void releaseSlot(final ByteSlot slot) {<a name="line.702"></a>
-<span class="sourceLineNo">703</span>    slot.reset();<a name="line.703"></a>
-<span class="sourceLineNo">704</span>    slotsCache.offer(slot);<a name="line.704"></a>
-<span class="sourceLineNo">705</span>  }<a name="line.705"></a>
-<span class="sourceLineNo">706</span><a name="line.706"></a>
-<span class="sourceLineNo">707</span>  private enum PushType { INSERT, UPDATE, DELETE }<a name="line.707"></a>
+<span class="sourceLineNo">466</span>      ProcedureWALFormat.load(it, storeTracker, new ProcedureWALFormat.Loader() {<a name="line.466"></a>
+<span class="sourceLineNo">467</span><a name="line.467"></a>
+<span class="sourceLineNo">468</span>        @Override<a name="line.468"></a>
+<span class="sourceLineNo">469</span>        public void setMaxProcId(long maxProcId) {<a name="line.469"></a>
+<span class="sourceLineNo">470</span>          loader.setMaxProcId(maxProcId);<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        }<a name="line.471"></a>
+<span class="sourceLineNo">472</span><a name="line.472"></a>
+<span class="sourceLineNo">473</span>        @Override<a name="line.473"></a>
+<span class="sourceLineNo">474</span>        public void load(ProcedureIterator procIter) throws IOException {<a name="line.474"></a>
+<span class="sourceLineNo">475</span>          loader.load(procIter);<a name="line.475"></a>
+<span class="sourceLineNo">476</span>        }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>        @Override<a name="line.478"></a>
+<span class="sourceLineNo">479</span>        public void handleCorrupted(ProcedureIterator procIter) throws IOException {<a name="line.479"></a>
+<span class="sourceLineNo">480</span>          loader.handleCorrupted(procIter);<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        }<a name="line.481"></a>
+<span class="sourceLineNo">482</span><a name="line.482"></a>
+<span class="sourceLineNo">483</span>        @Override<a name="line.483"></a>
+<span class="sourceLineNo">484</span>        public void markCorruptedWAL(ProcedureWALFile log, IOException e) {<a name="line.484"></a>
+<span class="sourceLineNo">485</span>          if (corruptedLogs == null) {<a name="line.485"></a>
+<span class="sourceLineNo">486</span>            corruptedLogs = new HashSet&lt;&gt;();<a name="line.486"></a>
+<span class="sourceLineNo">487</span>          }<a name="line.487"></a>
+<span class="sourceLineNo">488</span>          corruptedLogs.add(log);<a name="line.488"></a>
+<span class="sourceLineNo">489</span>          // TODO: sideline corrupted log<a name="line.489"></a>
+<span class="sourceLineNo">490</span>        }<a name="line.490"></a>
+<span class="sourceLineNo">491</span>      });<a name="line.491"></a>
+<span class="sourceLineNo">492</span>      // if we fail when loading, we should prevent persisting the storeTracker later in the stop<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      // method. As it may happen that, we have finished constructing the modified and deleted bits,<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      // but before we call resetModified, we fail, then if we persist the storeTracker then when<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      // restarting, we will consider that all procedures have been included in this file and delete<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      // all the previous files. Obviously this not correct. So here we will only set loading to<a name="line.496"></a>
+<span class="sourceLineNo">497</span>      // false when we successfully loaded all the procedures, and when closing we will skip<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      // persisting the store tracker. And also, this will prevent the sync thread to do<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      // periodicRoll, where we may also clean old logs.<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loading.set(false);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      // try to cleanup inactive wals and complete the operation<a name="line.501"></a>
+<span class="sourceLineNo">502</span>      buildHoldingCleanupTracker();<a name="line.502"></a>
+<span class="sourceLineNo">503</span>      tryCleanupLogsOnLoad();<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    } finally {<a name="line.504"></a>
+<span class="sourceLineNo">505</span>      lock.unlock();<a name="line.505"></a>
+<span class="sourceLineNo">506</span>    }<a name="line.506"></a>
+<span class="sourceLineNo">507</span>  }<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>  private void tryCleanupLogsOnLoad() {<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    // nothing to cleanup.<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    if (logs.size() &lt;= 1) {<a name="line.511"></a>
+<span class="sourceLineNo">512</span>      return;<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
+<span class="sourceLineNo">514</span><a name="line.514"></a>
+<span class="sourceLineNo">515</span>    // the config says to not cleanup wals on load.<a name="line.515"></a>
+<span class="sourceLineNo">516</span>    if (!conf.getBoolean(EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY,<a name="line.516"></a>
+<span class="sourceLineNo">517</span>      DEFAULT_EXEC_WAL_CLEANUP_ON_LOAD_CONF_KEY)) {<a name="line.517"></a>
+<span class="sourceLineNo">518</span>      LOG.debug("WALs cleanup on load is not enabled: " + getActiveLogs());<a name="line.518"></a>
+<span class="sourceLineNo">519</span>      return;<a name="line.519"></a>
+<span class="sourceLineNo">520</span>    }<a name="line.520"></a>
+<span class="sourceLineNo">521</span><a name="line.521"></a>
+<span class="sourceLineNo">522</span>    try {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>      periodicRoll();<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    } catch (IOException e) {<a name="line.524"></a>
+<span class="sourceLineNo">525</span>      LOG.warn("Unable to cleanup logs on load: " + e.getMessage(), e);<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    }<a name="line.526"></a>
+<span class="sourceLineNo">527</span>  }<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>  @Override<a name="line.529"></a>
+<span class="sourceLineNo">530</span>  public void insert(Procedure&lt;?&gt; proc, Procedure&lt;?&gt;[] subprocs) {<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    if (LOG.isTraceEnabled()) {<a name="line.531"></a>
+<span class="sourceLineNo">532</span>      LOG.trace("Insert " + proc + ", subproc=" + Arrays.toString(subprocs));<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    }<a name="line.533"></a>
+<span class="sourceLineNo">534</span><a name="line.534"></a>
+<span class="sourceLineNo">535</span>    ByteSlot slot = acquireSlot();<a name="line.535"></a>
+<span class="sourceLineNo">536</span>    try {<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      // Serialize the insert<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      long[] subProcIds = null;<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      if (subprocs != null) {<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        ProcedureWALFormat.writeInsert(slot, proc, subprocs);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>        subProcIds = new long[subprocs.length];<a name="line.541"></a>
+<span class="sourceLineNo">542</span>        for (int i = 0; i &lt; subprocs.length; ++i) {<a name="line.542"></a>
+<span class="sourceLineNo">543</span>          subProcIds[i] = subprocs[i].getProcId();<a name="line.543"></a>
+<span class="sourceLineNo">544</span>        }<a name="line.544"></a>
+<span class="sourceLineNo">545</span>      } else {<a name="line.545"></a>
+<span class="sourceLineNo">546</span>        assert !proc.hasParent();<a name="line.546"></a>
+<span class="sourceLineNo">547</span>        ProcedureWALFormat.writeInsert(slot, proc);<a name="line.547"></a>
+<span class="sourceLineNo">548</span>      }<a name="line.548"></a>
+<span class="sourceLineNo">549</span><a name="line.549"></a>
+<span class="sourceLineNo">550</span>      // Push the transaction data and wait until it is persisted<a name="line.550"></a>
+<span class="sourceLineNo">551</span>      pushData(PushType.INSERT, slot, proc.getProcId(), subProcIds);<a name="line.551"></a>
+<span class="sourceLineNo">552</span>    } catch (IOException e) {<a name="line.552"></a>
+<span class="sourceLineNo">553</span>      // We are not able to serialize the procedure.<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      // this is a code error, and we are not able to go on.<a name="line.554"></a>
+<span class="sourceLineNo">555</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: proc=" +<a name="line.555"></a>
+<span class="sourceLineNo">556</span>          proc + ", subprocs=" + Arrays.toString(subprocs), e);<a name="line.556"></a>
+<span class="sourceLineNo">557</span>      throw new RuntimeException(e);<a name="line.557"></a>
+<span class="sourceLineNo">558</span>    } finally {<a name="line.558"></a>
+<span class="sourceLineNo">559</span>      releaseSlot(slot);<a name="line.559"></a>
+<span class="sourceLineNo">560</span>    }<a name="line.560"></a>
+<span class="sourceLineNo">561</span>  }<a name="line.561"></a>
+<span class="sourceLineNo">562</span><a name="line.562"></a>
+<span class="sourceLineNo">563</span>  @Override<a name="line.563"></a>
+<span class="sourceLineNo">564</span>  public void insert(Procedure&lt;?&gt;[] procs) {<a name="line.564"></a>
+<span class="sourceLineNo">565</span>    if (LOG.isTraceEnabled()) {<a name="line.565"></a>
+<span class="sourceLineNo">566</span>      LOG.trace("Insert " + Arrays.toString(procs));<a name="line.566"></a>
+<span class="sourceLineNo">567</span>    }<a name="line.567"></a>
+<span class="sourceLineNo">568</span><a name="line.568"></a>
+<span class="sourceLineNo">569</span>    ByteSlot slot = acquireSlot();<a name="line.569"></a>
+<span class="sourceLineNo">570</span>    try {<a name="line.570"></a>
+<span class="sourceLineNo">571</span>      // Serialize the insert<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      long[] procIds = new long[procs.length];<a name="line.572"></a>
+<span class="sourceLineNo">573</span>      for (int i = 0; i &lt; procs.length; ++i) {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        assert !procs[i].hasParent();<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        procIds[i] = procs[i].getProcId();<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        ProcedureWALFormat.writeInsert(slot, procs[i]);<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      // Push the transaction data and wait until it is persisted<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      pushData(PushType.INSERT, slot, Procedure.NO_PROC_ID, procIds);<a name="line.580"></a>
+<span class="sourceLineNo">581</span>    } catch (IOException e) {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>      // We are not able to serialize the procedure.<a name="line.582"></a>
+<span class="sourceLineNo">583</span>      // this is a code error, and we are not able to go on.<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize one of the procedure: " +<a name="line.584"></a>
+<span class="sourceLineNo">585</span>          Arrays.toString(procs), e);<a name="line.585"></a>
+<span class="sourceLineNo">586</span>      throw new RuntimeException(e);<a name="line.586"></a>
+<span class="sourceLineNo">587</span>    } finally {<a name="line.587"></a>
+<span class="sourceLineNo">588</span>      releaseSlot(slot);<a name="line.588"></a>
+<span class="sourceLineNo">589</span>    }<a name="line.589"></a>
+<span class="sourceLineNo">590</span>  }<a name="line.590"></a>
+<span class="sourceLineNo">591</span><a name="line.591"></a>
+<span class="sourceLineNo">592</span>  @Override<a name="line.592"></a>
+<span class="sourceLineNo">593</span>  public void update(Procedure&lt;?&gt; proc) {<a name="line.593"></a>
+<span class="sourceLineNo">594</span>    if (LOG.isTraceEnabled()) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>      LOG.trace("Update " + proc);<a name="line.595"></a>
+<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
+<span class="sourceLineNo">597</span><a name="line.597"></a>
+<span class="sourceLineNo">598</span>    ByteSlot slot = acquireSlot();<a name="line.598"></a>
+<span class="sourceLineNo">599</span>    try {<a name="line.599"></a>
+<span class="sourceLineNo">600</span>      // Serialize the update<a name="line.600"></a>
+<span class="sourceLineNo">601</span>      ProcedureWALFormat.writeUpdate(slot, proc);<a name="line.601"></a>
+<span class="sourceLineNo">602</span><a name="line.602"></a>
+<span class="sourceLineNo">603</span>      // Push the transaction data and wait until it is persisted<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      pushData(PushType.UPDATE, slot, proc.getProcId(), null);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    } catch (IOException e) {<a name="line.605"></a>
+<span class="sourceLineNo">606</span>      // We are not able to serialize the procedure.<a name="line.606"></a>
+<span class="sourceLineNo">607</span>      // this is a code error, and we are not able to go on.<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      throw new RuntimeException(e);<a name="line.609"></a>
+<span class="sourceLineNo">610</span>    } finally {<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      releaseSlot(slot);<a name="line.611"></a>
+<span class="sourceLineNo">612</span>    }<a name="line.612"></a>
+<span class="sourceLineNo">613</span>  }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>  @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>  public void delete(long procId) {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>    LOG.trace("Delete {}", procId);<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    ByteSlot slot = acquireSlot();<a name="line.618"></a>
+<span class="sourceLineNo">619</span>    try {<a name="line.619"></a>
+<span class="sourceLineNo">620</span>      // Serialize the delete<a name="line.620"></a>
+<span class="sourceLineNo">621</span>      ProcedureWALFormat.writeDelete(slot, procId);<a name="line.621"></a>
+<span class="sourceLineNo">622</span><a name="line.622"></a>
+<span class="sourceLineNo">623</span>      // Push the transaction data and wait until it is persisted<a name="line.623"></a>
+<span class="sourceLineNo">624</span>      pushData(PushType.DELETE, slot, procId, null);<a name="line.624"></a>
+<span class="sourceLineNo">625</span>    } catch (IOException e) {<a name="line.625"></a>
+<span class="sourceLineNo">626</span>      // We are not able to serialize the procedure.<a name="line.626"></a>
+<span class="sourceLineNo">627</span>      // this is a code error, and we are not able to go on.<a name="line.627"></a>
+<span class="sourceLineNo">628</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + procId, e);<a name="line.628"></a>
+<span class="sourceLineNo">629</span>      throw new RuntimeException(e);<a name="line.629"></a>
+<span class="sourceLineNo">630</span>    } finally {<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      releaseSlot(slot);<a name="line.631"></a>
+<span class="sourceLineNo">632</span>    }<a name="line.632"></a>
+<span class="sourceLineNo">633</span>  }<a name="line.633"></a>
+<span class="sourceLineNo">634</span><a name="line.634"></a>
+<span class="sourceLineNo">635</span>  @Override<a name="line.635"></a>
+<span class="sourceLineNo">636</span>  public void delete(Procedure&lt;?&gt; proc, long[] subProcIds) {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>    assert proc != null : "expected a non-null procedure";<a name="line.637"></a>
+<span class="sourceLineNo">638</span>    assert subProcIds != null &amp;&amp; subProcIds.length &gt; 0 : "expected subProcIds";<a name="line.638"></a>
+<span class="sourceLineNo">639</span>    if (LOG.isTraceEnabled()) {<a name="line.639"></a>
+<span class="sourceLineNo">640</span>      LOG.trace("Update " + proc + " and Delete " + Arrays.toString(subProcIds));<a name="line.640"></a>
+<span class="sourceLineNo">641</span>    }<a name="line.641"></a>
+<span class="sourceLineNo">642</span><a name="line.642"></a>
+<span class="sourceLineNo">643</span>    ByteSlot slot = acquireSlot();<a name="line.643"></a>
+<span class="sourceLineNo">644</span>    try {<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      // Serialize the delete<a name="line.645"></a>
+<span class="sourceLineNo">646</span>      ProcedureWALFormat.writeDelete(slot, proc, subProcIds);<a name="line.646"></a>
+<span class="sourceLineNo">647</span><a name="line.647"></a>
+<span class="sourceLineNo">648</span>      // Push the transaction data and wait until it is persisted<a name="line.648"></a>
+<span class="sourceLineNo">649</span>      pushData(PushType.DELETE, slot, proc.getProcId(), subProcIds);<a name="line.649"></a>
+<span class="sourceLineNo">650</span>    } catch (IOException e) {<a name="line.650"></a>
+<span class="sourceLineNo">651</span>      // We are not able to serialize the procedure.<a name="line.651"></a>
+<span class="sourceLineNo">652</span>      // this is a code error, and we are not able to go on.<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      LOG.error(HBaseMarkers.FATAL, "Unable to serialize the procedure: " + proc, e);<a name="line.653"></a>
+<span class="sourceLineNo">654</span>      throw new RuntimeException(e);<a name="line.654"></a>
+<span class="sourceLineNo">655</span>    } finally {<a name="line.655"></a>
+<span class="sourceLineNo">656</span>      releaseSlot(slot);<a name="line.656"></a>
+<span class="sourceLineNo">657</span>    }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>  }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>  @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>  public void delete(final long[] procIds, final int offset, final int count) {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>    if (count == 0) {<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      return;<a name="line.663"></a>
+<span class="sourceLineNo">664</span>    }<a name="line.664"></a>
+<span class="sourceLineNo">665</span><a name="line.665"></a>
+<span class="sourceLineNo">666</span>    if (offset == 0 &amp;&amp; count == procIds.length) {<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      delete(procIds);<a name="line.667"></a>
+<span class="sourceLineNo">668</span>    } else if (count == 1) {<a name="line.668"></a>
+<span class="sourceLineNo">669</span>      delete(procIds[offset]);<a name="line.669"></a>
+<span class="sourceLineNo">670</span>    } else {<a name="line.670"></a>
+<span class="sourceLineNo">671</span>      delete(Arrays.copyOfRange(procIds, offset, offset + count));<a name="line.671"></a>
+<span class="sourceLineNo">672</span>    }<a name="line.672"></a>
+<span class="sourceLineNo">673</span>  }<a name="line.673"></a>
+<span class="sourceLineNo">674</span><a name="line.674"></a>
+<span class="sourceLineNo">675</span>  private void delete(long[] procIds) {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>    if (LOG.isTraceEnabled()) {<a name="line.676"></a>
+<span class="sourceLineNo">677</span>      LOG.trace("Delete " + Arrays.toString(procIds));<a name="line.677"></a>
+<span class="sourceLineNo">678</span>    }<a name="line.678"></a>
+<span class="sourceLineNo">679</span><a name="line.679"></a>
+<span class="sourceLineNo">680</span>    final ByteSlot slot = acquireSlot();<a name="line.680"></a>
+<span class="sourceLineNo">681</span>    try {<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      // Serialize the delete<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      for (int i = 0; i &lt; procIds.length; ++i) {<a name="line.683"></a>
+<span class="sourceLineNo">684</span>        ProcedureWALFormat.writeDelete(slot, procIds[i]);<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      }<a name="line.685"></a>
+<span class="sourceLineNo">686</span><a name="line.686"></a>
+<span class="sourceLineNo">687</span>      // Push the transaction data and wait until it is persisted<a name="line.687"></a>
+<span class="sourceLineNo">688</span>      pushData(PushType.DELETE, slot, Procedure.NO_PROC_ID, procIds);<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    } catch (IOException e) {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      // We are not able to serialize the procedure.<a name="line.690"></a>
+<span class="sourceLineNo">691</span>      // this is a code error, and we are not able to go on.<a name="line.691"></a>
+<span class="sourceLineNo">692</span>      LOG.error("Unable to serialize the procedures: " + Arrays.toString(procIds), e);<a name="line.692"></a>
+<span class="sourceLineNo">693</span>      throw new RuntimeException(e);<a name="line.693"></a>
+<span class="sourceLineNo">694</span>    } finally {<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      releaseSlot(slot);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>    }<a name="line.696"></a>
+<span class="sourceLineNo">697</span>  }<a name="line.697"></a>
+<span class="sourceLineNo">698</span><a name="line.698"></a>
+<span class="sourceLineNo">699</span>  private ByteSlot acquireSlot() {<a name="line.699"></a>
+<span class="sourceLineNo">700</span>    ByteSlot slot = slotsCache.poll();<a name="line.700"></a>
+<span class="sourceLineNo">701</span>    return slot != null ? slot : new ByteSlot();<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  }<a name="line.702"></a>
+<span class="sourceLineNo">703</span><a name="line.703"></a>
+<span class="sourceLineNo">704</span>  private void releaseSlot(final ByteSlot slot) {<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    slot.reset();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    slotsCache.offer(slot);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>  }<a name="line.707"></a>
 <span class="sourceLineNo">708</span><a name="line.708"></a>
-<span class="sourceLineNo">709</span>  private long pushData(final PushType type, final ByteSlot slot,<a name="line.709"></a>
-<span class="sourceLineNo">710</span>      final long procId, final long[] subProcIds) {<a name="line.710"></a>
-<span class="sourceLineNo">711</span>    if (!isRunning()) {<a name="line.711"></a>
-<span class="sourceLineNo">712</span>      throw new RuntimeException("the store must be running before inserting data");<a name="line.712"></a>
-<span class="sourceLineNo">713</span>    }<a name="line.713"></a>
-<span class="sourceLineNo">714</span>    if (logs.isEmpty()) {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>      throw new RuntimeException("recoverLease() must be called before inserting data");<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    }<a name="line.716"></a>
-<span class="sourceLineNo">717</span><a name="line.717"></a>
-<span class="sourceLineNo">718</span>    long logId = -1;<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    lock.lock();<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    try {<a name="line.720"></a>
-<span class="sourceLineNo">721</span>      // Wait for the sync to be completed<a name="line.721"></a>
-<span class="sourceLineNo">722</span>      while (true) {<a name="line.722"></a>
-<span class="sourceLineNo">723</span>        if (!isRunning()) {<a name="line.723"></a>
-<span class="sourceLineNo">724</span>          throw new RuntimeException("store no longer running");<a name="line.724"></a>
-<span class="sourceLineNo">725</span>        } else if (isSyncAborted()) {<a name="line.725"></a>
-<span class="sourceLineNo">726</span>          throw new RuntimeException("sync aborted", syncException.get());<a name="line.726"></a>
-<span class="sourceLineNo">727</span>        } else if (inSync.get()) {<a name="line.727"></a>
-<span class="sourceLineNo">728</span>          syncCond.await();<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        } else if (slotIndex &gt;= syncMaxSlot) {<a name="line.729"></a>
-<span class="sourceLineNo">730</span>          slotCond.signal();<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          syncCond.await();<a name="line.731"></a>
-<span class="sourceLineNo">732</span>        } else {<a name="line.732"></a>
-<span class="sourceLineNo">733</span>          break;<a name="line.733"></a>
-<span class="sourceLineNo">734</span>        }<a name="line.734"></a>
-<span class="sourceLineNo">735</span>      }<a name="line.735"></a>
-<span class="sourceLineNo">736</span><a name="line.736"></a>
-<span class="sourceLineNo">737</span>      final long pushSyncId = syncId.get();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>      updateStoreTracker(type, procId, subProcIds);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>      slots[slotIndex++] = slot;<a name="line.739"></a>
-<span class="sourceLineNo">740</span>      logId = flushLogId;<a name="line.740"></a>
-<span class="sourceLineNo">741</span><a name="line.741"></a>
-<span class="sourceLineNo">742</span>      // Notify that there is new data<a name="line.742"></a>
-<span class="sourceLineNo">743</span>      if (slotIndex == 1) {<a name="line.743"></a>
-<span class="sourceLineNo">744</span>        waitCond.signal();<a name="line.744"></a>
-<span class="sourceLineNo">745</span>      }<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>      // Notify that the slots are full<a name="line.747"></a>
-<span class="sourceLineNo">748</span>      if (slotIndex == syncMaxSlot) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>        waitCond.signal();<a name="line.749"></a>
-<span class="sourceLineNo">750</span>        slotCond.signal();<a name="line.750"></a>
-<span class="sourceLineNo">751</span>      }<a name="line.751"></a>
-<span class="sourceLineNo">752</span><a name="line.752"></a>
-<span class="sourceLineNo">753</span>      while (pushSyncId == syncId.get() &amp;&amp; isRunning()) {<a name="line.753"></a>
-<span class="sourceLineNo">754</span>        syncCond.await();<a name="line.754"></a>
-<span class="sourceLineNo">755</span>      }<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    } catch (InterruptedException e) {<a name="line.756"></a>
-<span class="sourceLineNo">757</span>      Thread.currentThread().interrupt();<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sendAbortProcessSignal();<a name="line.758"></a>
-<span class="sourceLineNo">759</span>      throw new RuntimeException(e);<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    } finally {<a name="line.760"></a>
-<span class="sourceLineNo">761</span>      lock.unlock();<a name="line.761"></a>
-<span class="sourceLineNo">762</span>      if (isSyncAborted()) {<a name="line.762"></a>
-<span class="sourceLineNo">763</span>        throw new RuntimeException("sync aborted", syncException.get());<a name="line.763"></a>
-<span class="sourceLineNo">764</span>      }<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    }<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    return logId;<a name="line.766"></a>
-<span class="sourceLineNo">767</span>  }<a name="line.767"></a>
-<span class="sourceLineNo">768</span><a name="line.768"></a>
-<span class="sourceLineNo">769</span>  private void updateStoreTracker(final PushType type,<a name="line.769"></a>
-<span class="sourceLineNo">770</span>      final long procId, final long[] subProcIds) {<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    switch (type) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      case INSERT:<a name="line.772"></a>
-<span class="sourceLineNo">773</span>        if (subProcIds == null) {<a name="line.773"></a>
-<span class="sourceLineNo">774</span>          storeTracker.insert(procId);<a name="line.774"></a>
-<span class="sourceLineNo">775</span>        } else if (procId == Procedure.NO_PROC_ID) {<a name="line.775"></a>
-<span class="sourceLineNo">776</span>          storeTracker.insert(subProcIds);<a name="line.776"></a>
-<span class="sourceLineNo">777</span>        } else {<a name="line.777"></a>
-<span class="sourceLineNo">778</span>          storeTracker.insert(procId, subProcIds);<a name="line.778"></a>
-<span class="sourceLineNo">779</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.779"></a>
-<span class="sourceLineNo">780</span>        }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>        break;<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      case UPDATE:<a name="line.782"></a>
-<span class="sourceLineNo">783</span>        storeTracker.update(procId);<a name="line.783"></a>
-<span class="sourceLineNo">784</span>        holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.784"></a>
-<span class="sourceLineNo">785</span>        break;<a name="line.785"></a>
-<span class="sourceLineNo">786</span>      case DELETE:<a name="line.786"></a>
-<span class="sourceLineNo">787</span>        if (subProcIds != null &amp;&amp; subProcIds.length &gt; 0) {<a name="line.787"></a>
-<span class="sourceLineNo">788</span>          storeTracker.delete(subProcIds);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>          holdingCleanupTracker.setDeletedIfModified(subProcIds);<a name="line.789"></a>
-<span class="sourceLineNo">790</span>        } else {<a name="line.790"></a>
-<span class="sourceLineNo">791</span>          storeTracker.delete(procId);<a name="line.791"></a>
-<span class="sourceLineNo">792</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.792"></a>
-<span class="sourceLineNo">793</span>        }<a name="line.793"></a>
-<span class="sourceLineNo">794</span>        break;<a name="line.794"></a>
-<span class="sourceLineNo">795</span>      default:<a name="line.795"></a>
-<span class="sourceLineNo">796</span>        throw new RuntimeException("invalid push type " + type);<a name="line.796"></a>
-<span class="sourceLineNo">797</span>    }<a name="line.797"></a>
-<span class="sourceLineNo">798</span>  }<a name="line.798"></a>
-<span class="sourceLineNo">799</span><a name="line.799"></a>
-<span class="sourceLineNo">800</span>  private boolean isSyncAborted() {<a name="line.800"></a>
-<span class="sourceLineNo">801</span>    return syncException.get() != null;<a name="line.801"></a>
-<span class="sourceLineNo">802</span>  }<a name="line.802"></a>
-<span class="sourceLineNo">803</span><a name="line.803"></a>
-<span class="sourceLineNo">804</span>  private void syncLoop() throws Throwable {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    long totalSyncedToStore = 0;<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    inSync.set(false);<a name="line.806"></a>
-<span class="sourceLineNo">807</span>    lock.lock();<a name="line.807"></a>
-<span class="sourceLineNo">808</span>    try {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>      while (isRunning()) {<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        try {<a name="line.810"></a>
-<span class="sourceLineNo">811</span>          // Wait until new data is available<a name="line.811"></a>
-<span class="sourceLineNo">812</span>          if (slotIndex == 0) {<a name="line.812"></a>
-<span class="sourceLineNo">813</span>            if (!loading.get()) {<a name="line.813"></a>
-<span class="sourceLineNo">814</span>              periodicRoll();<a name="line.814"></a>
-<span class="sourceLineNo">815</span>            }<a name="line.815"></a>
-<span class="sourceLineNo">816</span><a name="line.816"></a>
-<span class="sourceLineNo">817</span>            if (LOG.isTraceEnabled()) {<a name="line.817"></a>
-<span class="sourceLineNo">818</span>              float rollTsSec = getMillisFromLastRoll() / 1000.0f;<a name="line.818"></a>
-<span class="sourceLineNo">819</span>              LOG.trace(String.format("Waiting for data. flushed=%s (%s/sec)",<a name="line.819"></a>
-<span class="sourceLineNo">820</span>                        StringUtils.humanSize(totalSynced.get()),<a name="line.820"></a>
-<span class="sourceLineNo">821</span>                        StringUtils.humanSize(totalSynced.get() / rollTsSec)));<a name="line.821"></a>
-<span class="sourceLineNo">822</span>            }<a name="line.822"></a>
-<span class="sourceLineNo">823</span><a name="line.823"></a>
-<span class="sourceLineNo">824</span>            waitCond.await(getMillisToNextPeriodicRoll(), TimeUnit.MILLISECONDS);<a name="line.824"></a>
-<span class="sourceLineNo">825</span>            if (slotIndex == 0) {<a name="line.825"></a>
-<span class="sourceLineNo">826</span>              // no data.. probably a stop() or a periodic roll<a name="line.826"></a>
-<span class="sourceLineNo">827</span>              continue;<a name="line.827"></a>
-<span class="sourceLineNo">828</span>            }<a name="line.828"></a>
-<span class="sourceLineNo">829</span>          }<a name="line.829"></a>
-<span class="sourceLineNo">830</span>          // Wait SYNC_WAIT_MSEC or the signal of "slots full" before flushing<a name="line.830"></a>
-<span class="sourceLineNo">831</span>          syncMaxSlot = runningProcCount;<a name="line.831"></a>
-<span class="sourceLineNo">832</span>          assert syncMaxSlot &gt; 0 : "unexpected syncMaxSlot=" + syncMaxSlot;<a name="line.832"></a>
-<span class="sourceLineNo">833</span>          final long syncWaitSt = EnvironmentEdgeManager.currentTime();<a name="line.833"></a>
-<span class="sourceLineNo">834</span>          if (slotIndex != syncMaxSlot) {<a name="line.834"></a>
-<span class="sourceLineNo">835</span>            slotCond.await(syncWaitMsec, TimeUnit.MILLISECONDS);<a name="line.835"></a>
-<span class="sourceLineNo">836</span>          }<a name="line.836"></a>
-<span class="sourceLineNo">837</span><a name="line.837"></a>
-<span class="sourceLineNo">838</span>          final long currentTs = EnvironmentEdgeManager.currentTime();<a name="line.838"></a>
-<span class="sourceLineNo">839</span>          final long syncWaitMs = currentTs - syncWaitSt;<a name="line.839"></a>
-<span class="sourceLineNo">840</span>          final float rollSec = getMillisFromLastRoll() / 1000.0f;<a name="line.840"></a>
-<span class="sourceLineNo">841</span>          final float syncedPerSec = totalSyncedToStore / rollSec;<a name="line.841"></a>
-<span class="sourceLineNo">842</span>          if (LOG.isTraceEnabled() &amp;&amp; (syncWaitMs &gt; 10 || slotIndex &lt; syncMaxSlot)) {<a name="line.842"></a>
-<span class="sourceLineNo">843</span>            LOG.trace(String.format("Sync wait %s, slotIndex=%s , totalSynced=%s (%s/sec)",<a name="line.843"></a>
-<span class="sourceLineNo">844</span>                      StringUtils.humanTimeDiff(syncWaitMs), slotIndex,<a name="line.844"></a>
-<span class="sourceLineNo">845</span>                      StringUtils.humanSize(totalSyncedToStore),<a name="line.845"></a>
-<span class="sourceLineNo">846</span>                      StringUtils.humanSize(syncedPerSec)));<a name="line.846"></a>
-<span class="sourceLineNo">847</span>          }<a name="line.847"></a>
-<span class="sourceLineNo">848</span><a name="line.848"></a>
-<span class="sourceLineNo">849</span>          // update webui circular buffers (TODO: get rid of allocations)<a name="line.849"></a>
-<span class="sourceLineNo">850</span>          final SyncMetrics syncMetrics = new SyncMetrics();<a name="line.850"></a>
-<span class="sourceLineNo">851</span>          syncMetrics.timestamp = currentTs;<a name="line.851"></a>
-<span class="sourceLineNo">852</span>          syncMetrics.syncWaitMs = syncWaitMs;<a name="line.852"></a>
-<span class="sourceLineNo">853</span>          syncMetrics.syncedEntries = slotIndex;<a name="line.853"></a>
-<span class="sourceLineNo">854</span>          syncMetrics.totalSyncedBytes = totalSyncedToStore;<a name="line.854"></a>
-<span class="sourceLineNo">855</span>          syncMetrics.syncedPerSec = syncedPerSec;<a name="line.855"></a>
-<span class="sourceLineNo">856</span>          syncMetricsQueue.add(syncMetrics);<a name="line.856"></a>
-<span class="sourceLineNo">857</span><a name="line.857"></a>
-<span class="sourceLineNo">858</span>          // sync<a name="line.858"></a>
-<span class="sourceLineNo">859</span>          inSync.set(true);<a name="line.859"></a>
-<span class="sourceLineNo">860</span>          long slotSize = syncSlots();<a name="line.860"></a>
-<span class="sourceLineNo">861</span>          logs.getLast().addToSize(slotSize);<a name="line.861"></a>
-<span class="sourceLineNo">862</span>          totalSyncedToStore = totalSynced.addAndGet(slotSize);<a name="line.862"></a>
-<span class="sourceLineNo">863</span>          slotIndex = 0;<a name="line.863"></a>
-<span class="sourceLineNo">864</span>          inSync.set(false);<a name="line.864"></a>
-<span class="sourceLineNo">865</span>          syncId.incrementAndGet();<a name="line.865"></a>
-<span class="sourceLineNo">866</span>        } catch (InterruptedException e) {<a name="line.866"></a>
-<span class="sourceLineNo">867</span>          Thread.currentThread().interrupt();<a name="line.867"></a>
-<span class="sourceLineNo">868</span>          syncException.compareAndSet(null, e);<a name="line.868"></a>
-<span class="sourceLineNo">869</span>          sendAbortProcessSignal();<a name="line.869"></a>
-<span class="sourceLineNo">870</span>          throw e;<a name="line.870"></a>
-<span class="sourceLineNo">871</span>        } catch (Throwable t) {<a name="line.871"></a>
-<span class="sourceLineNo">872</span>          syncException.compareAndSet(null, t);<a name="line.872"></a>
-<span class="sourceLineNo">873</span>          sendAbortProcessSignal();<a name="line.873"></a>
-<span class="sourceLineNo">874</span>          throw t;<a name="line.874"></a>
-<span class="sourceLineNo">875</span>        } finally {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>          syncCond.signalAll();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>        }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>      }<a name="line.878"></a>
-<span class="sourceLineNo">879</span>    } finally {<a name="line.879"></a>
-<span class="sourceLineNo">880</span>      lock.unlock();<a name="line.880"></a>
-<span class="sourceLineNo">881</span>    }<a name="line.881"></a>
-<span class="sourceLineNo">882</span>  }<a name="line.882"></a>
-<span class="sourceLineNo">883</span><a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public ArrayList&lt;SyncMetrics&gt; getSyncMetrics() {<a name="line.884"></a>
-<span class="sourceLineNo">885</span>    lock.lock();<a name="line.885"></a>
-<span class="sourceLineNo">886</span>    try {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>      return new ArrayList&lt;&gt;(syncMetricsQueue);<a name="line.887"></a>
-<span class="sourceLineNo">888</span>    } finally {<a name="line.888"></a>
-<span class="sourceLineNo">889</span>      lock.unlock();<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    }<a name="line.890"></a>
-<span class="sourceLineNo">891</span>  }<a name="line.891"></a>
-<span class="sourceLineNo">892</span><a name="line.892"></a>
-<span class="sourceLineNo">893</span>  private long syncSlots() throws Throwable {<a name="line.893"></a>
-<span class="sourceLineNo">894</span>    int retry = 0;<a name="line.894"></a>
-<span class="sourceLineNo">895</span>    int logRolled = 0;<a name="line.895"></a>
-<span class="sourceLineNo">896</span>    long totalSynced = 0;<a name="line.896"></a>
-<span class="sourceLineNo">897</span>    do {<a name="line.897"></a>
-<span class="sourceLineNo">898</span>      try {<a name="line.898"></a>
-<span class="sourceLineNo">899</span>        totalSynced = syncSlots(stream, slots, 0, slotIndex);<a name="line.899"></a>
-<span class="sourceLineNo">900</span>        break;<a name="line.900"></a>
-<span class="sourceLineNo">901</span>      } catch (Throwable e) {<a name="line.901"></a>
-<span class="sourceLineNo">902</span>        LOG.warn("unable to sync slots, retry=" + retry);<a name="line.902"></a>
-<span class="sourceLineNo">903</span>        if (++retry &gt;= maxRetriesBeforeRoll) {<a name="line.903"></a>
-<span class="sourceLineNo">904</span>          if (logRolled &gt;= maxSyncFailureRoll &amp;&amp; isRunning()) {<a name="line.904"></a>
-<span class="sourceLineNo">905</span>            LOG.error("Sync slots after log roll failed, abort.", e);<a name="line.905"></a>
-<span class="sourceLineNo">906</span>            throw e;<a name="line.906"></a>
-<span class="sourceLineNo">907</span>          }<a name="line.907"></a>
-<span class="sourceLineNo">908</span><a name="line.908"></a>
-<span class="sourceLineNo">909</span>          if (!rollWriterWithRetries()) {<a name="line.909"></a>
-<span class="sourceLineNo">910</span>            throw e;<a name="line.910"></a>
-<span class="sourceLineNo">911</span>          }<a name="line.911"></a>
-<span class="sourceLineNo">912</span><a name="line.912"></a>
-<span class="sourceLineNo">913</span>          logRolled++;<a name="line.913"></a>
-<span class="sourceLineNo">914</span>          retry = 0;<a name="line.914"></a>
-<span class="sourceLineNo">915</span>        }<a name="line.915"></a>
-<span class="sourceLineNo">916</span>      }<a name="line.916"></a>
-<span class="sourceLineNo">917</span>    } while (isRunning());<a name="line.917"></a>
-<span class="sourceLineNo">918</span>    return totalSynced;<a name="line.918"></a>
-<span class="sourceLineNo">919</span>  }<a name="line.919"></a>
-<span class="sourceLineNo">920</span><a name="line.920"></a>
-<span class="sourceLineNo">921</span>  protected long syncSlots(final FSDataOutputStream stream, final ByteSlot[] slots,<a name="line.921"></a>
-<span class="sourceLineNo">922</span>      final int offset, final int count) throws IOException {<a name="line.922"></a>
-<span class="sourceLineNo">923</span>    long totalSynced = 0;<a name="line.923"></a>
-<span class="sourceLineNo">924</span>    for (int i = 0; i &lt; count; ++i) {<a name="line.924"></a>
-<span class="sourceLineNo">925</span>      final ByteSlot data = slots[offset + i];<a name="line.925"></a>
-<span class="sourceLineNo">926</span>      data.writeTo(stream);<a name="line.926"></a>
-<span class="sourceLineNo">927</span>      totalSynced += data.size();<a name="line.927"></a>
-<span class="sourceLineNo">928</span>    }<a name="line.928"></a>
-<span class="sourceLineNo">929</span><a name="line.929"></a>
-<span class="sourceLineNo">930</span>    syncStream(stream);<a name="line.930"></a>
-<span class="sourceLineNo">931</span>    sendPostSyncSignal();<a name="line.931"></a>
-<span class="sourceLineNo">932</span><a name="line.932"></a>
-<span class="sourceLineNo">933</span>    if (LOG.isTraceEnabled()) {<a name="line.933"></a>
-<span class="sourceLineNo">934</span>      LOG.trace("Sync slots=" + count + '/' + syncMaxSlot +<a name="line.934"></a>
-<span class="sourceLineNo">935</span>                ", flushed=" + StringUtils.humanSize(totalSynced));<a name="line.935"></a>
-<span class="sourceLineNo">936</span>    }<a name="line.936"></a>
-<span class="sourceLineNo">937</span>    return totalSynced;<a name="line.937"></a>
-<span class="sourceLineNo">938</span>  }<a name="line.938"></a>
-<span class="sourceLineNo">939</span><a name="line.939"></a>
-<span class="sourceLineNo">940</span>  protected void syncStream(final FSDataOutputStream stream) throws IOException {<a name="line.940"></a>
-<span class="sourceLineNo">941</span>    if (useHsync) {<a name="line.941"></a>
-<span class="sourceLineNo">942</span>      stream.hsync();<a name="line.942"></a>
-<span class="sourceLineNo">943</span>    } else {<a name="line.943"></a>
-<span class="sourceLineNo">944</span>      stream.hflush();<a name="line.944"></a>
-<span class="sourceLineNo">945</span>    }<a name="line.945"></a>
-<span class="sourceLineNo">946</span>  }<a name="line.946"></a>
-<span class="sourceLineNo">947</span><a name="line.947"></a>
-<span class="sourceLineNo">948</span>  private boolean rollWriterWithRetries() {<a name="line.948"></a>
-<span class="sourceLineNo">949</span>    for (int i = 0; i &lt; rollRetries &amp;&amp; isRunning(); ++i) {<a name="line.949"></a>
-<span class="sourceLineNo">950</span>      if (i &gt; 0) {<a name="line.950"></a>
-<span class="sourceLineNo">951</span>        Threads.sleepWithoutInterrupt(waitBeforeRoll * i);<a name="line.951"></a>
-<span class="sourceLineNo">952</span>      }<a name="line.952"></a>
-<span class="sourceLineNo">953</span><a name="line.953"></a>
-<span class="sourceLineNo">954</span>      try {<a name="line.954"></a>
-<span class="sourceLineNo">955</span>        if (rollWriter()) {<a name="line.955"></a>
-<span class="sourceLineNo">956</span>          return true;<a name="line.956"></a>
-<span class="sourceLineNo">957</span>        }<a name="line.957"></a>
-<span class="sourceLineNo">958</span>      } catch (IOException e) {<a name="line.958"></a>
-<span class="sourceLineNo">959</span>        LOG.warn("Unable to roll the log, attempt=" + (i + 1), e);<a name="line.959"></a>
-<span class="sourceLineNo">960</span>      }<a name="line.960"></a>
-<span class="sourceLineNo">961</span>    }<a name="line.961"></a>
-<span class="sourceLineNo">962</span>    LOG.error(HBaseMarkers.FATAL, "Unable to roll the log");<a name="line.962"></a>
-<span class="sourceLineNo">963</span>    return false;<a name="line.963"></a>
-<span class="sourceLineNo">964</span>  }<a name="line.964"></a>
-<span class="sourceLineNo">965</span><a name="line.965"></a>
-<span class="sourceLineNo">966</span>  private boolean tryRollWriter() {<a name="line.966"></a>
-<span class="sourceLineNo">967</span>    try {<a name="line.967"></a>
-<span class="sourceLineNo">968</span>      return rollWriter();<a name="line.968"></a>
-<span class="sourceLineNo">969</span>    } catch (IOException e) {<a name="line.969"></a>
-<span class="sourceLineNo">970</span>      LOG.warn("Unable to roll the log", e);<a name="line.970"></a>
-<span class="sourceLineNo">971</span>      return false;<a name="line.971"></a>
-<span class="sourceLineNo">972</span>    }<a name="line.972"></a>
-<span class="sourceLineNo">973</span>  }<a name="line.973"></a>
-<span class="sourceLineNo">974</span><a name="line.974"></a>
-<span class="sourceLineNo">975</span>  public long getMillisToNextPeriodicRoll() {<a name="line.975"></a>
-<span class="sourceLineNo">976</span>    if (lastRollTs.get() &gt; 0 &amp;&amp; periodicRollMsec &gt; 0) {<a name="line.976"></a>
-<span class="sourceLineNo">977</span>      return periodicRollMsec - getMillisFromLastRoll();<a name="line.977"></a>
-<span class="sourceLineNo">978</span>    }<a name="line.978"></a>
-<span class="sourceLineNo">979</span>    return Long.MAX_VALUE;<a name="line.979"></a>
-<span class="sourceLineNo">980</span>  }<a name="line.980"></a>
-<span class="sourceLineNo">981</span><a name="line.981"></a>
-<span class="sourceLineNo">982</span>  public long getMillisFromLastRoll() {<a name="line.982"></a>
-<span class="sourceLineNo">983</span>    return (EnvironmentEdgeManager.currentTime() - lastRollTs.get());<a name="line.983"></a>
-<span class="sourceLineNo">984</span>  }<a name="line.984"></a>
-<span class="sourceLineNo">985</span><a name="line.985"></a>
-<span class="sourceLineNo">986</span>  void periodicRollForTesting() throws IOException {<a name="line.986"></a>
-<span class="sourceLineNo">987</span>    lock.lock();<a name="line.987"></a>
-<span class="sourceLineNo">988</span>    try {<a name="line.988"></a>
-<span class="sourceLineNo">989</span>      periodicRoll();<a name="line.989"></a>
-<span class="sourceLineNo">990</span>    } finally {<a name="line.990"></a>
-<span class="sourceLineNo">991</span>      lock.unlock();<a name="line.991"></a>
-<span class="sourceLineNo">992</span>    }<a name="line.992"></a>
-<span class="sourceLineNo">993</span>  }<a name="line.993"></a>
-<span class="sourceLineNo">994</span><a name="line.994"></a>
-<span class="sourceLineNo">995</span>  public boolean rollWriterForTesting() throws IOException {<a name="line.995"></a>
-<span class="sourceLineNo">996</span>    lock.lock();<a name="line.996"></a>
-<span class="sourceLineNo">997</span>    try {<a name="line.997"></a>
-<span class="sourceLineNo">998</span>      return rollWriter();<a name="line.998"></a>
-<span class="sourceLineNo">999</span>    } finally {<a name="line.999"></a>
-<span class="sourceLineNo">1000</span>      lock.unlock();<a name="line.1000"></a>
-<span class="sourceLineNo">1001</span>    }<a name="line.1001"></a>
-<span class="sourceLineNo">1002</span>  }<a name="line.1002"></a>
-<span class="sourceLineNo">1003</span><a name="line.1003"></a>
-<span class="sourceLineNo">1004</span>  void removeInactiveLogsForTesting() throws Exception {<a name="line.1004"></a>
-<span class="sourceLineNo">1005</span>    lock.lock();<a name="line.1005"></a>
-<span class="sourceLineNo">1006</span>    try {<a name="line.1006"></a>
-<span class="sourceLineNo">1007</span>      removeInactiveLogs();<a name="line.1007"></a>
-<span class="sourceLineNo">1008</span>    } finally  {<a name="line.1008"></a>
-<span class="sourceLineNo">1009</span>      lock.unlock();<a name="line.1009"></a>
-<span class="sourceLineNo">1010</span>    }<a name="line.1010"></a>
-<span class="sourceLineNo">1011</span>  }<a name="line.1011"></a>
-<span class="sourceLineNo">1012</span><a name="line.1012"></a>
-<span class="sourceLineNo">1013</span>  private void periodicRoll() throws IOException {<a name="line.1013"></a>
-<span class="sourceLineNo">1014</span>    if (storeTracker.isEmpty()) {<a name="line.1014"></a>
-<span class="sourceLineNo">1015</span>      LOG.trace("no active procedures");<a name="line.1015"></a>
-<span class="sourceLineNo">1016</span>      tryRollWriter();<a name="line.1016"></a>
-<span class="sourceLineNo">1017</span>      removeAllLogs(flushLogId - 1, "no active procedures");<a name="line.1017"></a>
-<span class="sourceLineNo">1018</span>    } else {<a name="line.1018"></a>
-<span class="sourceLineNo">1019</span>      if (storeTracker.isAllModified()) {<a name="line.1019"></a>
-<span class="sourceLineNo">1020</span>        LOG.trace("all the active procedures are in the latest log");<a name="line.1020"></a>
-<span class="sourceLineNo">1021</span>        removeAllLogs(flushLogId - 1, "all the active procedures are in the latest log");<a name="line.1021"></a>
-<span class="sourceLineNo">1022</span>      }<a name="line.1022"></a>
-<span class="sourceLineNo">1023</span><a name="line.1023"></a>
-<span class="sourceLineNo">1024</span>      // if the log size has exceeded the roll threshold<a name="line.1024"></a>
-<span class="sourceLineNo">1025</span>      // or the periodic roll timeout is expired, try to roll the wal.<a name="line.1025"></a>
-<span class="sourceLineNo">1026</span>      if (totalSynced.get() &gt; rollThreshold || getMillisToNextPeriodicRoll() &lt;= 0) {<a name="line.1026"></a>
-<span class="sourceLineNo">1027</span>        tryRollWriter();<a name="line.1027"></a>
-<span class="sourceLineNo">1028</span>      }<a name="line.1028"></a>
-<span class="sourceLineNo">1029</span><a name="line.1029"></a>
-<span class="sourceLineNo">1030</span>      removeInactiveLogs();<a name="line.1030"></a>
-<span class="sourceLineNo">1031</span>    }<a name="line.1031"></a>
-<span class="sourceLineNo">1032</span>  }<a name="line.1032"></a>
-<span class="sourceLineNo">1033</span><a name="line.1033"></a>
-<span class="sourceLineNo">1034</span>  private boolean rollWriter() throws IOException {<a name="line.1034"></a>
-<span class="sourceLineNo">1035</span>    if (!isRunning()) {<a name="line.1035"></a>
-<span class="sourceLineNo">1036</span>      return false;<a name="line.1036"></a>
-<span class="sourceLineNo">1037</span>    }<a name="line.1037"></a>
-<span class="sourceLineNo">1038</span><a name="line.1038"></a>
-<span class="sourceLineNo">1039</span>    // Create new state-log<a name="line.1039"></a>
-<span class="sourceLineNo">1040</span>    if (!rollWriter(flushLogId + 1)) {<a name="line.1040"></a>
-<span class="sourceLineNo">1041</span>      LOG.warn("someone else has already created log {}", flushLogId);<a name="line.1041"></a>
-<span class="sourceLineNo">1042</span>      return false;<a name="line.1042"></a>
-<span class="sourceLineNo">1043</span>    }<a name="line.1043"></a>
-<span class="sourceLineNo">1044</span><a name="line.1044"></a>
-<span class="sourceLineNo">1045</span>    // We have the lease on the log,<a name="line.1045"></a>
-<span class="sourceLineNo">1046</span>    // but we should check if someone else has created new files<a name="line.1046"></a>
-<span class="sourceLineNo">1047</span>    if (getMaxLogId(getLogFiles()) &gt; flushLogId) {<a name="line.1047"></a>
-<span class="sourceLineNo">1048</span>      LOG.warn("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.1048"></a>
-<span class="sourceLineNo">1049</span>      logs.getLast().removeFile(this.walArchiveDir);<a name="line.1049"></a>
-<span class="sourceLineNo">1050</span>      return false;<a name="line.1050"></a>
-<span class="sourceLineNo">1051</span>    }<a name="line.1051"></a>
-<span class="sourceLineNo">1052</span><a name="line.1052"></a>
-<span class="sourceLineNo">1053</span>    // We have the lease on the log<a name="line.1053"></a>
-<span class="sourceLineNo">1054</span>    return true;<a name="line.1054"></a>
-<span class="sourceLineNo">1055</span>  }<a name="line.1055"></a>
-<span class="sourceLineNo">1056</span><a name="line.1056"></a>
-<span class="sourceLineNo">1057</span>  boolean rollWriter(long logId) throws IOException {<a name="line.1057"></a>
-<span class="sourceLineNo">1058</span>    assert logId &gt; flushLogId : "logId=" + logId + " flushLogId=" + flushLogId;<a name="line.1058"></a>
-<span class="sourceLineNo">1059</span>    assert lock.isHeldByCurrentThread() : "expected to be the lock owner. " + lock.isLocked();<a name="line.1059"></a>
-<span class="sourceLineNo">1060</span><a name="line.1060"></a>
-<span class="sourceLineNo">1061</span>    ProcedureWALHeader header = ProcedureWALHeader.newBuilder()<a name="line.1061"></a>
-<span class="sourceLineNo">1062</span>      .setVersion(ProcedureWALFormat.HEADER_VERSION)<a name="line.1062"></a>
-<span class="sourceLineNo">1063</span>      .setType(ProcedureWALFormat.LOG_TYPE_STREAM)<a name="line.1063"></a>
-<span class="sourceLineNo">1064</span>      .setMinProcId(storeTracker.getActiveMinProcId())<a name="line.1064"></a>
-<span class="sourceLineNo">1065</span>      .setLogId(logId)<a name="line.1065"></a>
-<span class="sourceLineNo">1066</span>      .build();<a name="line.1066"></a>
-<span class="sourceLineNo">1067</span><a name="line.1067"></a>
-<span class="sourceLineNo">1068</span>    FSDataOutputStream newStream = null;<a name="line.1068"></a>
-<span class="sourceLineNo">1069</span>    Path newLogFile = null;<a name="line.1069"></a>
-<span class="sourceLineNo">1070</span>    long startPos = -1;<a name="line.1070"></a>
-<span class="sourceLineNo">1071</span>    newLogFile = getLogFilePath(logId);<a name="line.1071"></a>
-<span class="sourceLineNo">1072</span>    try {<a name="line.1072"></a>
-<span class="sourceLineNo">1073</span>      newStream = CommonFSUtils.createForWal(fs, newLogFile, false);<a name="line.1073"></a>
-<span class="sourceLineNo">1074</span>    } catch (FileAlreadyExistsException e) {<a name="line.1074"></a>
-<span class="sourceLineNo">1075</span>      LOG.error("Log file with id={} already exists", logId, e);<a name="line.1075"></a>
-<span class="sourceLineNo">1076</span>      return false;<a name="line.1076"></a>
-<span class="sourceLineNo">1077</span>    } catch (RemoteException re) {<a name="line.1077"></a>
-<span class="sourceLineNo">1078</span>      LOG.warn("failed to create log file with id={}", logId, re);<a name="line.1078"></a>
-<span class="sourceLineNo">1079</span>      return false;<a name="line.1079"></a>
-<span class="sourceLineNo">1080</span>    }<a name="line.1080"></a>
-<span class="sourceLineNo">1081</span>    // After we create the stream but before we attempt to use it at all<a name="line.1081"></a>
-<span class="sourceLineNo">1082</span>    // ensure that we can provide the level of data safety we're configured<a name="line.1082"></a>
-<span class="sourceLineNo">1083</span>    // to provide.<a name="line.1083"></a>
-<span class="sourceLineNo">1084</span>    final String durability = useHsync ? StreamCapabilities.HSYNC : StreamCapabilities.HFLUSH;<a name="line.1084"></a>
-<span class="sourceLineNo">1085</span>    if (enforceStreamCapability &amp;&amp; !newStream.hasCapability(durability)) {<a name="line.1085"></a>
-<span class="sourceLineNo">1086</span>      throw new IllegalStateException("The procedure WAL relies on the ability to " + durability +<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>          " for proper operation during component failures, but the underlying filesystem does " +<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span>          "not support doing so. Please check the config value of '" + USE_HSYNC_CONF_KEY +<a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>          "' to set the desired level of robustness and ensure the config value of '" +<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span>          CommonFSUtils.HBASE_WAL_DIR + "' points to a FileSystem mount that can provide it.");<a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>    }<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>    try {<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>      ProcedureWALFormat.writeHeader(newStream, header);<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span>      startPos = newStream.getPos();<a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>    } catch (IOException ioe) {<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>      LOG.warn("Encountered exception writing header", ioe);<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span>      newStream.close();<a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>      return false;<a name="line.1098"></a>
+<span class="sourceLineNo">709</span>  private enum PushType { INSERT, UPDATE, DELETE }<a name="line.709"></a>
+<span class="sourceLineNo">710</span><a name="line.710"></a>
+<span class="sourceLineNo">711</span>  private long pushData(final PushType type, final ByteSlot slot,<a name="line.711"></a>
+<span class="sourceLineNo">712</span>      final long procId, final long[] subProcIds) {<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    if (!isRunning()) {<a name="line.713"></a>
+<span class="sourceLineNo">714</span>      throw new RuntimeException("the store must be running before inserting data");<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    }<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    if (logs.isEmpty()) {<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      throw new RuntimeException("recoverLease() must be called before inserting data");<a name="line.717"></a>
+<span class="sourceLineNo">718</span>    }<a name="line.718"></a>
+<span class="sourceLineNo">719</span><a name="line.719"></a>
+<span class="sourceLineNo">720</span>    long logId = -1;<a name="line.720"></a>
+<span class="sourceLineNo">721</span>    lock.lock();<a name="line.721"></a>
+<span class="sourceLineNo">722</span>    try {<a name="line.722"></a>
+<span class="sourceLineNo">723</span>      // Wait for the sync to be completed<a name="line.723"></a>
+<span class="sourceLineNo">724</span>      while (true) {<a name="line.724"></a>
+<span class="sourceLineNo">725</span>        if (!isRunning()) {<a name="line.725"></a>
+<span class="sourceLineNo">726</span>          throw new RuntimeException("store no longer running");<a name="line.726"></a>
+<span class="sourceLineNo">727</span>        } else if (isSyncAborted()) {<a name="line.727"></a>
+<span class="sourceLineNo">728</span>          throw new RuntimeException("sync aborted", syncException.get());<a name="line.728"></a>
+<span class="sourceLineNo">729</span>        } else if (inSync.get()) {<a name="line.729"></a>
+<span class="sourceLineNo">730</span>          syncCond.await();<a name="line.730"></a>
+<span class="sourceLineNo">731</span>        } else if (slotIndex &gt;= syncMaxSlot) {<a name="line.731"></a>
+<span class="sourceLineNo">732</span>          slotCond.signal();<a name="line.732"></a>
+<span class="sourceLineNo">733</span>          syncCond.await();<a name="line.733"></a>
+<span class="sourceLineNo">734</span>        } else {<a name="line.734"></a>
+<span class="sourceLineNo">735</span>          break;<a name="line.735"></a>
+<span class="sourceLineNo">736</span>        }<a name="line.736"></a>
+<span class="sourceLineNo">737</span>      }<a name="line.737"></a>
+<span class="sourceLineNo">738</span><a name="line.738"></a>
+<span class="sourceLineNo">739</span>      final long pushSyncId = syncId.get();<a name="line.739"></a>
+<span class="sourceLineNo">740</span>      updateStoreTracker(type, procId, subProcIds);<a name="line.740"></a>
+<span class="sourceLineNo">741</span>      slots[slotIndex++] = slot;<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      logId = flushLogId;<a name="line.742"></a>
+<span class="sourceLineNo">743</span><a name="line.743"></a>
+<span class="sourceLineNo">744</span>      // Notify that there is new data<a name="line.744"></a>
+<span class="sourceLineNo">745</span>      if (slotIndex == 1) {<a name="line.745"></a>
+<span class="sourceLineNo">746</span>        waitCond.signal();<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      }<a name="line.747"></a>
+<span class="sourceLineNo">748</span><a name="line.748"></a>
+<span class="sourceLineNo">749</span>      // Notify that the slots are full<a name="line.749"></a>
+<span class="sourceLineNo">750</span>      if (slotIndex == syncMaxSlot) {<a name="line.750"></a>
+<span class="sourceLineNo">751</span>        waitCond.signal();<a name="line.751"></a>
+<span class="sourceLineNo">752</span>        slotCond.signal();<a name="line.752"></a>
+<span class="sourceLineNo">753</span>      }<a name="line.753"></a>
+<span class="sourceLineNo">754</span><a name="line.754"></a>
+<span class="sourceLineNo">755</span>      while (pushSyncId == syncId.get() &amp;&amp; isRunning()) {<a name="line.755"></a>
+<span class="sourceLineNo">756</span>        syncCond.await();<a name="line.756"></a>
+<span class="sourceLineNo">757</span>      }<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    } catch (InterruptedException e) {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      Thread.currentThread().interrupt();<a name="line.759"></a>
+<span class="sourceLineNo">760</span>      sendAbortProcessSignal();<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      throw new RuntimeException(e);<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    } finally {<a name="line.762"></a>
+<span class="sourceLineNo">763</span>      lock.unlock();<a name="line.763"></a>
+<span class="sourceLineNo">764</span>      if (isSyncAborted()) {<a name="line.764"></a>
+<span class="sourceLineNo">765</span>        throw new RuntimeException("sync aborted", syncException.get());<a name="line.765"></a>
+<span class="sourceLineNo">766</span>      }<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    }<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    return logId;<a name="line.768"></a>
+<span class="sourceLineNo">769</span>  }<a name="line.769"></a>
+<span class="sourceLineNo">770</span><a name="line.770"></a>
+<span class="sourceLineNo">771</span>  private void updateStoreTracker(final PushType type,<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      final long procId, final long[] subProcIds) {<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    switch (type) {<a name="line.773"></a>
+<span class="sourceLineNo">774</span>      case INSERT:<a name="line.774"></a>
+<span class="sourceLineNo">775</span>        if (subProcIds == null) {<a name="line.775"></a>
+<span class="sourceLineNo">776</span>          storeTracker.insert(procId);<a name="line.776"></a>
+<span class="sourceLineNo">777</span>        } else if (procId == Procedure.NO_PROC_ID) {<a name="line.777"></a>
+<span class="sourceLineNo">778</span>          storeTracker.insert(subProcIds);<a name="line.778"></a>
+<span class="sourceLineNo">779</span>        } else {<a name="line.779"></a>
+<span class="sourceLineNo">780</span>          storeTracker.insert(procId, subProcIds);<a name="line.780"></a>
+<span class="sourceLineNo">781</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.781"></a>
+<span class="sourceLineNo">782</span>        }<a name="line.782"></a>
+<span class="sourceLineNo">783</span>        break;<a name="line.783"></a>
+<span class="sourceLineNo">784</span>      case UPDATE:<a name="line.784"></a>
+<span class="sourceLineNo">785</span>        storeTracker.update(procId);<a name="line.785"></a>
+<span class="sourceLineNo">786</span>        holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.786"></a>
+<span class="sourceLineNo">787</span>        break;<a name="line.787"></a>
+<span class="sourceLineNo">788</span>      case DELETE:<a name="line.788"></a>
+<span class="sourceLineNo">789</span>        if (subProcIds != null &amp;&amp; subProcIds.length &gt; 0) {<a name="line.789"></a>
+<span class="sourceLineNo">790</span>          storeTracker.delete(subProcIds);<a name="line.790"></a>
+<span class="sourceLineNo">791</span>          holdingCleanupTracker.setDeletedIfModified(subProcIds);<a name="line.791"></a>
+<span class="sourceLineNo">792</span>        } else {<a name="line.792"></a>
+<span class="sourceLineNo">793</span>          storeTracker.delete(procId);<a name="line.793"></a>
+<span class="sourceLineNo">794</span>          holdingCleanupTracker.setDeletedIfModified(procId);<a name="line.794"></a>
+<span class="sourceLineNo">795</span>        }<a name="line.795"></a>
+<span class="sourceLineNo">796</span>        break;<a name="line.796"></a>
+<span class="sourceLineNo">797</span>      default:<a name="line.797"></a>
+<span class="sourceLineNo">798</span>        throw new RuntimeException("invalid push type " + type);<a name="line.798"></a>
+<span class="sourceLineNo">799</span>    }<a name="line.799"></a>
+<span class="sourceLineNo">800</span>  }<a name="line.800"></a>
+<span class="sourceLineNo">801</span><a name="line.801"></a>
+<span class="sourceLineNo">802</span>  private boolean isSyncAborted() {<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    return syncException.get() != null;<a name="line.803"></a>
+<span class="sourceLineNo">804</span>  }<a name="line.804"></a>
+<span class="sourceLineNo">805</span><a name="line.805"></a>
+<span class="sourceLineNo">806</span>  private void syncLoop() throws Throwable {<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    long totalSyncedToStore = 0;<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    inSync.set(false);<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    lock.lock();<a name="line.809"></a>
+<span class="sourceLineNo">810</span>    try {<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      while (isRunning()) {<a name="line.811"></a>
+<span class="sourceLineNo">812</span>        try {<a name="line.812"></a>
+<span class="sourceLineNo">813</span>          // Wait until new data is available<a name="line.813"></a>
+<span class="sourceLineNo">814</span>          if (slotIndex == 0) {<a name="line.814"></a>
+<span class="sourceLineNo">815</span>            if (!loading.get()) {<a name="line.815"></a>
+<span class="sourceLineNo">816</span>              periodicRoll();<a name="line.816"></a>
+<span class="sourceLineNo">817</span>            }<a name="line.817"></a>
+<span class="sourceLineNo">818</span><a name="line.818"></a>
+<span class="sourceLineNo">819</span>            if (LOG.isTraceEnabled()) {<a name="line.819"></a>
+<span class="sourceLineNo">820</span>              float rollTsSec = getMillisFromLastRoll() / 1000.0f;<a name="line.820"></a>
+<span class="sourceLineNo">821</span>              LOG.trace(String.format("Waiting for data. flushed=%s (%s/sec)",<a name="line.821"></a>
+<span class="sourceLineNo">822</span>                        StringUtils.humanSize(totalSynced.get()),<a name="line.822"></a>
+<span class="sourceLineNo">823</span>                        StringUtils.humanSize(totalSynced.get() / rollTsSec)));<a name="line.823"></a>
+<span class="sourceLineNo">824</span>            }<a name="line.824"></a>
+<span class="sourceLineNo">825</span><a name="line.825"></a>
+<span class="sourceLineNo">826</span>            waitCond.await(getMillisToNextPeriodicRoll(), TimeUnit.MILLISECONDS);<a name="line.826"></a>
+<span class="sourceLineNo">827</span>            if (slotIndex == 0) {<a name="line.827"></a>
+<span class="sourceLineNo">828</span>              // no data.. probably a stop() or a periodic roll<a name="line.828"></a>
+<span class="sourceLineNo">829</span>              continue;<a name="line.829"></a>
+<span class="sourceLineNo">830</span>            }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>          }<a name="line.831"></a>
+<span class="sourceLineNo">832</span>          // Wait SYNC_WAIT_MSEC or the signal of "slots full" before flushing<a name="line.832"></a>
+<span class="sourceLineNo">833</span>          syncMaxSlot = runningProcCount;<a name="line.833"></a>
+<span class="sourceLineNo">834</span>          assert syncMaxSlot &gt; 0 : "unexpected syncMaxSlot=" + syncMaxSlot;<a name="line.834"></a>
+<span class="sourceLineNo">835</span>          final long syncWaitSt = EnvironmentEdgeManager.currentTime();<a name="line.835"></a>
+<span class="sourceLineNo">836</span>          if (slotIndex != syncMaxSlot) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>            slotCond.await(syncWaitMsec, TimeUnit.MILLISECONDS);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>          }<a name="line.838"></a>
+<span class="sourceLineNo">839</span><a name="line.839"></a>
+<span class="sourceLineNo">840</span>          final long currentTs = EnvironmentEdgeManager.currentTime();<a name="line.840"></a>
+<span class="sourceLineNo">841</span>          final long syncWaitMs = currentTs - syncWaitSt;<a name="line.841"></a>
+<span class="sourceLineNo">842</span>          final float rollSec = getMillisFromLastRoll() / 1000.0f;<a name="line.842"></a>
+<span class="sourceLineNo">843</span>          final float syncedPerSec = totalSyncedToStore / rollSec;<a name="line.843"></a>
+<span class="sourceLineNo">844</span>          if (LOG.isTraceEnabled() &amp;&amp; (syncWaitMs &gt; 10 || slotIndex &lt; syncMaxSlot)) {<a name="line.844"></a>
+<span class="sourceLineNo">845</span>            LOG.trace(String.format("Sync wait %s, slotIndex=%s , totalSynced=%s (%s/sec)",<a name="line.845"></a>
+<span class="sourceLineNo">846</span>                      StringUtils.humanTimeDiff(syncWaitMs), slotIndex,<a name="line.846"></a>
+<span class="sourceLineNo">847</span>                      StringUtils.humanSize(totalSyncedToStore),<a name="line.847"></a>
+<span class="sourceLineNo">848</span>                      StringUtils.humanSize(syncedPerSec)));<a name="line.848"></a>
+<span class="sourceLineNo">849</span>          }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>          // update webui circular buffers (TODO: get rid of allocations)<a name="line.851"></a>
+<span class="sourceLineNo">852</span>          final SyncMetrics syncMetrics = new SyncMetrics();<a name="line.852"></a>
+<span class="sourceLineNo">853</span>          syncMetrics.timestamp = currentTs;<a name="line.853"></a>
+<span class="sourceLineNo">854</span>          syncMetrics.syncWaitMs = syncWaitMs;<a name="line.854"></a>
+<span class="sourceLineNo">855</span>          syncMetrics.syncedEntries = slotIndex;<a name="line.855"></a>
+<span class="sourceLineNo">856</span>          syncMetrics.totalSyncedBytes = totalSyncedToStore;<a name="line.856"></a>
+<span class="sourceLineNo">857</span>          syncMetrics.syncedPerSec = syncedPerSec;<a name="line.857"></a>
+<span class="sourceLineNo">858</span>          syncMetricsQueue.add(syncMetrics);<a name="line.858"></a>
+<span class="sourceLineNo">859</span><a name="line.859"></a>
+<span class="sourceLineNo">860</span>          // sync<a name="line.860"></a>
+<span class="sourceLineNo">861</span>          inSync.set(true);<a name="line.861"></a>
+<span class="sourceLineNo">862</span>          long slotSize = syncSlots();<a name="line.862"></a>
+<span class="sourceLineNo">863</span>          logs.getLast().addToSize(slotSize);<a name="line.863"></a>
+<span class="sourceLineNo">864</span>          totalSyncedToStore = totalSynced.addAndGet(slotSize);<a name="line.864"></a>
+<span class="sourceLineNo">865</span>          slotIndex = 0;<a name="line.865"></a>
+<span class="sourceLineNo">866</span>          inSync.set(false);<a name="line.866"></a>
+<span class="sourceLineNo">867</span>          syncId.incrementAndGet();<a name="line.867"></a>
+<span class="sourceLineNo">868</span>        } catch (InterruptedException e) {<a name="line.868"></a>
+<span class="sourceLineNo">869</span>          Thread.currentThread().interrupt();<a name="line.869"></a>
+<span class="sourceLineNo">870</span>          syncException.compareAndSet(null, e);<a name="line.870"></a>
+<span class="sourceLineNo">871</span>          sendAbortProcessSignal();<a name="line.871"></a>
+<span class="sourceLineNo">872</span>          throw e;<a name="line.872"></a>
+<span class="sourceLineNo">873</span>        } catch (Throwable t) {<a name="line.873"></a>
+<span class="sourceLineNo">874</span>          syncException.compareAndSet(null, t);<a name="line.874"></a>
+<span class="sourceLineNo">875</span>          sendAbortProcessSignal();<a name="line.875"></a>
+<span class="sourceLineNo">876</span>          throw t;<a name="line.876"></a>
+<span class="sourceLineNo">877</span>        } finally {<a name="line.877"></a>
+<span class="sourceLineNo">878</span>          syncCond.signalAll();<a name="line.878"></a>
+<span class="sourceLineNo">879</span>        }<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      }<a name="line.880"></a>
+<span class="sourceLineNo">881</span>    } finally {<a name="line.881"></a>
+<span class="sourceLineNo">882</span>      lock.unlock();<a name="line.882"></a>
+<span class="sourceLineNo">883</span>    }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>  }<a name="line.884"></a>
+<span class="sourceLineNo">885</span><a name="line.885"></a>
+<span class="sourceLineNo">886</span>  public ArrayList&lt;SyncMetrics&gt; getSyncMetrics() {<a name="line.886"></a>
+<span class="sourceLineNo">887</span>    lock.lock();<a name="line.887"></a>
+<span class="sourceLineNo">888</span>    try {<a name="line.888"></a>
+<span class="sourceLineNo">889</span>      return new ArrayList&lt;&gt;(syncMetricsQueue);<a name="line.889"></a>
+<span class="sourceLineNo">890</span>    } finally {<a name="line.890"></a>
+<span class="sourceLineNo">891</span>      lock.unlock();<a name="line.891"></a>
+<span class="sourceLineNo">892</span>    }<a name="line.892"></a>
+<span class="sourceLineNo">893</span>  }<a name="line.893"></a>
+<span class="sourceLineNo">894</span><a name="line.894"></a>
+<span class="sourceLineNo">895</span>  private long syncSlots() throws Throwable {<a name="line.895"></a>
+<span class="sourceLineNo">896</span>    int retry = 0;<a name="line.896"></a>
+<span class="sourceLineNo">897</span>    int logRolled = 0;<a name="line.897"></a>
+<span class="sourceLineNo">898</span>    long totalSynced = 0;<a name="line.898"></a>
+<span class="sourceLineNo">899</span>    do {<a name="line.899"></a>
+<span class="sourceLineNo">900</span>      try {<a name="line.900"></a>
+<span class="sourceLineNo">901</span>        totalSynced = syncSlots(stream, slots, 0, slotIndex);<a name="line.901"></a>
+<span class="sourceLineNo">902</span>        break;<a name="line.902"></a>
+<span class="sourceLineNo">903</span>      } catch (Throwable e) {<a name="line.903"></a>
+<span class="sourceLineNo">904</span>        LOG.warn("unable to sync slots, retry=" + retry);<a name="line.904"></a>
+<span class="sourceLineNo">905</span>        if (++retry &gt;= maxRetriesBeforeRoll) {<a name="line.905"></a>
+<span class="sourceLineNo">906</span>          if (logRolled &gt;= maxSyncFailureRoll &amp;&amp; isRunning()) {<a name="line.906"></a>
+<span class="sourceLineNo">907</span>            LOG.error("Sync slots after log roll failed, abort.", e);<a name="line.907"></a>
+<span class="sourceLineNo">908</span>            throw e;<a name="line.908"></a>
+<span class="sourceLineNo">909</span>          }<a name="line.909"></a>
+<span class="sourceLineNo">910</span><a name="line.910"></a>
+<span class="sourceLineNo">911</span>          if (!rollWriterWithRetries()) {<a name="line.911"></a>
+<span class="sourceLineNo">912</span>            throw e;<a name="line.912"></a>
+<span class="sourceLineNo">913</span>          }<a name="line.913"></a>
+<span class="sourceLineNo">914</span><a name="line.914"></a>
+<span class="sourceLineNo">915</span>          logRolled++;<a name="line.915"></a>
+<span class="sourceLineNo">916</span>          retry = 0;<a name="line.916"></a>
+<span class="sourceLineNo">917</span>        }<a name="line.917"></a>
+<span class="sourceLineNo">918</span>      }<a name="line.918"></a>
+<span class="sourceLineNo">919</span>    } while (isRunning());<a name="line.919"></a>
+<span class="sourceLineNo">920</span>    return totalSynced;<a name="line.920"></a>
+<span class="sourceLineNo">921</span>  }<a name="line.921"></a>
+<span class="sourceLineNo">922</span><a name="line.922"></a>
+<span class="sourceLineNo">923</span>  protected long syncSlots(final FSDataOutputStream stream, final ByteSlot[] slots,<a name="line.923"></a>
+<span class="sourceLineNo">924</span>      final int offset, final int count) throws IOException {<a name="line.924"></a>
+<span class="sourceLineNo">925</span>    long totalSynced = 0;<a name="line.925"></a>
+<span class="sourceLineNo">926</span>    for (int i = 0; i &lt; count; ++i) {<a name="line.926"></a>
+<span class="sourceLineNo">927</span>      final ByteSlot data = slots[offset + i];<a name="line.927"></a>
+<span class="sourceLineNo">928</span>      data.writeTo(stream);<a name="line.928"></a>
+<span class="sourceLineNo">929</span>      totalSynced += data.size();<a name="line.929"></a>
+<span class="sourceLineNo">930</span>    }<a name="line.930"></a>
+<span class="sourceLineNo">931</span><a name="line.931"></a>
+<span class="sourceLineNo">932</span>    syncStream(stream);<a name="line.932"></a>
+<span class="sourceLineNo">933</span>    sendPostSyncSignal();<a name="line.933"></a>
+<span class="sourceLineNo">934</span><a name="line.934"></a>
+<span class="sourceLineNo">935</span>    if (LOG.isTraceEnabled()) {<a name="line.935"></a>
+<span class="sourceLineNo">936</span>      LOG.trace("Sync slots=" + count + '/' + syncMaxSlot +<a name="line.936"></a>
+<span class="sourceLineNo">937</span>                ", flushed=" + StringUtils.humanSize(totalSynced));<a name="line.937"></a>
+<span class="sourceLineNo">938</span>    }<a name="line.938"></a>
+<span class="sourceLineNo">939</span>    return totalSynced;<a name="line.939"></a>
+<span class="sourceLineNo">940</span>  }<a name="line.940"></a>
+<span class="sourceLineNo">941</span><a name="line.941"></a>
+<span class="sourceLineNo">942</span>  protected void syncStream(final FSDataOutputStream stream) throws IOException {<a name="line.942"></a>
+<span class="sourceLineNo">943</span>    if (useHsync) {<a name="line.943"></a>
+<span class="sourceLineNo">944</span>      stream.hsync();<a name="line.944"></a>
+<span class="sourceLineNo">945</span>    } else {<a name="line.945"></a>
+<span class="sourceLineNo">946</span>      stream.hflush();<a name="line.946"></a>
+<span class="sourceLineNo">947</span>    }<a name="line.947"></a>
+<span class="sourceLineNo">948</span>  }<a name="line.948"></a>
+<span class="sourceLineNo">949</span><a name="line.949"></a>
+<span class="sourceLineNo">950</span>  private boolean rollWriterWithRetries() {<a name="line.950"></a>
+<span class="sourceLineNo">951</span>    for (int i = 0; i &lt; rollRetries &amp;&amp; isRunning(); ++i) {<a name="line.951"></a>
+<span class="sourceLineNo">952</span>      if (i &gt; 0) {<a name="line.952"></a>
+<span class="sourceLineNo">953</span>        Threads.sleepWithoutInterrupt(waitBeforeRoll * i);<a name="line.953"></a>
+<span class="sourceLineNo">954</span>      }<a name="line.954"></a>
+<span class="sourceLineNo">955</span><a name="line.955"></a>
+<span class="sourceLineNo">956</span>      try {<a name="line.956"></a>
+<span class="sourceLineNo">957</span>        if (rollWriter()) {<a name="line.957"></a>
+<span class="sourceLineNo">958</span>          return true;<a name="line.958"></a>
+<span class="sourceLineNo">959</span>        }<a name="line.959"></a>
+<span class="sourceLineNo">960</span>      } catch (IOException e) {<a name="line.960"></a>
+<span class="sourceLineNo">961</span>        LOG.warn("Unable to roll the log, attempt=" + (i + 1), e);<a name="line.961"></a>
+<span class="sourceLineNo">962</span>      }<a name="line.962"></a>
+<span class="sourceLineNo">963</span>    }<a name="line.963"></a>
+<span class="sourceLineNo">964</span>    LOG.error(HBaseMarkers.FATAL, "Unable to roll the log");<a name="line.964"></a>
+<span class="sourceLineNo">965</span>    return false;<a name="line.965"></a>
+<span class="sourceLineNo">966</span>  }<a name="line.966"></a>
+<span class="sourceLineNo">967</span><a name="line.967"></a>
+<span class="sourceLineNo">968</span>  private boolean tryRollWriter() {<a name="line.968"></a>
+<span class="sourceLineNo">969</span>    try {<a name="line.969"></a>
+<span class="sourceLineNo">970</span>      return rollWriter();<a name="line.970"></a>
+<span class="sourceLineNo">971</span>    } catch (IOException e) {<a name="line.971"></a>
+<span class="sourceLineNo">972</span>      LOG.warn("Unable to roll the log", e);<a name="line.972"></a>
+<span class="sourceLineNo">973</span>      return false;<a name="line.973"></a>
+<span class="sourceLineNo">974</span>    }<a name="line.974"></a>
+<span class="sourceLineNo">975</span>  }<a name="line.975"></a>
+<span class="sourceLineNo">976</span><a name="line.976"></a>
+<span class="sourceLineNo">977</span>  public long getMillisToNextPeriodicRoll() {<a name="line.977"></a>
+<span class="sourceLineNo">978</span>    if (lastRollTs.get() &gt; 0 &amp;&amp; periodicRollMsec &gt; 0) {<a name="line.978"></a>
+<span class="sourceLineNo">979</span>      return periodicRollMsec - getMillisFromLastRoll();<a name="line.979"></a>
+<span class="sourceLineNo">980</span>    }<a name="line.980"></a>
+<span class="sourceLineNo">981</span>    return Long.MAX_VALUE;<a name="line.981"></a>
+<span class="sourceLineNo">982</span>  }<a name="line.982"></a>
+<span class="sourceLineNo">983</span><a name="line.983"></a>
+<span class="sourceLineNo">984</span>  public long getMillisFromLastRoll() {<a name="line.984"></a>
+<span class="sourceLineNo">985</span>    return (EnvironmentEdgeManager.currentTime() - lastRollTs.get());<a name="line.985"></a>
+<span class="sourceLineNo">986</span>  }<a name="line.986"></a>
+<span class="sourceLineNo">987</span><a name="line.987"></a>
+<span class="sourceLineNo">988</span>  void periodicRollForTesting() throws IOException {<a name="line.988"></a>
+<span class="sourceLineNo">989</span>    lock.lock();<a name="line.989"></a>
+<span class="sourceLineNo">990</span>    try {<a name="line.990"></a>
+<span class="sourceLineNo">991</span>      periodicRoll();<a name="line.991"></a>
+<span class="sourceLineNo">992</span>    } finally {<a name="line.992"></a>
+<span class="sourceLineNo">993</span>      lock.unlock();<a name="line.993"></a>
+<span class="sourceLineNo">994</span>    }<a name="line.994"></a>
+<span class="sourceLineNo">995</span>  }<a name="line.995"></a>
+<span class="sourceLineNo">996</span><a name="line.996"></a>
+<span class="sourceLineNo">997</span>  public boolean rollWriterForTesting() throws IOException {<a name="line.997"></a>
+<span class="sourceLineNo">998</span>    lock.lock();<a name="line.998"></a>
+<span class="sourceLineNo">999</span>    try {<a name="line.999"></a>
+<span class="sourceLineNo">1000</span>      return rollWriter();<a name="line.1000"></a>
+<span class="sourceLineNo">1001</span>    } finally {<a name="line.1001"></a>
+<span class="sourceLineNo">1002</span>      lock.unlock();<a name="line.1002"></a>
+<span class="sourceLineNo">1003</span>    }<a name="line.1003"></a>
+<span class="sourceLineNo">1004</span>  }<a name="line.1004"></a>
+<span class="sourceLineNo">1005</span><a name="line.1005"></a>
+<span class="sourceLineNo">1006</span>  void removeInactiveLogsForTesting() throws Exception {<a name="line.1006"></a>
+<span class="sourceLineNo">1007</span>    lock.lock();<a name="line.1007"></a>
+<span class="sourceLineNo">1008</span>    try {<a name="line.1008"></a>
+<span class="sourceLineNo">1009</span>      removeInactiveLogs();<a name="line.1009"></a>
+<span class="sourceLineNo">1010</span>    } finally  {<a name="line.1010"></a>
+<span class="sourceLineNo">1011</span>      lock.unlock();<a name="line.1011"></a>
+<span class="sourceLineNo">1012</span>    }<a name="line.1012"></a>
+<span class="sourceLineNo">1013</span>  }<a name="line.1013"></a>
+<span class="sourceLineNo">1014</span><a name="line.1014"></a>
+<span class="sourceLineNo">1015</span>  private void periodicRoll() throws IOException {<a name="line.1015"></a>
+<span class="sourceLineNo">1016</span>    if (storeTracker.isEmpty()) {<a name="line.1016"></a>
+<span class="sourceLineNo">1017</span>      LOG.trace("no active procedures");<a name="line.1017"></a>
+<span class="sourceLineNo">1018</span>      tryRollWriter();<a name="line.1018"></a>
+<span class="sourceLineNo">1019</span>      removeAllLogs(flushLogId - 1, "no active procedures");<a name="line.1019"></a>
+<span class="sourceLineNo">1020</span>    } else {<a name="line.1020"></a>
+<span class="sourceLineNo">1021</span>      if (storeTracker.isAllModified()) {<a name="line.1021"></a>
+<span class="sourceLineNo">1022</span>        LOG.trace("all the active procedures are in the latest log");<a name="line.1022"></a>
+<span class="sourceLineNo">1023</span>        removeAllLogs(flushLogId - 1, "all the active procedures are in the latest log");<a name="line.1023"></a>
+<span class="sourceLineNo">1024</span>      }<a name="line.1024"></a>
+<span class="sourceLineNo">1025</span><a name="line.1025"></a>
+<span class="sourceLineNo">1026</span>      // if the log size has exceeded the roll threshold<a name="line.1026"></a>
+<span class="sourceLineNo">1027</span>      // or the periodic roll timeout is expired, try to roll the wal.<a name="line.1027"></a>
+<span class="sourceLineNo">1028</span>      if (totalSynced.get() &gt; rollThreshold || getMillisToNextPeriodicRoll() &lt;= 0) {<a name="line.1028"></a>
+<span class="sourceLineNo">1029</span>        tryRollWriter();<a name="line.1029"></a>
+<span class="sourceLineNo">1030</span>      }<a name="line.1030"></a>
+<span class="sourceLineNo">1031</span><a name="line.1031"></a>
+<span class="sourceLineNo">1032</span>      removeInactiveLogs();<a name="line.1032"></a>
+<span class="sourceLineNo">1033</span>    }<a name="line.1033"></a>
+<span class="sourceLineNo">1034</span>  }<a name="line.1034"></a>
+<span class="sourceLineNo">1035</span><a name="line.1035"></a>
+<span class="sourceLineNo">1036</span>  private boolean rollWriter() throws IOException {<a name="line.1036"></a>
+<span class="sourceLineNo">1037</span>    if (!isRunning()) {<a name="line.1037"></a>
+<span class="sourceLineNo">1038</span>      return false;<a name="line.1038"></a>
+<span class="sourceLineNo">1039</span>    }<a name="line.1039"></a>
+<span class="sourceLineNo">1040</span><a name="line.1040"></a>
+<span class="sourceLineNo">1041</span>    // Create new state-log<a name="line.1041"></a>
+<span class="sourceLineNo">1042</span>    if (!rollWriter(flushLogId + 1)) {<a name="line.1042"></a>
+<span class="sourceLineNo">1043</span>      LOG.warn("someone else has already created log {}", flushLogId);<a name="line.1043"></a>
+<span class="sourceLineNo">1044</span>      return false;<a name="line.1044"></a>
+<span class="sourceLineNo">1045</span>    }<a name="line.1045"></a>
+<span class="sourceLineNo">1046</span><a name="line.1046"></a>
+<span class="sourceLineNo">1047</span>    // We have the lease on the log,<a name="line.1047"></a>
+<span class="sourceLineNo">1048</span>    // but we should check if someone else has created new files<a name="line.1048"></a>
+<span class="sourceLineNo">1049</span>    if (getMaxLogId(getLogFiles()) &gt; flushLogId) {<a name="line.1049"></a>
+<span class="sourceLineNo">1050</span>      LOG.warn("Someone else created new logs. Expected maxLogId &lt; {}", flushLogId);<a name="line.1050"></a>
+<span class="sourceLineNo">1051</span>      logs.getLast().removeFile(this.walArchiveDir);<a name="line.1051"></a>
+<span class="sourceLineNo">1052</span>      return false;<a name="line.1052"></a>
+<span class="sourceLineNo">1053</span>    }<a name="line.1053"></a>
+<span class="sourceLineNo">1054</span><a name="line.1054"></a>
+<span class="sourceLineNo">1055</span>    // We have the lease on the log<a name="line.1055"></a>
+<span class="sourceLineNo">1056</span>    return true;<a name="line.1056"></a>
+<span class="sourceLineNo">1057</span>  }<a name="line.1057"></a>
+<span class="sourceLineNo">1058</span><a name="line.1058"></a>
+<span class="sourceLineNo">1059</span>  boolean rollWriter(long logId) throws IOException {<a name="line.1059"></a>
+<span class="sourceLineNo">1060</span>    assert logId &gt; flushLogId : "logId=" + logId + " flushLogId=" + flushLogId;<a name="line.1060"></a>
+<span class="sourceLineNo">1061</span>    assert lock.isHeldByCurrentThread() : "expected to be the lock owner. " + lock.isLocked();<a name="line.1061"></a>
+<span class="sourceLineNo">1062</span><a name="line.1062"></a>
+<span class="sourceLineNo">1063</span>    ProcedureWALHeader header = ProcedureWALHeader.newBuilder()<a name="line.1063"></a>
+<span class="sourceLineNo">1064</span>      .setVersion(ProcedureWALFormat.HEADER_VERSION)<a name="line.1064"></a>
+<span class="sourceLineNo">1065</span>      .setType(ProcedureWALFormat.LOG_TYPE_STREAM)<a name="line.1065"></a>
+<span class="sourceLineNo">1066</span>      .setMinProcId(storeTracker.getActiveMinProcId())<a name="line.1066"></a>
+<span class="sourceLineNo">1067</span>      .setLogId(logId)<a name="line.1067"></a>
+<span class="sourceLineNo">1068</span>      .build();<a name="line.1068"></a>
+<span class="sourceLineNo">1069</span><a name="line.1069"></a>
+<span class="sourceLineNo">1070</span>    FSDataOutputStream newStream = null;<a name="line.1070"></a>
+<span class="sourceLineNo">1071</span>    Path newLogFile = null;<a name="line.1071"></a>
+<span class="sourceLineNo">1072</span>    long startPos = -1;<a name="line.1072"></a>
+<span class="sourceLineNo">1073</span>    newLogFile = getLogFilePath(logId);<a name="line.1073"></a>
+<span class="sourceLineNo">1074</span>    try {<a name="line.1074"></a>
+<span class="sourceLineNo">1075</span>      FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(newLogFile).overwrite(false);<a name="line.1075"></a>
+<span class="sourceLineNo">1076</span>      if (builder instanceof DistributedFileSystem.HdfsDataOutputStreamBuilder) {<a name="line.1076"></a>
+<span class="sourceLineNo">1077</span>        newStream = ((DistributedFileSystem.HdfsDataOutputStreamBuilder) builder)<a name="line.1077"></a>
+<span class="sourceLineNo">1078</span>          .replicate().build();<a name="line.1078"></a>
+<span class="sourceLineNo">1079</span>      } else {<a name="line.1079"></a>
+<span class="sourceLineNo">1080</span>        newStream = builder.build();<a name="line.1080"></a>
+<span class="sourceLineNo">1081</span>      }<a name="line.1081"></a>
+<span class="sourceLineNo">1082</span>    } catch (FileAlreadyExistsException e) {<a name="line.1082"></a>
+<span class="sourceLineNo">1083</span>      LOG.error("Log file with id={} already exists", logId, e);<a name="line.1083"></a>
+<span class="sourceLineNo">1084</span>      return false;<a name="line.1084"></a>
+<span class="sourceLineNo">1085</span>    } catch (RemoteException re) {<a name="line.1085"></a>
+<span class="sourceLineNo">1086</span>      LOG.warn("failed to create log file with id={}", logId, re);<a name="line.1086"></a>
+<span class="sourceLineNo">1087</span>      return false;<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>    }<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>    // After we create the stream but before we attempt to use it at all<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>    // ensure that we can provide the level of data safety we're configured<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span>    // to provide.<a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>    final String durability = useHsync ? StreamCapabilities.HSYNC : StreamCapabilities.HFLUSH;<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>    if (enforceStreamCapability &amp;&amp; !newStream.hasCapability(durability)) {<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>      throw new IllegalStateException("The procedure WAL relies on the ability to " + durability +<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>          " for proper operation during component failures, but the underlying filesystem does " +<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span>          "not support doing so. Please check the config value of '" + USE_HSYNC_CONF_KEY +<a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>          "' to set the desired level of robustness and ensure the config value of '" +<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span>          CommonFSUtils.HBASE_WAL_DIR + "' points to a FileSystem mount that can provide it.");<a name="line.1098"></a>
 <span class="sourceLineNo">1099</span>    }<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span><a name="line.1100"></a>
-<span class="sourceLineNo">1101</span>    closeCurrentLogStream(false);<a name="line.1101"></a>
-<span class="sourceLineNo">1102</span><a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>    storeTracker.resetModified();<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>    stream = newStream;<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span>    flushLogId = logId;<a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>    totalSynced.set(0);<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>    long rollTs = EnvironmentEdgeManager.currentTime();<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span>    lastRollTs.set(rollTs);<a name="line.1108"></a>
-<span class="sourceLineNo">1109</span>    logs.add(new ProcedureWALFile(fs, newLogFile, header, startPos, rollTs));<a name="line.1109"></a>
+<span class="sourceLineNo">1100</span>    try {<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>      ProcedureWALFormat.writeHeader(newStream, header);<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span>      startPos = newStream.getPos();<a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>    } catch (IOException ioe) {<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>      LOG.warn("Encountered exception writing header", ioe);<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>      newStream.close();<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span>      return false;<a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>    }<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span><a name="line.1108"></a>
+<span class="sourceLineNo">1109</span>    closeCurrentLogStream(false);<a name="line.1109"></a>
 <span class="sourceLineNo">1110</span><a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>    // if it's the first next WAL being added, build the holding cleanup tracker<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>    if (logs.size() == 2) {<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>      buildHoldingCleanupTracker();<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>    } else if (logs.size() &gt; walCountWarnThreshold) {<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>      LOG.warn("procedure WALs count={} above the warning threshold {}. check running procedures" +<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span>        " to see if something is stuck.", logs.size(), walCountWarnThreshold);<a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>      // This is just like what we have done at RS side when there are too many wal files. For RS,<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>      // if there are too many wal files, we will find out the wal entries in the oldest file, and<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>      // tell the upper layer to flush these regions so the wal entries will be useless and then we<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span>      // can delete the wal file. For WALProcedureStore, the assumption is that, if all the<a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>      // procedures recorded in a proc wal file are modified or deleted in a new proc wal file, then<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>      // we are safe to delete it. So here if there are too many proc wal files, we will find out<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>      // the procedure ids in the oldest file, which are neither modified nor deleted in newer proc<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>      // wal files, and tell upper layer to update the state of these procedures to the newest proc<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>      // wal file(by calling ProcedureStore.update), then we are safe to delete the oldest proc wal<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>      // file.<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span>      sendForceUpdateSignal(holdingCleanupTracker.getAllActiveProcIds());<a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>    }<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span><a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    LOG.info("Rolled new Procedure Store WAL, id={}", logId);<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>    return true;<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span>  }<a name="line.1132"></a>
-<span class="sourceLineNo">1133</span><a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>  private void closeCurrentLogStream(boolean abort) {<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>    if (stream == null || logs.isEmpty()) {<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>      return;<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>    }<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span><a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>    try {<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>      ProcedureWALFile log = logs.getLast();<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>      // If the loading flag is true, it usually means that we fail when loading procedures, so we<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>      // should not persist the store tracker, as its state may not be correct.<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>      if (!loading.get()) {<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>        log.setProcIds(storeTracker.getModifiedMinProcId(), storeTracker.getModifiedMaxProcId());<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>        log.updateLocalTracker(storeTracker);<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>        if (!abort) {<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>          long trailerSize = ProcedureWALFormat.writeTrailer(stream, storeTracker);<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>          log.addToSize(trailerSize);<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>        }<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>      }<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>    } catch (IOException | FSError e) {<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>      LOG.warn("Unable to write the trailer", e);<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>    }<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>    try {<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>      stream.close();<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>    } catch (IOException | FSError e) {<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>      LOG.error("Unable to close the stream", e);<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>    }<a name="line.1158"></a>
-<span class="sourceLineNo">1159</span>    stream = null;<a name="line.1159"></a>
-<span class="sourceLineNo">1160</span>  }<a name="line.1160"></a>
-<span class="sourceLineNo">1161</span><a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>  // ==========================================================================<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>  //  Log Files cleaner helpers<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span>  // ==========================================================================<a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>  private void removeInactiveLogs() throws IOException {<a name="line.1165"></a>
-<span class="sourceLineNo">1166</span>    // We keep track of which procedures are holding the oldest WAL in 'holdingCleanupTracker'.<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span>    // once there is nothing olding the oldest WAL we can remove it.<a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>    while (logs.size() &gt; 1 &amp;&amp; holdingCleanupTracker.isEmpty()) {<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>      LOG.info("Remove the oldest log {}", logs.getFirst());<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>      removeLogFile(logs.getFirst(), walArchiveDir);<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>      buildHoldingCleanupTracker();<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>    }<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span><a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>    // TODO: In case we are holding up a lot of logs for long time we should<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span>    // rewrite old procedures (in theory parent procs) to the new WAL.<a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>  }<a name="line.1176"></a>
-<span class="sourceLineNo">1177</span><a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>  private void buildHoldingCleanupTracker() {<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>    if (logs.size() &lt;= 1) {<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span>      // we only have one wal, so nothing to do<a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>      holdingCleanupTracker.reset();<a name="line.1181"></a>
-<span class="sourceLineNo">1182</span>      return;<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>    }<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span><a name="line.1184"></a>
-<span class="sourceLineNo">1185</span>    // compute the holding tracker.<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>    // - the first WAL is used for the 'updates'<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span>    // - the global tracker will be used to determine whether a procedure has been deleted<a name="line.1187"></a>
-<span class="sourceLineNo">1188</span>    // - other trackers will be used to determine whether a procedure has been updated, as a deleted<a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>    // procedure can always be detected by checking the global tracker, we can save the deleted<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span>    // checks when applying other trackers<a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>    holdingCleanupTracker.resetTo(logs.getFirst().getTracker(), true);<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>    holdingCleanupTracker.setDeletedIfDeletedByThem(storeTracker);<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>    // the logs is a linked list, so avoid calling get(index) on it.<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>    Iterator&lt;ProcedureWALFile&gt; iter = logs.iterator();<a name="line.1194"></a>
-<span class="sourceLineNo">1195</span>    // skip the tracker for the first file when creating the iterator.<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>    iter.next();<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span>    ProcedureStoreTracker tracker = iter.next().getTracker();<a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>    // testing iter.hasNext after calling iter.next to skip applying the tracker for last file,<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>    // which is just the storeTracker above.<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span>    while (iter.hasNext()) {<a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>      holdingCleanupTracker.setDeletedIfModifiedInBoth(tracker);<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>      if (holdingCleanupTracker.isEmpty()) {<a name="line.1202"></a>
-<span class="sourceLineNo">1203</span>        break;<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>      }<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>      tracker = iter.next().getTracker();<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>    }<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>  }<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span><a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>  /**<a name="line.1209"></a>
-<span class="sourceLineNo">1210</span>   * Remove all logs with logId &lt;= {@code lastLogId}.<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span>   */<a name="line.1211"></a>
-<span class="sourceLineNo">1212</span>  private void removeAllLogs(long lastLogId, String why) {<a name="line.1212"></a>
-<span class="sourceLineNo">1213</span>    if (logs.size() &lt;= 1) {<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span>      return;<a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>    }<a name="line.1215"></a>
+<span class="sourceLineNo">1111</span>    storeTracker.resetModified();<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>    stream = newStream;<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>    flushLogId = logId;<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>    totalSynced.set(0);<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>    long rollTs = EnvironmentEdgeManager.currentTime();<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>    lastRollTs.set(rollTs);<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>    logs.add(new ProcedureWALFile(fs, newLogFile, header, startPos, rollTs));<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span><a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>    // if it's the first next WAL being added, build the holding cleanup tracker<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>    if (logs.size() == 2) {<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>      buildHoldingCleanupTracker();<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>    } else if (logs.size() &gt; walCountWarnThreshold) {<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>      LOG.warn("procedure WALs count={} above the warning threshold {}. check running procedures" +<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span>        " to see if something is stuck.", logs.size(), walCountWarnThreshold);<a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>      // This is just like what we have done at RS side when there are too many wal files. For RS,<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span>      // if there are too many wal files, we will find out the wal entries in the oldest file, and<a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>      // tell the upper layer to flush these regions so the wal entries will be useless and then we<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>      // can delete the wal file. For WALProcedureStore, the assumption is that, if all the<a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>      // procedures recorded in a proc wal file are modified or deleted in a new proc wal file, then<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>      // we are safe to delete it. So here if there are too many proc wal files, we will find out<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>      // the procedure ids in the oldest file, which are neither modified nor deleted in newer proc<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>      // wal files, and tell upper layer to update the state of these procedures to the newest proc<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span>      // wal file(by calling ProcedureStore.update), then we are safe to delete the oldest proc wal<a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>      // file.<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span>      sendForceUpdateSignal(holdingCleanupTracker.getAllActiveProcIds());<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span>    }<a name="line.1136"></a>
+<span class="sourceLineNo">1137</span><a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>    LOG.info("Rolled new Procedure Store WAL, id={}", logId);<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>    return true;<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>  }<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span><a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>  private void closeCurrentLogStream(boolean abort) {<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>    if (stream == null || logs.isEmpty()) {<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      return;<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>    }<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span><a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>    try {<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>      ProcedureWALFile log = logs.getLast();<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>      // If the loading flag is true, it usually means that we fail when loading procedures, so we<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>      // should not persist the store tracker, as its state may not be correct.<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>      if (!loading.get()) {<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>        log.setProcIds(storeTracker.getModifiedMinProcId(), storeTracker.getModifiedMaxProcId());<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>        log.updateLocalTracker(storeTracker);<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>        if (!abort) {<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>          long trailerSize = ProcedureWALFormat.writeTrailer(stream, storeTracker);<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>          log.addToSize(trailerSize);<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>        }<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      }<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>    } catch (IOException | FSError e) {<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>      LOG.warn("Unable to write the trailer", e);<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span>    }<a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>    try {<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>      stream.close();<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>    } catch (IOException | FSError e) {<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>      LOG.error("Unable to close the stream", e);<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span>    }<a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>    stream = null;<a name="line.1167"></a>
+<span class="sourceLineNo">1168</span>  }<a name="line.1168"></a>
+<span class="sourceLineNo">1169</span><a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>  // ==========================================================================<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>  //  Log Files cleaner helpers<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>  // ==========================================================================<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>  private void removeInactiveLogs() throws IOException {<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>    // We keep track of which procedures are holding the oldest WAL in 'holdingCleanupTracker'.<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>    // once there is nothing olding the oldest WAL we can remove it.<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>    while (logs.size() &gt; 1 &amp;&amp; holdingCleanupTracker.isEmpty()) {<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span>      LOG.info("Remove the oldest log {}", logs.getFirst());<a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>      removeLogFile(logs.getFirst(), walArchiveDir);<a name="line.1178"></a>
+<span class="sourceLineNo">1179</span>      buildHoldingCleanupTracker();<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>    }<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span><a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>    // TODO: In case we are holding up a lot of logs for long time we should<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>    // rewrite old procedures (in theory parent procs) to the new WAL.<a name="line.1183"></a>
+<span class="sourceLineNo">1184</span>  }<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span><a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>  private void buildHoldingCleanupTracker() {<a name="line.1186"></a>
+<span class="sourceLineNo">1187</span>    if (logs.size() &lt;= 1) {<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>      // we only have one wal, so nothing to do<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>      holdingCleanupTracker.reset();<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span>      return;<a name="line.1190"></a>
+<span class="sourceLineNo">1191</span>    }<a name="line.1191"></a>
+<span class="sourceLineNo">1192</span><a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>    // compute the holding tracker.<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>    // - the first WAL is used for the 'updates'<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>    // - the global tracker will be used to determine whether a procedure has been deleted<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>    // - other trackers will be used to determine whether a procedure has been updated, as a deleted<a name="line.1196"></a>
+<span class="sourceLineNo">1197</span>    // procedure can always be detected by checking the global tracker, we can save the deleted<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>    // checks when applying other trackers<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span>    holdingCleanupTracker.resetTo(logs.getFirst().getTracker(), true);<a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>    holdingCleanupTracker.setDeletedIfDeletedByThem(storeTracker);<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span>    // the logs is a linked list, so avoid calling get(index) on it.<a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>    Iterator&lt;ProcedureWALFile&gt; iter = logs.iterator();<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>    // skip the tracker for the first file when creating the iterator.<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span>    iter.next();<a name="line.1204"></a>
+<span class="sourceLineNo">1205</span>    ProcedureStoreTracker tracker = iter.next().getTracker();<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>    // testing iter.hasNext after calling iter.next to skip applying the tracker for last file,<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>    // which is just the storeTracker above.<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>    while (iter.hasNext()) {<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>      holdingCleanupTracker.setDeletedIfModifiedInBoth(tracker);<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>      if (holdingCleanupTracker.isEmpty()) {<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>        break;<a name="line.1211"></a>
+<span class="sourceLineNo">1212</span>      }<a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>      tracker = iter.next().getTracker();<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>    }<a name="line.1214"></a>
+<span class="sourceLineNo">1215</span>  }<a name="line.1215"></a>
 <span class="sourceLineNo">1216</span><a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>    LOG.info("Remove all state logs with ID less than {}, since {}", lastLogId, why);<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span><a name="line.1218"></a>
-<span class="sourceLineNo">1219</span>    boolean removed = false;<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>    while (logs.size() &gt; 1) {<a name="line.1220"></a>
-<span class="sourceLineNo">1221</span>      ProcedureWALFile log = logs.getFirst();<a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>      if (lastLogId &lt; log.getLogId()) {<a name="line.1222"></a>
-<span class="sourceLineNo">1223</span>        break;<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>      }<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span>      removeLogFile(log, walArchiveDir);<a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>      removed = true;<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>    }<a name="line.1227"></a>
-<span class="sourceLineNo">1228</span><a name="line.1228"></a>
-<span class="sourceLineNo">1229</span>    if (removed) {<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>      buildHoldingCleanupTracker();<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>    }<a name="line.1231"></a>
-<span class="sourceLineNo">1232</span>  }<a name="line.1232"></a>
-<span class="sourceLineNo">1233</span><a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>  private boolean removeLogFile(final ProcedureWALFile log, final Path walArchiveDir) {<a name="line.1234"></a>
-<span class="sourceLineNo">1235</span>    try {<a name="line.1235"></a>
-<span class="sourceLineNo">1236</span>      LOG.trace("Removing log={}", log);<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span>      log.removeFile(walArchiveDir);<a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>      logs.remove(log);<a name="line.1238"></a>
-<span class="sourceLineNo">1239</span>      LOG.debug("Removed log={}, activeLogs={}", log, logs);<a name="line.1239"></a>
-<span class="sourceLineNo">1240</span>      assert logs.size() &gt; 0 : "expected at least one log";<a name="line.1240"></a>
-<span class="sourceLineNo">1241</span>    } catch (IOException e) {<a name="line.1241"></a>
-<span class="sourceLineNo">1242</span>      LOG.error("Unable to remove log: " + log, e);<a name="line.1242"></a>
-<span class="sourceLineNo">1243</span>      return false;<a name="line.1243"></a>
-<span class="sourceLineNo">1244</span>    }<a name="line.1244"></a>
-<span class="sourceLineNo">1245</span>    return true;<a name="line.1245"></a>
-<span class="sourceLineNo">1246</span>  }<a name="line.1246"></a>
-<span class="sourceLineNo">1247</span><a name="line.1247"></a>
-<span class="sourceLineNo">1248</span>  // ==========================================================================<a name="line.1248"></a>
-<span class="sourceLineNo">1249</span>  //  FileSystem Log Files helpers<a name="line.1249"></a>
-<span class="sourceLineNo">1250</span>  // ==========================================================================<a name="line.1250"></a>
-<span class="sourceLineNo">1251</span>  public Path getWALDir() {<a name="line.1251"></a>
-<span class="sourceLineNo">1252</span>    return this.walDir;<a name="line.1252"></a>
-<span class="sourceLineNo">1253</span>  }<a name="line.1253"></a>
-<span class="sourceLineNo">1254</span><a name="line.1254"></a>
-<span class="sourceLineNo">1255</span>  Path getWalArchiveDir() {<a name="line.1255"></a>
-<span class="sourceLineNo">1256</span>    return this.walArchiveDir;<a name="line.1256"></a>
-<span class="sourceLineNo">1257</span>  }<a name="line.1257"></a>
-<span class="sourceLineNo">1258</span><a name="line.1258"></a>
-<span class="sourceLineNo">1259</span>  public FileSystem getFileSystem() {<a name="line.1259"></a>
-<span class="sourceLineNo">1260</span>    return this.fs;<a name="line.1260"></a>
+<span class="sourceLineNo">1217</span>  /**<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>   * Remove all logs with logId &lt;= {@code lastLogId}.<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>   */<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>  private void removeAllLogs(long lastLogId, String why) {<a name="line.1220"></a>
+<span class="sourceLineNo">1221</span>    if (logs.size() &lt;= 1) {<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span>      return;<a name="line.1222"></a>
+<span class="sourceLineNo">1223</span>    }<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span><a name="line.1224"></a>
+<span class="sourceLineNo">1225</span>    LOG.info("Remove all state logs with ID less than {}, since {}", lastLogId, why);<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span><a name="line.1226"></a>
+<span class="sourceLineNo">1227</span>    boolean removed = false;<a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>    while (logs.size() &gt; 1) {<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span>      ProcedureWALFile log = logs.getFirst();<a name="line.1229"></a>
+<span class="sourceLineNo">1230</span>      if (lastLogId &lt; log.getLogId()) {<a name="line.1230"></a>
+<span class="sourceLineNo">1231</span>        break;<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>      }<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span>      removeLogFile(log, walArchiveDir);<a name="line.1233"></a>
+<span class="sourceLineNo">1234</span>      removed = true;<a name="line.1234"></a>
+<span class="sourceLineNo">1235</span>    }<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span><a name="line.1236"></a>
+<span class="sourceLineNo">1237</span>    if (removed) {<a name="line.1237"></a>
+<span class="sourceLineNo">1238</span>      buildHoldingCleanupTracker();<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span>    }<a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>  }<a name="line.1240"></a>
+<span class="sourceLineNo">1241</span><a name="line.1241"></a>
+<span class="sourceLineNo">1242</span>  private boolean removeLogFile(final ProcedureWALFile log, final Path walArchiveDir) {<a name="line.1242"></a>
+<span class="sourceLineNo">1243</span>    try {<a name="line.1243"></a>
+<span class="sourceLineNo">1244</span>      LOG.trace("Removing log={}", log);<a name="line.1244"></a>
+<span class="sourceLineNo">1245</span>      log.removeFile(walArchiveDir);<a name="line.1245"></a>
+<span class="sourceLineNo">1246</span>      logs.remove(log);<a name="line.1246"></a>
+<span class="sourceLineNo">1247</span>      LOG.debug("Removed log={}, activeLogs={}", log, logs);<a name="line.1247"></a>
+<span class="sourceLineNo">1248</span>      assert logs.size() &gt; 0 : "expected at least one log";<a name="line.1248"></a>
+<span class="sourceLineNo">1249</span>    } catch (IOException e) {<a name="line.1249"></a>
+<span class="sourceLineNo">1250</span>      LOG.error("Unable to remove log: " + log, e);<a name="line.1250"></a>
+<span class="sourceLineNo">1251</span>      return false;<a name="line.1251"></a>
+<span class="sourceLineNo">1252</span>    }<a name="line.1252"></a>
+<span class="sourceLineNo">1253</span>    return true;<a name="line.1253"></a>
+<span class="sourceLineNo">1254</span>  }<a name="line.1254"></a>
+<span class="sourceLineNo">1255</span><a name="line.1255"></a>
+<span class="sourceLineNo">1256</span>  // ==========================================================================<a name="line.1256"></a>
+<span class="sourceLineNo">1257</span>  //  FileSystem Log Files helpers<a name="line.1257"></a>
+<span class="sourceLineNo">1258</span>  // ==========================================================================<a name="line.1258"></a>
+<span class="sourceLineNo">1259</span>  public Path getWALDir() {<a name="line.1259"></a>
+<span class="sourceLineNo">1260</span>    return this.walDir;<a name="line.1260"></a>
 <span class="sourceLineNo">1261</span>  }<a name="line.1261"></a>
 <span class="sourceLineNo">1262</span><a name="line.1262"></a>
-<span class="sourceLineNo">1263</span>  protected Path getLogFilePath(final long logId) throws IOException {<a name="line.1263"></a>
-<span class="sourceLineNo">1264</span>    return new Path(walDir, String.format(LOG_PREFIX + "%020d.log", logId));<a name="line.1264"></a>
+<span class="sourceLineNo">1263</span>  Path getWalArchiveDir() {<a name="line.1263"></a>
+<span class="sourceLineNo">1264</span>    return this.walArchiveDir;<a name="line.1264"></a>
 <span class="sourceLineNo">1265</span>  }<a name="line.1265"></a>
 <span class="sourceLineNo">1266</span><a name="line.1266"></a>
-<span class="sourceLineNo">1267</span>  private static long getLogIdFromName(final String name) {<a name="line.1267"></a>
-<span class="sourceLineNo">1268</span>    int end = name.lastIndexOf(".log");<a name="line.1268"></a>
-<span class="sourceLineNo">1269</span>    int start = name.lastIndexOf('-') + 1;<a name="line.1269"></a>
-<span class="sourceLineNo">1270</span>    return Long.parseLong(name.substring(start, end));<a name="line.1270"></a>
-<span class="sourceLineNo">1271</span>  }<a name="line.1271"></a>
-<span class="sourceLineNo">1272</span><a name="line.1272"></a>
-<span class="sourceLineNo">1273</span>  private static final PathFilter WALS_PATH_FILTER = new PathFilter() {<a name="line.1273"></a>
-<span class="sourceLineNo">1274</span>    @Override<a name="line.1274"></a>
-<span class="sourceLineNo">1275</span>    public boolean accept(Path path) {<a name="line.1275"></a>
-<span class="sourceLineNo">1276</span>      String name = path.getName();<a name="line.1276"></a>
-<span class="sourceLineNo">1277</span>      return name.startsWith(LOG_PREFIX) &amp;&amp; name.endsWith(".log");<a name="line.1277"></a>
-<span class="sourceLineNo">1278</span>    }<a name="line.1278"></a>
-<span class="sourceLineNo">1279</span>  };<a name="line.1279"></a>
+<span class="sourceLineNo">1267</span>  public FileSystem getFileSystem() {<a name="line.1267"></a>
+<span class="sourceLineNo">1268</span>    return this.fs;<a name="line.1268"></a>
+<span class="sourceLineNo">1269</span>  }<a name="line.1269"></a>
+<span class="sourceLineNo">1270</span><a name="line.1270"></a>
+<span class="sourceLineNo">1271</span>  protected Path getLogFilePath(final long logId) throws IOException {<a name="line.1271"></a>
+<span class="sourceLineNo">1272</span>    return new Path(walDir, String.format(LOG_PREFIX + "%020d.log", logId));<a name="line.1272"></a>
+<span class="sourceLineNo">1273</span>  }<a name="line.1273"></a>
+<span class="sourceLineNo">1274</span><a name="line.1274"></a>
+<span class="sourceLineNo">1275</span>  private static long getLogIdFromName(final String name) {<a name="line.1275"></a>
+<span class="sourceLineNo">1276</span>    int end = name.lastIndexOf(".log");<a name="line.1276"></a>
+<span class="sourceLineNo">1277</span>    int start = name.lastIndexOf('-') + 1;<a name="line.1277"></a>
+<span class="sourceLineNo">1278</span>    return Long.parseLong(name.substring(start, end));<a name="line.1278"></a>
+<span class="sourceLineNo">1279</span>  }<a name="line.1279"></a>
 <span class="sourceLineNo">1280</span><a name="line.1280"></a>
-<span class="sourceLineNo">1281</span>  private static final Comparator&lt;FileStatus&gt; FILE_STATUS_ID_COMPARATOR =<a name="line.1281"></a>
-<span class="sourceLineNo">1282</span>      new Comparator&lt;FileStatus&gt;() {<a name="line.1282"></a>
-<span class="sourceLineNo">1283</span>    @Override<a name="line.1283"></a>
-<span class="sourceLineNo">1284</span>    public int compare(FileStatus a, FileStatus b) {<a name="line.1284"></a>
-<span class="sourceLineNo">1285</span>      final long aId = getLogIdFromName(a.getPath().getName());<a name="line.1285"></a>
-<span class="sourceLineNo">1286</span>      final long bId = getLogIdFromName(b.getPath().getName());<a name="line.1286"></a>
-<span class="sourceLineNo">1287</span>      return Long.compare(aId, bId);<a name="line.1287"></a>
-<span class="sourceLineNo">1288</span>    }<a name="line.1288"></a>
-<span class="sourceLineNo">1289</span>  };<a name="line.1289"></a>
-<span class="sourceLineNo">1290</span><a name="line.1290"></a>
-<span class="sourceLineNo">1291</span>  private FileStatus[] getLogFiles() throws IOException {<a name="line.1291"></a>
-<span class="sourceLineNo">1292</span>    try {<a name="line.1292"></a>
-<span class="sourceLineNo">1293</span>      FileStatus[] files = fs.listStatus(walDir, WALS_PATH_FILTER);<a name="line.1293"></a>
-<span class="sourceLineNo">1294</span>      Arrays.sort(files, FILE_STATUS_ID_COMPARATOR);<a name="line.1294"></a>
-<span class="sourceLineNo">1295</span>      return files;<a name="line.1295"></a>
-<span class="sourceLineNo">1296</span>    } catch (FileNotFoundException e) {<a name="line.1296"></a>
-<span class="sourceLineNo">1297</span>      LOG.warn("Log directory not found: " + e.getMessage());<a name="line.1297"></a>
-<span class="sourceLineNo">1298</span>      return null;<a name="line.1298"></a>
-<span class="sourceLineNo">1299</span>    }<a name="line.1299"></a>
-<span class="sourceLineNo">1300</span>  }<a name="line.1300"></a>
-<span class="sourceLineNo">1301</span><a name="line.1301"></a>
-<span class="sourceLineNo">1302</span>  /**<a name="line.1302"></a>
-<span class="sourceLineNo">1303</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1303"></a>
-<span class="sourceLineNo">1304</span>   * the file set by log id.<a name="line.1304"></a>
-<span class="sourceLineNo">1305</span>   * @return Max-LogID of the specified log file set<a name="line.1305"></a>
-<span class="sourceLineNo">1306</span>   */<a name="line.1306"></a>
-<span class="sourceLineNo">1307</span>  private static long getMaxLogId(FileStatus[] logFiles) {<a name="line.1307"></a>
-<span class="sourceLineNo">1308</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1308"></a>
-<span class="sourceLineNo">1309</span>      return 0L;<a name="line.1309"></a>
-<span class="sourceLineNo">1310</span>    }<a name="line.1310"></a>
-<span class="sourceLineNo">1311</span>    return getLogIdFromName(logFiles[logFiles.length - 1].getPath().getName());<a name="line.1311"></a>
-<span class="sourceLineNo">1312</span>  }<a name="line.1312"></a>
-<span class="sourceLineNo">1313</span><a name="line.1313"></a>
-<span class="sourceLineNo">1314</span>  /**<a name="line.1314"></a>
-<span class="sourceLineNo">1315</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1315"></a>
-<span class="sourceLineNo">1316</span>   * the file set by log id.<a name="line.1316"></a>
-<span class="sourceLineNo">1317</span>   * @return Max-LogID of the specified log file set<a name="line.1317"></a>
-<span class="sourceLineNo">1318</span>   */<a name="line.1318"></a>
-<span class="sourceLineNo">1319</span>  private long initOldLogs(FileStatus[] logFiles) throws IOException {<a name="line.1319"></a>
-<span class="sourceLineNo">1320</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1320"></a>
-<span class="sourceLineNo">1321</span>      return 0L;<a name="line.1321"></a>
-<span class="sourceLineNo">1322</span>    }<a name="line.1322"></a>
-<span class="sourceLineNo">1323</span>    long maxLogId = 0;<a name="line.1323"></a>
-<span class="sourceLineNo">1324</span>    for (int i = 0; i &lt; logFiles.length; ++i) {<a name="line.1324"></a>
-<span class="sourceLineNo">1325</span>      final Path logPath = logFiles[i].getPath();<a name="line.1325"></a>
-<span class="sourceLineNo">1326</span>      leaseRecovery.recoverFileLease(fs, logPath);<a name="line.1326"></a>
-<span class="sourceLineNo">1327</span>      if (!isRunning()) {<a name="line.1327"></a>
-<span class="sourceLineNo">1328</span>        throw new IOException("wal aborting");<a name="line.1328"></a>
-<span class="sourceLineNo">1329</span>      }<a name="line.1329"></a>
-<span class="sourceLineNo">1330</span><a name="line.1330"></a>
-<span class="sourceLineNo">1331</span>      maxLogId = Math.max(maxLogId, getLogIdFromName(logPath.getName()));<a name="line.1331"></a>
-<span class="sourceLineNo">1332</span>      ProcedureWALFile log = initOldLog(logFiles[i], this.walArchiveDir);<a name="line.1332"></a>
-<span class="sourceLineNo">1333</span>      if (log != null) {<a name="line.1333"></a>
-<span class="sourceLineNo">1334</span>        this.logs.add(log);<a name="line.1334"></a>
-<span class="sourceLineNo">1335</span>      }<a name="line.1335"></a>
-<span class="sourceLineNo">1336</span>    }<a name="line.1336"></a>
-<span class="sourceLineNo">1337</span>    initTrackerFromOldLogs();<a name="line.1337"></a>
-<span class="sourceLineNo">1338</span>    return maxLogId;<a name="line.1338"></a>
-<span class="sourceLineNo">1339</span>  }<a name="line.1339"></a>
-<span class="sourceLineNo">1340</span><a name="line.1340"></a>
-<span class="sourceLineNo">1341</span>  /**<a name="line.1341"></a>
-<span class="sourceLineNo">1342</span>   * If last log's tracker is not null, use it as {@link #storeTracker}. Otherwise, set storeTracker<a name="line.1342"></a>
-<span class="sourceLineNo">1343</span>   * as partial, and let {@link ProcedureWALFormatReader} rebuild it using entries in the log.<a name="line.1343"></a>
-<span class="sourceLineNo">1344</span>   */<a name="line.1344"></a>
-<span class="sourceLineNo">1345</span>  private void initTrackerFromOldLogs() {<a name="line.1345"></a>
-<span class="sourceLineNo">1346</span>    if (logs.isEmpty() || !isRunning()) {<a name="line.1346"></a>
-<span class="sourceLineNo">1347</span>      return;<a name="line.1347"></a>
-<span class="sourceLineNo">1348</span>    }<a name="line.1348"></a>
-<span class="sourceLineNo">1349</span>    ProcedureWALFile log = logs.getLast();<a name="line.1349"></a>
-<span class="sourceLineNo">1350</span>    if (!log.getTracker().isPartial()) {<a name="line.1350"></a>
-<span class="sourceLineNo">1351</span>      storeTracker.resetTo(log.getTracker());<a name="line.1351"></a>
-<span class="sourceLineNo">1352</span>    } else {<a name="line.1352"></a>
-<span class="sourceLineNo">1353</span>      storeTracker.reset();<a name="line.1353"></a>
-<span class="sourceLineNo">1354</span>      storeTracker.setPartialFlag(true);<a name="line.1354"></a>
-<span class="sourceLineNo">1355</span>    }<a name="line.1355"></a>
-<span class="sourceLineNo">1356</span>  }<a name="line.1356"></a>
-<span class="sourceLineNo">1357</span><a name="line.1357"></a>
-<span class="sourceLineNo">1358</span>  /**<a name="line.1358"></a>
-<span class="sourceLineNo">1359</span>   * Loads given log file and it's tracker.<a name="line.1359"></a>
-<span class="sourceLineNo">1360</span>   */<a name="line.1360"></a>
-<span class="sourceLineNo">1361</span>  private ProcedureWALFile initOldLog(final FileStatus logFile, final Path walArchiveDir)<a name="line.1361"></a>
-<span class="sourceLineNo">1362</span>      throws IOException {<a name="line.1362"></a>
-<span class="sourceLineNo">1363</span>    final ProcedureWALFile log = new ProcedureWALFile(fs, logFile);<a name="line.1363"></a>
-<span class="sourceLineNo">1364</span>    if (logFile.getLen() == 0) {<a name="line.1364"></a>
-<span class="sourceLineNo">1365</span>      LOG.warn("Remove uninitialized log: {}", logFile);<a name="line.1365"></a>
-<span class="sourceLineNo">1366</span>      log.removeFile(walArchiveDir);<a name="line.1366"></a>
-<span class="sourceLineNo">1367</span>      return null;<a name="line.1367"></a>
-<span class="sourceLineNo">1368</span>    }<a name="line.1368"></a>
-<span class="sourceLineNo">1369</span>    LOG.debug("Opening Pv2 {}", logFile);<a name="line.1369"></a>
-<span class="sourceLineNo">1370</span>    try {<a name="line.1370"></a>
-<span class="sourceLineNo">1371</span>      log.open();<a name="line.1371"></a>
-<span class="sourceLineNo">1372</span>    } catch (ProcedureWALFormat.InvalidWALDataException e) {<a name="line.1372"></a>
-<span class="sourceLineNo">1373</span>      LOG.warn("Remove uninitialized log: {}", logFile, e);<a name="line.1373"></a>
+<span class="sourceLineNo">1281</span>  private static final PathFilter WALS_PATH_FILTER = new PathFilter() {<a name="line.1281"></a>
+<span class="sourceLineNo">1282</span>    @Override<a name="line.1282"></a>
+<span class="sourceLineNo">1283</span>    public boolean accept(Path path) {<a name="line.1283"></a>
+<span class="sourceLineNo">1284</span>      String name = path.getName();<a name="line.1284"></a>
+<span class="sourceLineNo">1285</span>      return name.startsWith(LOG_PREFIX) &amp;&amp; name.endsWith(".log");<a name="line.1285"></a>
+<span class="sourceLineNo">1286</span>    }<a name="line.1286"></a>
+<span class="sourceLineNo">1287</span>  };<a name="line.1287"></a>
+<span class="sourceLineNo">1288</span><a name="line.1288"></a>
+<span class="sourceLineNo">1289</span>  private static final Comparator&lt;FileStatus&gt; FILE_STATUS_ID_COMPARATOR =<a name="line.1289"></a>
+<span class="sourceLineNo">1290</span>      new Comparator&lt;FileStatus&gt;() {<a name="line.1290"></a>
+<span class="sourceLineNo">1291</span>    @Override<a name="line.1291"></a>
+<span class="sourceLineNo">1292</span>    public int compare(FileStatus a, FileStatus b) {<a name="line.1292"></a>
+<span class="sourceLineNo">1293</span>      final long aId = getLogIdFromName(a.getPath().getName());<a name="line.1293"></a>
+<span class="sourceLineNo">1294</span>      final long bId = getLogIdFromName(b.getPath().getName());<a name="line.1294"></a>
+<span class="sourceLineNo">1295</span>      return Long.compare(aId, bId);<a name="line.1295"></a>
+<span class="sourceLineNo">1296</span>    }<a name="line.1296"></a>
+<span class="sourceLineNo">1297</span>  };<a name="line.1297"></a>
+<span class="sourceLineNo">1298</span><a name="line.1298"></a>
+<span class="sourceLineNo">1299</span>  private FileStatus[] getLogFiles() throws IOException {<a name="line.1299"></a>
+<span class="sourceLineNo">1300</span>    try {<a name="line.1300"></a>
+<span class="sourceLineNo">1301</span>      FileStatus[] files = fs.listStatus(walDir, WALS_PATH_FILTER);<a name="line.1301"></a>
+<span class="sourceLineNo">1302</span>      Arrays.sort(files, FILE_STATUS_ID_COMPARATOR);<a name="line.1302"></a>
+<span class="sourceLineNo">1303</span>      return files;<a name="line.1303"></a>
+<span class="sourceLineNo">1304</span>    } catch (FileNotFoundException e) {<a name="line.1304"></a>
+<span class="sourceLineNo">1305</span>      LOG.warn("Log directory not found: " + e.getMessage());<a name="line.1305"></a>
+<span class="sourceLineNo">1306</span>      return null;<a name="line.1306"></a>
+<span class="sourceLineNo">1307</span>    }<a name="line.1307"></a>
+<span class="sourceLineNo">1308</span>  }<a name="line.1308"></a>
+<span class="sourceLineNo">1309</span><a name="line.1309"></a>
+<span class="sourceLineNo">1310</span>  /**<a name="line.1310"></a>
+<span class="sourceLineNo">1311</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1311"></a>
+<span class="sourceLineNo">1312</span>   * the file set by log id.<a name="line.1312"></a>
+<span class="sourceLineNo">1313</span>   * @return Max-LogID of the specified log file set<a name="line.1313"></a>
+<span class="sourceLineNo">1314</span>   */<a name="line.1314"></a>
+<span class="sourceLineNo">1315</span>  private static long getMaxLogId(FileStatus[] logFiles) {<a name="line.1315"></a>
+<span class="sourceLineNo">1316</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1316"></a>
+<span class="sourceLineNo">1317</span>      return 0L;<a name="line.1317"></a>
+<span class="sourceLineNo">1318</span>    }<a name="line.1318"></a>
+<span class="sourceLineNo">1319</span>    return getLogIdFromName(logFiles[logFiles.length - 1].getPath().getName());<a name="line.1319"></a>
+<span class="sourceLineNo">1320</span>  }<a name="line.1320"></a>
+<span class="sourceLineNo">1321</span><a name="line.1321"></a>
+<span class="sourceLineNo">1322</span>  /**<a name="line.1322"></a>
+<span class="sourceLineNo">1323</span>   * Make sure that the file set are gotten by calling {@link #getLogFiles()}, where we will sort<a name="line.1323"></a>
+<span class="sourceLineNo">1324</span>   * the file set by log id.<a name="line.1324"></a>
+<span class="sourceLineNo">1325</span>   * @return Max-LogID of the specified log file set<a name="line.1325"></a>
+<span class="sourceLineNo">1326</span>   */<a name="line.1326"></a>
+<span class="sourceLineNo">1327</span>  private long initOldLogs(FileStatus[] logFiles) throws IOException {<a name="line.1327"></a>
+<span class="sourceLineNo">1328</span>    if (logFiles == null || logFiles.length == 0) {<a name="line.1328"></a>
+<span class="sourceLineNo">1329</span>      return 0L;<a name="line.1329"></a>
+<span class="sourceLineNo">1330</span>    }<a name="line.1330"></a>
+<span class="sourceLineNo">1331</span>    long maxLogId = 0;<a name="line.1331"></a>
+<span class="sourceLineNo">1332</span>    for (int i = 0; i &lt; logFiles.length; ++i) {<a name="line.1332"></a>
+<span class="sourceLineNo">1333</span>      final Path logPath = logFiles[i].getPath();<a name="line.1333"></a>
+<span class="sourceLineNo">1334</span>      leaseRecovery.recoverFileLease(fs, logPath);<a name="line.1334"></a>
+<span class="sourceLineNo">1335</span>      if (!isRunning()) {<a name="line.1335"></a>
+<span class="sourceLineNo">1336</span>        throw new IOException("wal aborting");<a name="line.1336"></a>
+<span class="sourceLineNo">1337</span>      }<a name="line.1337"></a>
+<span class="sourceLineNo">1338</span><a name="line.1338"></a>
+<span class="sourceLineNo">1339</span>      maxLogId = Math.max(maxLogId, getLogIdFromName(logPath.getName()));<a name="line.1339"></a>
+<span class="sourceLineNo">1340</span>      ProcedureWALFile log = initOldLog(logFiles[i], this.walArchiveDir);<a name="line.1340"></a>
+<span class="sourceLineNo">1341</span>      if (log != null) {<a name="line.1341"></a>
+<span class="sourceLineNo">1342</span>        this.logs.add(log);<a name="line.1342"></a>
+<span class="sourceLineNo">1343</span>      }<a name="line.1343"></a>
+<span class="sourceLineNo">1344</span>    }<a name="line.1344"></a>
+<span class="sourceLineNo">1345</span>    initTrackerFromOldLogs();<a name="line.1345"></a>
+<span class="sourceLineNo">1346</span>    return maxLogId;<a name="line.1346"></a>
+<span class="sourceLineNo">1347</span>  }<a name="line.1347"></a>
+<span class="sourceLineNo">1348</span><a name="line.1348"></a>
+<span class="sourceLineNo">1349</span>  /**<a name="line.1349"></a>
+<span class="sourceLineNo">1350</span>   * If last log's tracker is not null, use it as {@link #storeTracker}. Otherwise, set storeTracker<a name="line.1350"></a>
+<span class="sourceLineNo">1351</span>   * as partial, and let {@link ProcedureWALFormatReader} rebuild it using entries in the log.<a name="line.1351"></a>
+<span class="sourceLineNo">1352</span>   */<a name="line.1352"></a>
+<span class="sourceLineNo">1353</span>  private void initTrackerFromOldLogs() {<a name="line.1353"></a>
+<span class="sourceLineNo">1354</span>    if (logs.isEmpty() || !isRunning()) {<a name="line.1354"></a>
+<span class="sourceLineNo">1355</span>      return;<a name="line.1355"></a>
+<span class="sourceLineNo">1356</span>    }<a name="line.1356"></a>
+<span class="sourceLineNo">1357</span>    ProcedureWALFile log = logs.getLast();<a name="line.1357"></a>
+<span class="sourceLineNo">1358</span>    if (!log.getTracker().isPartial()) {<a name="line.1358"></a>
+<span class="sourceLineNo">1359</span>      storeTracker.resetTo(log.getTracker());<a name="line.1359"></a>
+<span class="sourceLineNo">1360</span>    } else {<a name="line.1360"></a>
+<span class="sourceLineNo">1361</span>      storeTracker.reset();<a name="line.1361"></a>
+<span class="sourceLineNo">1362</span>      storeTracker.setPartialFlag(true);<a name="line.1362"></a>
+<span class="sourceLineNo">1363</span>    }<a name="line.1363"></a>
+<span class="sourceLineNo">1364</span>  }<a name="line.1364"></a>
+<span class="sourceLineNo">1365</span><a name="line.1365"></a>
+<span class="sourceLineNo">1366</span>  /**<a name="line.1366"></a>
+<span class="sourceLineNo">1367</span>   * Loads given log file and it's tracker.<a name="line.1367"></a>
+<span class="sourceLineNo">1368</span>   */<a name="line.1368"></a>
+<span class="sourceLineNo">1369</span>  private ProcedureWALFile initOldLog(final FileStatus logFile, final Path walArchiveDir)<a name="line.1369"></a>
+<span class="sourceLineNo">1370</span>      throws IOException {<a name="line.1370"></a>
+<span class="sourceLineNo">1371</span>    final ProcedureWALFile log = new ProcedureWALFile(fs, logFile);<a name="line.1371"></a>
+<span class="sourceLineNo">1372</span>    if (logFile.getLen() == 0) {<a name="line.1372"></a>
+<span class="sourceLineNo">1373</span>      LOG.warn("Remove uninitialized log: {}", logFile);<a name="line.1373"></a>
 <span class="sourceLineNo">1374</span>      log.removeFile(walArchiveDir);<a name="line.1374"></a>
 <span class="sourceLineNo">1375</span>      return null;<a name="line.1375"></a>
-<span class="sourceLineNo">1376</span>    } catch (IOException e) {<a name="line.1376"></a>
-<span class="sourceLineNo">1377</span>      String msg = "Unable to read state log: " + logFile;<a name="line.1377"></a>
-<span class="sourceLineNo">1378</span>      LOG.error(msg, e);<a name="line.1378"></a>
-<span class="sourceLineNo">1379</span>      throw new IOException(msg, e);<a name="line.1379"></a>
-<span class="sourceLineNo">1380</span>    }<a name="line.1380"></a>
-<span class="sourceLineNo">1381</span><a name="line.1381"></a>
-<span class="sourceLineNo">1382</span>    try {<a name="line.1382"></a>
-<span class="sourceLineNo">1383</span>      log.readTracker();<a name="line.1383"></a>
+<span class="sourceLineNo">1376</span>    }<a name="line.1376"></a>
+<span class="sourceLineNo">1377</span>    LOG.debug("Opening Pv2 {}", logFile);<a name="line.1377"></a>
+<span class="sourceLineNo">1378</span>    try {<a name="line.1378"></a>
+<span class="sourceLineNo">1379</span>      log.open();<a name="line.1379"></a>
+<span class="sourceLineNo">1380</span>    } catch (ProcedureWALFormat.InvalidWALDataException e) {<a name="line.1380"></a>
+<span class="sourceLineNo">1381</span>      LOG.warn("Remove uninitialized log: {}", logFile, e);<a name="line.1381"></a>
+<span class="sourceLineNo">1382</span>      log.removeFile(walArchiveDir);<a name="line.1382"></a>
+<span class="sourceLineNo">1383</span>      return null;<a name="line.1383"></a>
 <span class="sourceLineNo">1384</span>    } catch (IOException e) {<a name="line.1384"></a>
-<span class="sourceLineNo">1385</span>      log.getTracker().reset();<a name="line.1385"></a>
-<span class="sourceLineNo">1386</span>      log.getTracker().setPartialFlag(true);<a name="line.1386"></a>
-<span class="sourceLineNo">1387</span>      LOG.warn("Unable to read tracker for {}", log, e);<a name="line.1387"></a>
+<span class="sourceLineNo">1385</span>      String msg = "Unable to read state log: " + logFile;<a name="line.1385"></a>
+<span class="sourceLineNo">1386</span>      LOG.error(msg, e);<a name="line.1386"></a>
+<span class="sourceLineNo">1387</span>      throw new IOException(msg, e);<a name="line.1387"></a>
 <span class="sourceLineNo">1388</span>    }<a name="line.1388"></a>
 <span class="sourceLineNo">1389</span><a name="line.1389"></a>
-<span class="sourceLineNo">1390</span>    log.close();<a name="line.1390"></a>
-<span class="sourceLineNo">1391</span>    return log;<a name="line.1391"></a>
-<span class="sourceLineNo">1392</span>  }<a name="line.1392"></a>
-<span class="sourceLineNo">1393</span><a name="line.1393"></a>
-<span class="sourceLineNo">1394</span>  /**<a name="line.1394"></a>
-<span class="sourceLineNo">1395</span>   * Parses a directory of WALs building up ProcedureState.<a name="line.1395"></a>
-<span class="sourceLineNo">1396</span>   * For testing parse and profiling.<a name="line.1396"></a>
-<span class="sourceLineNo">1397</span>   * @param args Include pointer to directory of WAL files for a store instance to parse &amp; load.<a name="line.1397"></a>
-<span class="sourceLineNo">1398</span>   */<a name="line.1398"></a>
-<span class="sourceLineNo">1399</span>  public static void main(String [] args) throws IOException {<a name="line.1399"></a>
-<span class="sourceLineNo">1400</span>    Configuration conf = HBaseConfiguration.create();<a name="line.1400"></a>
-<span class="sourceLineNo">1401</span>    if (args == null || args.length != 1) {<a name="line.1401"></a>
-<span class="sourceLineNo">1402</span>      System.out.println("ERROR: Empty arguments list; pass path to MASTERPROCWALS_DIR.");<a name="line.1402"></a>
-<span class="sourceLineNo">1403</span>      System.out.println("Usage: WALProcedureStore MASTERPROCWALS_DIR");<a name="line.1403"></a>
-<span class="sourceLineNo">1404</span>      System.exit(-1);<a name="line.1404"></a>
-<span class="sourceLineNo">1405</span>    }<a name="line.1405"></a>
-<span class="sourceLineNo">1406</span>    WALProcedureStore store = new WALProcedureStore(conf, new Path(args[0]), null,<a name="line.1406"></a>
-<span class="sourceLineNo">1407</span>      new LeaseRecovery() {<a name="line.1407"></a>
-<span class="sourceLineNo">1408</span>        @Override<a name="line.1408"></a>
-<span class="sourceLineNo">1409</span>        public void recoverFileLease(FileSystem fs, Path path) throws IOException {<a name="line.1409"></a>
-<span class="sourceLineNo">1410</span>          // no-op<a name="line.1410"></a>
-<span class="sourceLineNo">1411</span>        }<a name="line.1411"></a>
-<span class="sourceLineNo">1412</span>      });<a name="line.1412"></a>
-<span class="sourceLineNo">1413</span>    try {<a name="line.1413"></a>
-<span class="sourceLineNo">1414</span>      store.start(16);<a name="line.1414"></a>
-<span class="sourceLineNo">1415</span>      ProcedureExecutor&lt;?&gt; pe = new ProcedureExecutor&lt;&gt;(conf, new Object()/*Pass anything*/, store);<a name="line.1415"></a>
-<span class="sourceLineNo">1416</span>      pe.init(1, true);<a name="line.1416"></a>
-<span class="sourceLineNo">1417</span>    } finally {<a name="line.1417"></a>
-<span class="sourceLineNo">1418</span>      store.stop(true);<a name="line.1418"></a>
-<span class="sourceLineNo">1419</span>    }<a name="line.1419"></a>
-<span class="sourceLineNo">1420</span>  }<a name="line.1420"></a>
-<span class="sourceLineNo">1421</span>}<a name="line.1421"></a>
+<span class="sourceLineNo">1390</span>    try {<a name="line.1390"></a>
+<span class="sourceLineNo">1391</span>      log.readTracker();<a name="line.1391"></a>
+<span class="sourceLineNo">1392</span>    } catch (IOException e) {<a name="line.1392"></a>
+<span class="sourceLineNo">1393</span>      log.getTracker().reset();<a name="line.1393"></a>
+<span class="sourceLineNo">1394</span>      log.getTracker().setPartialFlag(true);<a name="line.1394"></a>
+<span class="sourceLineNo">1395</span>      LOG.warn("Unable to read tracker for {}", log, e);<a name="line.1395"></a>
+<span class="sourceLineNo">1396</span>    }<a name="line.1396"></a>
+<span class="sourceLineNo">1397</span><a name="line.1397"></a>
+<span class="sourceLineNo">1398</span>    log.close();<a name="line.1398"></a>
+<span class="sourceLineNo">1399</span>    return log;<a name="line.1399"></a>
+<span class="sourceLineNo">1400</span>  }<a name="line.1400"></a>
+<span class="sourceLineNo">1401</span><a name="line.1401"></a>
+<span class="sourceLineNo">1402</span>  /**<a name="line.1402"></a>
+<span class="sourceLineNo">1403</span>   * Parses a directory of WALs building up ProcedureState.<a name="line.1403"></a>
+<span class="sourceLineNo">1404</span>   * For testing parse and profiling.<a name="line.1404"></a>
+<span class="sourceLineNo">1405</span>   * @param args Include pointer to directory of WAL files for a store instance to parse &amp; load.<a name="line.1405"></a>
+<span class="sourceLineNo">1406</span>   */<a name="line.1406"></a>
+<span class="sourceLineNo">1407</span>  public static void main(String [] args) throws IOException {<a name="line.1407"></a>
+<span class="sourceLineNo">1408</span>    Configuration conf = HBaseConfiguration.create();<a name="line.1408"></a>
+<span class="sourceLineNo">1409</span>    if (args == null || args.length != 1) {<a name="line.1409"></a>
+<span class="sourceLineNo">1410</span>      System.out.println("ERROR: Empty arguments list; pass path to MASTERPROCWALS_DIR.");<a name="line.1410"></a>
+<span class="sourceLineNo">1411</span>      System.out.println("Usage: WALProcedureStore MASTERPROCWALS_DIR");<a name="line.1411"></a>
+<span class="sourceLineNo">1412</span>      System.exit(-1);<a name="line.1412"></a>
+<span class="sourceLineNo">1413</span>    }<a name="line.1413"></a>
+<span class="sourceLineNo">1414</span>    WALProcedureStore store = new WALProcedureStore(conf, new Path(args[0]), null,<a name="line.1414"></a>
+<span class="sourceLineNo">1415</span>      new LeaseRecovery() {<a name="line.1415"></a>
+<span class="sourceLineNo">1416</span>        @Override<a name="line.1416"></a>
+<span class="sourceLineNo">1417</span>        public void recoverFileLease(FileSystem fs, Path path) throws IOException {<a name="line.1417"></a>
+<span class="sourceLineNo">1418</span>          // no-op<a name="line.1418"></a>
+<span class="sourceLineNo">1419</span>        }<a name="line.1419"></a>
+<span class="sourceLineNo">1420</span>      });<a name="line.1420"></a>
+<span class="sourceLineNo">1421</span>    try {<a name="line.1421"></a>
+<span class="sourceLineNo">1422</span>      store.start(16);<a name="line.1422"></a>
+<span class="sourceLineNo">1423</span>      ProcedureExecutor&lt;?&gt; pe = new ProcedureExecutor&lt;&gt;(conf, new Object()/*Pass anything*/, store);<a name="line.1423"></a>
+<span class="sourceLineNo">1424</span>      pe.init(1, true);<a name="line.1424"></a>
+<span class="sourceLineNo">1425</span>    } finally {<a name="line.1425"></a>
+<span class="sourceLineNo">1426</span>      store.stop(true);<a name="line.1426"></a>
+<span class="sourceLineNo">1427</span>    }<a name="line.1427"></a>
+<span class="sourceLineNo">1428</span>  }<a name="line.1428"></a>
+<span class="sourceLineNo">1429</span>}<a name="line.1429"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html
index 833f0a6..ab6a231 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.StoreFlusherImpl.html
@@ -1092,1753 +1092,1741 @@
 <span class="sourceLineNo">1084</span>  }<a name="line.1084"></a>
 <span class="sourceLineNo">1085</span><a name="line.1085"></a>
 <span class="sourceLineNo">1086</span>  /**<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>   * @param path The pathname of the tmp file into which the store was flushed<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span>   * @return store file created.<a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>   */<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span>  private HStoreFile commitFile(Path path, long logCacheFlushId, MonitoredTask status)<a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>      throws IOException {<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>    // Write-out finished successfully, move into the right spot<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>    Path dstPath = getRegionFileSystem().commitStoreFile(getColumnFamilyName(), path);<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span><a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>    status.setStatus("Flushing " + this + ": reopening flushed file");<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>    HStoreFile sf = createStoreFileAndReader(dstPath);<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span><a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>    StoreFileReader r = sf.getReader();<a name="line.1098"></a>
-<span class="sourceLineNo">1099</span>    this.storeSize.addAndGet(r.length());<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span>    this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.1100"></a>
-<span class="sourceLineNo">1101</span><a name="line.1101"></a>
-<span class="sourceLineNo">1102</span>    if (LOG.isInfoEnabled()) {<a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>      LOG.info("Added " + sf + ", entries=" + r.getEntries() +<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>        ", sequenceid=" + logCacheFlushId +<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span>        ", filesize=" + TraditionalBinaryPrefix.long2String(r.length(), "", 1));<a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>    }<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>    return sf;<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span>  }<a name="line.1108"></a>
-<span class="sourceLineNo">1109</span><a name="line.1109"></a>
-<span class="sourceLineNo">1110</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>    boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>    boolean shouldDropBehind) throws IOException {<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>    return createWriterInTmp(maxKeyCount, compression, isCompaction, includeMVCCReadpoint,<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>      includesTag, shouldDropBehind, -1, HConstants.EMPTY_STRING);<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>  }<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span><a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>  /**<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>   * @param compression Compression algorithm to use<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>   * @param isCompaction whether we are creating a new file in a compaction<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span>   * @param includeMVCCReadpoint - whether to include MVCC or not<a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>   * @param includesTag - includesTag or not<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>   * @return Writer for a new StoreFile in the tmp dir.<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>   */<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>  // TODO : allow the Writer factory to create Writers of ShipperListener type only in case of<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>  // compaction<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span>      boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>      boolean shouldDropBehind, long totalCompactedFilesSize, String fileStoragePolicy)<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span>        throws IOException {<a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    // creating new cache config for each new writer<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>    final CacheConfig cacheConf = getCacheConfig();<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span>    final CacheConfig writerCacheConf = new CacheConfig(cacheConf);<a name="line.1132"></a>
-<span class="sourceLineNo">1133</span>    if (isCompaction) {<a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>      // Don't cache data on write on compactions, unless specifically configured to do so<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>      // Cache only when total file size remains lower than configured threshold<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>      final boolean cacheCompactedBlocksOnWrite =<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>        getCacheConfig().shouldCacheCompactedBlocksOnWrite();<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span>      // if data blocks are to be cached on write<a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>      // during compaction, we should forcefully<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>      // cache index and bloom blocks as well<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>      if (cacheCompactedBlocksOnWrite &amp;&amp; totalCompactedFilesSize &lt;= cacheConf<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>        .getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>        if (!cacheOnWriteLogged) {<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>          LOG.info("For {} , cacheCompactedBlocksOnWrite is true, hence enabled " +<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>              "cacheOnWrite for Data blocks, Index blocks and Bloom filter blocks", this);<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>          cacheOnWriteLogged = true;<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>        }<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>      } else {<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>        writerCacheConf.setCacheDataOnWrite(false);<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>        if (totalCompactedFilesSize &gt; cacheConf.getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>          // checking condition once again for logging<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>          LOG.debug(<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>            "For {}, setting cacheCompactedBlocksOnWrite as false as total size of compacted "<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>              + "files - {}, is greater than cacheCompactedBlocksOnWriteThreshold - {}",<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>            this, totalCompactedFilesSize,<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>            cacheConf.getCacheCompactedBlocksOnWriteThreshold());<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>        }<a name="line.1158"></a>
-<span class="sourceLineNo">1159</span>      }<a name="line.1159"></a>
-<span class="sourceLineNo">1160</span>    } else {<a name="line.1160"></a>
-<span class="sourceLineNo">1161</span>      final boolean shouldCacheDataOnWrite = cacheConf.shouldCacheDataOnWrite();<a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>      if (shouldCacheDataOnWrite) {<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span>        if (!cacheOnWriteLogged) {<a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>          LOG.info("For {} , cacheDataOnWrite is true, hence enabled cacheOnWrite for " +<a name="line.1165"></a>
-<span class="sourceLineNo">1166</span>            "Index blocks and Bloom filter blocks", this);<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span>          cacheOnWriteLogged = true;<a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>        }<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>      }<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>    }<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>    Encryption.Context encryptionContext = storeContext.getEncryptionContext();<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>    HFileContext hFileContext = createFileContext(compression, includeMVCCReadpoint, includesTag,<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span>      encryptionContext);<a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>    Path familyTempDir = new Path(getRegionFileSystem().getTempDir(), getColumnFamilyName());<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span>    StoreFileWriter.Builder builder =<a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>      new StoreFileWriter.Builder(conf, writerCacheConf, getFileSystem())<a name="line.1176"></a>
-<span class="sourceLineNo">1177</span>        .withOutputDir(familyTempDir)<a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>        .withBloomType(storeContext.getBloomFilterType())<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>        .withMaxKeyCount(maxKeyCount)<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span>        .withFavoredNodes(storeContext.getFavoredNodes())<a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>        .withFileContext(hFileContext)<a name="line.1181"></a>
-<span class="sourceLineNo">1182</span>        .withShouldDropCacheBehind(shouldDropBehind)<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>        .withCompactedFilesSupplier(storeContext.getCompactedFilesSupplier())<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span>        .withFileStoragePolicy(fileStoragePolicy);<a name="line.1184"></a>
-<span class="sourceLineNo">1185</span>    return builder.build();<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>  }<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span><a name="line.1187"></a>
-<span class="sourceLineNo">1188</span>  private HFileContext createFileContext(Compression.Algorithm compression,<a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>    boolean includeMVCCReadpoint, boolean includesTag, Encryption.Context encryptionContext) {<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span>    if (compression == null) {<a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>      compression = HFile.DEFAULT_COMPRESSION_ALGORITHM;<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>    }<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>    ColumnFamilyDescriptor family = getColumnFamilyDescriptor();<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>    HFileContext hFileContext = new HFileContextBuilder()<a name="line.1194"></a>
-<span class="sourceLineNo">1195</span>      .withIncludesMvcc(includeMVCCReadpoint)<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>      .withIncludesTags(includesTag)<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span>      .withCompression(compression)<a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>      .withCompressTags(family.isCompressTags())<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>      .withChecksumType(StoreUtils.getChecksumType(conf))<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span>      .withBytesPerCheckSum(StoreUtils.getBytesPerChecksum(conf))<a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>      .withBlockSize(family.getBlocksize())<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>      .withHBaseCheckSum(true)<a name="line.1202"></a>
-<span class="sourceLineNo">1203</span>      .withDataBlockEncoding(family.getDataBlockEncoding())<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>      .withEncryptionContext(encryptionContext)<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>      .withCreateTime(EnvironmentEdgeManager.currentTime())<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>      .withColumnFamily(getColumnFamilyDescriptor().getName())<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>      .withTableName(getTableName().getName())<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span>      .withCellComparator(getComparator())<a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>      .build();<a name="line.1209"></a>
-<span class="sourceLineNo">1210</span>    return hFileContext;<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span>  }<a name="line.1211"></a>
-<span class="sourceLineNo">1212</span><a name="line.1212"></a>
-<span class="sourceLineNo">1213</span>  private long getTotalSize(Collection&lt;HStoreFile&gt; sfs) {<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span>    return sfs.stream().mapToLong(sf -&gt; sf.getReader().length()).sum();<a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>  }<a name="line.1215"></a>
-<span class="sourceLineNo">1216</span><a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>  /**<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span>   * Change storeFiles adding into place the Reader produced by this new flush.<a name="line.1218"></a>
-<span class="sourceLineNo">1219</span>   * @param sfs Store files<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>   * @return Whether compaction is required.<a name="line.1220"></a>
-<span class="sourceLineNo">1221</span>   */<a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>  private boolean updateStorefiles(List&lt;HStoreFile&gt; sfs, long snapshotId) throws IOException {<a name="line.1222"></a>
-<span class="sourceLineNo">1223</span>    this.lock.writeLock().lock();<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>    try {<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span>      this.storeEngine.getStoreFileManager().insertNewFiles(sfs);<a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>      if (snapshotId &gt; 0) {<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>        this.memstore.clearSnapshot(snapshotId);<a name="line.1227"></a>
-<span class="sourceLineNo">1228</span>      }<a name="line.1228"></a>
-<span class="sourceLineNo">1229</span>    } finally {<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>      // We need the lock, as long as we are updating the storeFiles<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>      // or changing the memstore. Let us release it before calling<a name="line.1231"></a>
-<span class="sourceLineNo">1232</span>      // notifyChangeReadersObservers. See HBASE-4485 for a possible<a name="line.1232"></a>
-<span class="sourceLineNo">1233</span>      // deadlock scenario that could have happened if continue to hold<a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>      // the lock.<a name="line.1234"></a>
-<span class="sourceLineNo">1235</span>      this.lock.writeLock().unlock();<a name="line.1235"></a>
-<span class="sourceLineNo">1236</span>    }<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span>    // notify to be called here - only in case of flushes<a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>    notifyChangedReadersObservers(sfs);<a name="line.1238"></a>
-<span class="sourceLineNo">1239</span>    if (LOG.isTraceEnabled()) {<a name="line.1239"></a>
-<span class="sourceLineNo">1240</span>      long totalSize = getTotalSize(sfs);<a name="line.1240"></a>
-<span class="sourceLineNo">1241</span>      String traceMessage = "FLUSH time,count,size,store size,store files ["<a name="line.1241"></a>
-<span class="sourceLineNo">1242</span>          + EnvironmentEdgeManager.currentTime() + "," + sfs.size() + "," + totalSize<a name="line.1242"></a>
-<span class="sourceLineNo">1243</span>          + "," + storeSize + "," + storeEngine.getStoreFileManager().getStorefileCount() + "]";<a name="line.1243"></a>
-<span class="sourceLineNo">1244</span>      LOG.trace(traceMessage);<a name="line.1244"></a>
-<span class="sourceLineNo">1245</span>    }<a name="line.1245"></a>
-<span class="sourceLineNo">1246</span>    return needsCompaction();<a name="line.1246"></a>
-<span class="sourceLineNo">1247</span>  }<a name="line.1247"></a>
-<span class="sourceLineNo">1248</span><a name="line.1248"></a>
-<span class="sourceLineNo">1249</span>  /**<a name="line.1249"></a>
-<span class="sourceLineNo">1250</span>   * Notify all observers that set of Readers has changed.<a name="line.1250"></a>
-<span class="sourceLineNo">1251</span>   */<a name="line.1251"></a>
-<span class="sourceLineNo">1252</span>  private void notifyChangedReadersObservers(List&lt;HStoreFile&gt; sfs) throws IOException {<a name="line.1252"></a>
-<span class="sourceLineNo">1253</span>    for (ChangedReadersObserver o : this.changedReaderObservers) {<a name="line.1253"></a>
-<span class="sourceLineNo">1254</span>      List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1254"></a>
-<span class="sourceLineNo">1255</span>      this.lock.readLock().lock();<a name="line.1255"></a>
-<span class="sourceLineNo">1256</span>      try {<a name="line.1256"></a>
-<span class="sourceLineNo">1257</span>        memStoreScanners = this.memstore.getScanners(o.getReadPoint());<a name="line.1257"></a>
-<span class="sourceLineNo">1258</span>      } finally {<a name="line.1258"></a>
-<span class="sourceLineNo">1259</span>        this.lock.readLock().unlock();<a name="line.1259"></a>
-<span class="sourceLineNo">1260</span>      }<a name="line.1260"></a>
-<span class="sourceLineNo">1261</span>      o.updateReaders(sfs, memStoreScanners);<a name="line.1261"></a>
+<span class="sourceLineNo">1087</span>   * Commit the given {@code files}.<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>   * &lt;p/&gt;<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>   * We will move the file into data directory, and open it.<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>   * @param files the files want to commit<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span>   * @param validate whether to validate the store files<a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>   * @return the committed store files<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>   */<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>  private List&lt;HStoreFile&gt; commitStoreFiles(List&lt;Path&gt; files, boolean validate) throws IOException {<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>    List&lt;HStoreFile&gt; committedFiles = new ArrayList&lt;&gt;(files.size());<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span>    HRegionFileSystem hfs = getRegionFileSystem();<a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>    String familyName = getColumnFamilyName();<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span>    for (Path file : files) {<a name="line.1098"></a>
+<span class="sourceLineNo">1099</span>      try {<a name="line.1099"></a>
+<span class="sourceLineNo">1100</span>        if (validate) {<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>          validateStoreFile(file);<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span>        }<a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>        Path committedPath = hfs.commitStoreFile(familyName, file);<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>        HStoreFile sf = createStoreFileAndReader(committedPath);<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>        committedFiles.add(sf);<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span>      } catch (IOException e) {<a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>        LOG.error("Failed to commit store file {}", file, e);<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span>        // Try to delete the files we have committed before.<a name="line.1108"></a>
+<span class="sourceLineNo">1109</span>        // It is OK to fail when deleting as leaving the file there does not cause any data<a name="line.1109"></a>
+<span class="sourceLineNo">1110</span>        // corruption problem. It just introduces some duplicated data which may impact read<a name="line.1110"></a>
+<span class="sourceLineNo">1111</span>        // performance a little when reading before compaction.<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>        for (HStoreFile sf : committedFiles) {<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>          Path pathToDelete = sf.getPath();<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>          try {<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>            sf.deleteStoreFile();<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>          } catch (IOException deleteEx) {<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>            LOG.warn(HBaseMarkers.FATAL, "Failed to delete committed store file {}", pathToDelete,<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span>              deleteEx);<a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>          }<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>        }<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>        throw new IOException("Failed to commit the flush", e);<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>      }<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>    }<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span>    return committedFiles;<a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>  }<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span><a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>    boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>    boolean shouldDropBehind) throws IOException {<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>    return createWriterInTmp(maxKeyCount, compression, isCompaction, includeMVCCReadpoint,<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>      includesTag, shouldDropBehind, -1, HConstants.EMPTY_STRING);<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>  }<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span><a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>  /**<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span>   * @param compression Compression algorithm to use<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span>   * @param isCompaction whether we are creating a new file in a compaction<a name="line.1136"></a>
+<span class="sourceLineNo">1137</span>   * @param includeMVCCReadpoint - whether to include MVCC or not<a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>   * @param includesTag - includesTag or not<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>   * @return Writer for a new StoreFile in the tmp dir.<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>   */<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span>  // TODO : allow the Writer factory to create Writers of ShipperListener type only in case of<a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>  // compaction<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>      boolean shouldDropBehind, long totalCompactedFilesSize, String fileStoragePolicy)<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span>        throws IOException {<a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>    // creating new cache config for each new writer<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>    final CacheConfig cacheConf = getCacheConfig();<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>    final CacheConfig writerCacheConf = new CacheConfig(cacheConf);<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>    if (isCompaction) {<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>      // Don't cache data on write on compactions, unless specifically configured to do so<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>      // Cache only when total file size remains lower than configured threshold<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>      final boolean cacheCompactedBlocksOnWrite =<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>        getCacheConfig().shouldCacheCompactedBlocksOnWrite();<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>      // if data blocks are to be cached on write<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>      // during compaction, we should forcefully<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>      // cache index and bloom blocks as well<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      if (cacheCompactedBlocksOnWrite &amp;&amp; totalCompactedFilesSize &lt;= cacheConf<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>        .getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span>        if (!cacheOnWriteLogged) {<a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>          LOG.info("For {} , cacheCompactedBlocksOnWrite is true, hence enabled " +<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>              "cacheOnWrite for Data blocks, Index blocks and Bloom filter blocks", this);<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>          cacheOnWriteLogged = true;<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>        }<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span>      } else {<a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>        writerCacheConf.setCacheDataOnWrite(false);<a name="line.1167"></a>
+<span class="sourceLineNo">1168</span>        if (totalCompactedFilesSize &gt; cacheConf.getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1168"></a>
+<span class="sourceLineNo">1169</span>          // checking condition once again for logging<a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>          LOG.debug(<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>            "For {}, setting cacheCompactedBlocksOnWrite as false as total size of compacted "<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>              + "files - {}, is greater than cacheCompactedBlocksOnWriteThreshold - {}",<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>            this, totalCompactedFilesSize,<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>            cacheConf.getCacheCompactedBlocksOnWriteThreshold());<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>        }<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>      }<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span>    } else {<a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>      final boolean shouldCacheDataOnWrite = cacheConf.shouldCacheDataOnWrite();<a name="line.1178"></a>
+<span class="sourceLineNo">1179</span>      if (shouldCacheDataOnWrite) {<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span>        if (!cacheOnWriteLogged) {<a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>          LOG.info("For {} , cacheDataOnWrite is true, hence enabled cacheOnWrite for " +<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>            "Index blocks and Bloom filter blocks", this);<a name="line.1183"></a>
+<span class="sourceLineNo">1184</span>          cacheOnWriteLogged = true;<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span>        }<a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>      }<a name="line.1186"></a>
+<span class="sourceLineNo">1187</span>    }<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>    Encryption.Context encryptionContext = storeContext.getEncryptionContext();<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>    HFileContext hFileContext = createFileContext(compression, includeMVCCReadpoint, includesTag,<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span>      encryptionContext);<a name="line.1190"></a>
+<span class="sourceLineNo">1191</span>    Path familyTempDir = new Path(getRegionFileSystem().getTempDir(), getColumnFamilyName());<a name="line.1191"></a>
+<span class="sourceLineNo">1192</span>    StoreFileWriter.Builder builder =<a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>      new StoreFileWriter.Builder(conf, writerCacheConf, getFileSystem())<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>        .withOutputDir(familyTempDir)<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>        .withBloomType(storeContext.getBloomFilterType())<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>        .withMaxKeyCount(maxKeyCount)<a name="line.1196"></a>
+<span class="sourceLineNo">1197</span>        .withFavoredNodes(storeContext.getFavoredNodes())<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>        .withFileContext(hFileContext)<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span>        .withShouldDropCacheBehind(shouldDropBehind)<a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>        .withCompactedFilesSupplier(storeContext.getCompactedFilesSupplier())<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span>        .withFileStoragePolicy(fileStoragePolicy);<a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>    return builder.build();<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>  }<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span><a name="line.1204"></a>
+<span class="sourceLineNo">1205</span>  private HFileContext createFileContext(Compression.Algorithm compression,<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>    boolean includeMVCCReadpoint, boolean includesTag, Encryption.Context encryptionContext) {<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>    if (compression == null) {<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>      compression = HFile.DEFAULT_COMPRESSION_ALGORITHM;<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>    }<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>    ColumnFamilyDescriptor family = getColumnFamilyDescriptor();<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>    HFileContext hFileContext = new HFileContextBuilder()<a name="line.1211"></a>
+<span class="sourceLineNo">1212</span>      .withIncludesMvcc(includeMVCCReadpoint)<a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>      .withIncludesTags(includesTag)<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>      .withCompression(compression)<a name="line.1214"></a>
+<span class="sourceLineNo">1215</span>      .withCompressTags(family.isCompressTags())<a name="line.1215"></a>
+<span class="sourceLineNo">1216</span>      .withChecksumType(StoreUtils.getChecksumType(conf))<a name="line.1216"></a>
+<span class="sourceLineNo">1217</span>      .withBytesPerCheckSum(StoreUtils.getBytesPerChecksum(conf))<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>      .withBlockSize(family.getBlocksize())<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>      .withHBaseCheckSum(true)<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>      .withDataBlockEncoding(family.getDataBlockEncoding())<a name="line.1220"></a>
+<span class="sourceLineNo">1221</span>      .withEncryptionContext(encryptionContext)<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span>      .withCreateTime(EnvironmentEdgeManager.currentTime())<a name="line.1222"></a>
+<span class="sourceLineNo">1223</span>      .withColumnFamily(getColumnFamilyDescriptor().getName())<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span>      .withTableName(getTableName().getName())<a name="line.1224"></a>
+<span class="sourceLineNo">1225</span>      .withCellComparator(getComparator())<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span>      .build();<a name="line.1226"></a>
+<span class="sourceLineNo">1227</span>    return hFileContext;<a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>  }<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span><a name="line.1229"></a>
+<span class="sourceLineNo">1230</span>  private long getTotalSize(Collection&lt;HStoreFile&gt; sfs) {<a name="line.1230"></a>
+<span class="sourceLineNo">1231</span>    return sfs.stream().mapToLong(sf -&gt; sf.getReader().length()).sum();<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>  }<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span><a name="line.1233"></a>
+<span class="sourceLineNo">1234</span>  /**<a name="line.1234"></a>
+<span class="sourceLineNo">1235</span>   * Change storeFiles adding into place the Reader produced by this new flush.<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span>   * @param sfs Store files<a name="line.1236"></a>
+<span class="sourceLineNo">1237</span>   * @return Whether compaction is required.<a name="line.1237"></a>
+<span class="sourceLineNo">1238</span>   */<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span>  private boolean updateStorefiles(List&lt;HStoreFile&gt; sfs, long snapshotId) throws IOException {<a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>    this.lock.writeLock().lock();<a name="line.1240"></a>
+<span class="sourceLineNo">1241</span>    try {<a name="line.1241"></a>
+<span class="sourceLineNo">1242</span>      this.storeEngine.getStoreFileManager().insertNewFiles(sfs);<a name="line.1242"></a>
+<span class="sourceLineNo">1243</span>      if (snapshotId &gt; 0) {<a name="line.1243"></a>
+<span class="sourceLineNo">1244</span>        this.memstore.clearSnapshot(snapshotId);<a name="line.1244"></a>
+<span class="sourceLineNo">1245</span>      }<a name="line.1245"></a>
+<span class="sourceLineNo">1246</span>    } finally {<a name="line.1246"></a>
+<span class="sourceLineNo">1247</span>      // We need the lock, as long as we are updating the storeFiles<a name="line.1247"></a>
+<span class="sourceLineNo">1248</span>      // or changing the memstore. Let us release it before calling<a name="line.1248"></a>
+<span class="sourceLineNo">1249</span>      // notifyChangeReadersObservers. See HBASE-4485 for a possible<a name="line.1249"></a>
+<span class="sourceLineNo">1250</span>      // deadlock scenario that could have happened if continue to hold<a name="line.1250"></a>
+<span class="sourceLineNo">1251</span>      // the lock.<a name="line.1251"></a>
+<span class="sourceLineNo">1252</span>      this.lock.writeLock().unlock();<a name="line.1252"></a>
+<span class="sourceLineNo">1253</span>    }<a name="line.1253"></a>
+<span class="sourceLineNo">1254</span>    // notify to be called here - only in case of flushes<a name="line.1254"></a>
+<span class="sourceLineNo">1255</span>    notifyChangedReadersObservers(sfs);<a name="line.1255"></a>
+<span class="sourceLineNo">1256</span>    if (LOG.isTraceEnabled()) {<a name="line.1256"></a>
+<span class="sourceLineNo">1257</span>      long totalSize = getTotalSize(sfs);<a name="line.1257"></a>
+<span class="sourceLineNo">1258</span>      String traceMessage = "FLUSH time,count,size,store size,store files ["<a name="line.1258"></a>
+<span class="sourceLineNo">1259</span>          + EnvironmentEdgeManager.currentTime() + "," + sfs.size() + "," + totalSize<a name="line.1259"></a>
+<span class="sourceLineNo">1260</span>          + "," + storeSize + "," + storeEngine.getStoreFileManager().getStorefileCount() + "]";<a name="line.1260"></a>
+<span class="sourceLineNo">1261</span>      LOG.trace(traceMessage);<a name="line.1261"></a>
 <span class="sourceLineNo">1262</span>    }<a name="line.1262"></a>
-<span class="sourceLineNo">1263</span>  }<a name="line.1263"></a>
-<span class="sourceLineNo">1264</span><a name="line.1264"></a>
-<span class="sourceLineNo">1265</span>  /**<a name="line.1265"></a>
-<span class="sourceLineNo">1266</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1266"></a>
-<span class="sourceLineNo">1267</span>   * @param cacheBlocks cache the blocks or not<a name="line.1267"></a>
-<span class="sourceLineNo">1268</span>   * @param usePread true to use pread, false if not<a name="line.1268"></a>
-<span class="sourceLineNo">1269</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1269"></a>
-<span class="sourceLineNo">1270</span>   * @param matcher the scan query matcher<a name="line.1270"></a>
-<span class="sourceLineNo">1271</span>   * @param startRow the start row<a name="line.1271"></a>
-<span class="sourceLineNo">1272</span>   * @param stopRow the stop row<a name="line.1272"></a>
-<span class="sourceLineNo">1273</span>   * @param readPt the read point of the current scan<a name="line.1273"></a>
-<span class="sourceLineNo">1274</span>   * @return all scanners for this store<a name="line.1274"></a>
-<span class="sourceLineNo">1275</span>   */<a name="line.1275"></a>
-<span class="sourceLineNo">1276</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean isGet, boolean usePread,<a name="line.1276"></a>
-<span class="sourceLineNo">1277</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, byte[] stopRow, long readPt)<a name="line.1277"></a>
-<span class="sourceLineNo">1278</span>      throws IOException {<a name="line.1278"></a>
-<span class="sourceLineNo">1279</span>    return getScanners(cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow, false,<a name="line.1279"></a>
-<span class="sourceLineNo">1280</span>      readPt);<a name="line.1280"></a>
-<span class="sourceLineNo">1281</span>  }<a name="line.1281"></a>
-<span class="sourceLineNo">1282</span><a name="line.1282"></a>
-<span class="sourceLineNo">1283</span>  /**<a name="line.1283"></a>
-<span class="sourceLineNo">1284</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1284"></a>
-<span class="sourceLineNo">1285</span>   * @param cacheBlocks cache the blocks or not<a name="line.1285"></a>
-<span class="sourceLineNo">1286</span>   * @param usePread true to use pread, false if not<a name="line.1286"></a>
-<span class="sourceLineNo">1287</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1287"></a>
-<span class="sourceLineNo">1288</span>   * @param matcher the scan query matcher<a name="line.1288"></a>
-<span class="sourceLineNo">1289</span>   * @param startRow the start row<a name="line.1289"></a>
-<span class="sourceLineNo">1290</span>   * @param includeStartRow true to include start row, false if not<a name="line.1290"></a>
-<span class="sourceLineNo">1291</span>   * @param stopRow the stop row<a name="line.1291"></a>
-<span class="sourceLineNo">1292</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1292"></a>
-<span class="sourceLineNo">1293</span>   * @param readPt the read point of the current scan<a name="line.1293"></a>
-<span class="sourceLineNo">1294</span>   * @return all scanners for this store<a name="line.1294"></a>
-<span class="sourceLineNo">1295</span>   */<a name="line.1295"></a>
-<span class="sourceLineNo">1296</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean usePread,<a name="line.1296"></a>
-<span class="sourceLineNo">1297</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, boolean includeStartRow,<a name="line.1297"></a>
-<span class="sourceLineNo">1298</span>      byte[] stopRow, boolean includeStopRow, long readPt) throws IOException {<a name="line.1298"></a>
-<span class="sourceLineNo">1299</span>    Collection&lt;HStoreFile&gt; storeFilesToScan;<a name="line.1299"></a>
-<span class="sourceLineNo">1300</span>    List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1300"></a>
-<span class="sourceLineNo">1301</span>    this.lock.readLock().lock();<a name="line.1301"></a>
-<span class="sourceLineNo">1302</span>    try {<a name="line.1302"></a>
-<span class="sourceLineNo">1303</span>      storeFilesToScan = this.storeEngine.getStoreFileManager().getFilesForScan(startRow,<a name="line.1303"></a>
-<span class="sourceLineNo">1304</span>        includeStartRow, stopRow, includeStopRow);<a name="line.1304"></a>
-<span class="sourceLineNo">1305</span>      memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1305"></a>
-<span class="sourceLineNo">1306</span>    } finally {<a name="line.1306"></a>
-<span class="sourceLineNo">1307</span>      this.lock.readLock().unlock();<a name="line.1307"></a>
-<span class="sourceLineNo">1308</span>    }<a name="line.1308"></a>
-<span class="sourceLineNo">1309</span><a name="line.1309"></a>
-<span class="sourceLineNo">1310</span>    try {<a name="line.1310"></a>
-<span class="sourceLineNo">1311</span>      // First the store file scanners<a name="line.1311"></a>
-<span class="sourceLineNo">1312</span><a name="line.1312"></a>
-<span class="sourceLineNo">1313</span>      // TODO this used to get the store files in descending order,<a name="line.1313"></a>
-<span class="sourceLineNo">1314</span>      // but now we get them in ascending order, which I think is<a name="line.1314"></a>
-<span class="sourceLineNo">1315</span>      // actually more correct, since memstore get put at the end.<a name="line.1315"></a>
-<span class="sourceLineNo">1316</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1316"></a>
-<span class="sourceLineNo">1317</span>        .getScannersForStoreFiles(storeFilesToScan, cacheBlocks, usePread, isCompaction, false,<a name="line.1317"></a>
-<span class="sourceLineNo">1318</span>          matcher, readPt);<a name="line.1318"></a>
-<span class="sourceLineNo">1319</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1319"></a>
-<span class="sourceLineNo">1320</span>      scanners.addAll(sfScanners);<a name="line.1320"></a>
-<span class="sourceLineNo">1321</span>      // Then the memstore scanners<a name="line.1321"></a>
-<span class="sourceLineNo">1322</span>      scanners.addAll(memStoreScanners);<a name="line.1322"></a>
-<span class="sourceLineNo">1323</span>      return scanners;<a name="line.1323"></a>
-<span class="sourceLineNo">1324</span>    } catch (Throwable t) {<a name="line.1324"></a>
-<span class="sourceLineNo">1325</span>      clearAndClose(memStoreScanners);<a name="line.1325"></a>
-<span class="sourceLineNo">1326</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1326"></a>
-<span class="sourceLineNo">1327</span>    }<a name="line.1327"></a>
-<span class="sourceLineNo">1328</span>  }<a name="line.1328"></a>
+<span class="sourceLineNo">1263</span>    return needsCompaction();<a name="line.1263"></a>
+<span class="sourceLineNo">1264</span>  }<a name="line.1264"></a>
+<span class="sourceLineNo">1265</span><a name="line.1265"></a>
+<span class="sourceLineNo">1266</span>  /**<a name="line.1266"></a>
+<span class="sourceLineNo">1267</span>   * Notify all observers that set of Readers has changed.<a name="line.1267"></a>
+<span class="sourceLineNo">1268</span>   */<a name="line.1268"></a>
+<span class="sourceLineNo">1269</span>  private void notifyChangedReadersObservers(List&lt;HStoreFile&gt; sfs) throws IOException {<a name="line.1269"></a>
+<span class="sourceLineNo">1270</span>    for (ChangedReadersObserver o : this.changedReaderObservers) {<a name="line.1270"></a>
+<span class="sourceLineNo">1271</span>      List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1271"></a>
+<span class="sourceLineNo">1272</span>      this.lock.readLock().lock();<a name="line.1272"></a>
+<span class="sourceLineNo">1273</span>      try {<a name="line.1273"></a>
+<span class="sourceLineNo">1274</span>        memStoreScanners = this.memstore.getScanners(o.getReadPoint());<a name="line.1274"></a>
+<span class="sourceLineNo">1275</span>      } finally {<a name="line.1275"></a>
+<span class="sourceLineNo">1276</span>        this.lock.readLock().unlock();<a name="line.1276"></a>
+<span class="sourceLineNo">1277</span>      }<a name="line.1277"></a>
+<span class="sourceLineNo">1278</span>      o.updateReaders(sfs, memStoreScanners);<a name="line.1278"></a>
+<span class="sourceLineNo">1279</span>    }<a name="line.1279"></a>
+<span class="sourceLineNo">1280</span>  }<a name="line.1280"></a>
+<span class="sourceLineNo">1281</span><a name="line.1281"></a>
+<span class="sourceLineNo">1282</span>  /**<a name="line.1282"></a>
+<span class="sourceLineNo">1283</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1283"></a>
+<span class="sourceLineNo">1284</span>   * @param cacheBlocks cache the blocks or not<a name="line.1284"></a>
+<span class="sourceLineNo">1285</span>   * @param usePread true to use pread, false if not<a name="line.1285"></a>
+<span class="sourceLineNo">1286</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1286"></a>
+<span class="sourceLineNo">1287</span>   * @param matcher the scan query matcher<a name="line.1287"></a>
+<span class="sourceLineNo">1288</span>   * @param startRow the start row<a name="line.1288"></a>
+<span class="sourceLineNo">1289</span>   * @param stopRow the stop row<a name="line.1289"></a>
+<span class="sourceLineNo">1290</span>   * @param readPt the read point of the current scan<a name="line.1290"></a>
+<span class="sourceLineNo">1291</span>   * @return all scanners for this store<a name="line.1291"></a>
+<span class="sourceLineNo">1292</span>   */<a name="line.1292"></a>
+<span class="sourceLineNo">1293</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean isGet, boolean usePread,<a name="line.1293"></a>
+<span class="sourceLineNo">1294</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, byte[] stopRow, long readPt)<a name="line.1294"></a>
+<span class="sourceLineNo">1295</span>      throws IOException {<a name="line.1295"></a>
+<span class="sourceLineNo">1296</span>    return getScanners(cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow, false,<a name="line.1296"></a>
+<span class="sourceLineNo">1297</span>      readPt);<a name="line.1297"></a>
+<span class="sourceLineNo">1298</span>  }<a name="line.1298"></a>
+<span class="sourceLineNo">1299</span><a name="line.1299"></a>
+<span class="sourceLineNo">1300</span>  /**<a name="line.1300"></a>
+<span class="sourceLineNo">1301</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1301"></a>
+<span class="sourceLineNo">1302</span>   * @param cacheBlocks cache the blocks or not<a name="line.1302"></a>
+<span class="sourceLineNo">1303</span>   * @param usePread true to use pread, false if not<a name="line.1303"></a>
+<span class="sourceLineNo">1304</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1304"></a>
+<span class="sourceLineNo">1305</span>   * @param matcher the scan query matcher<a name="line.1305"></a>
+<span class="sourceLineNo">1306</span>   * @param startRow the start row<a name="line.1306"></a>
+<span class="sourceLineNo">1307</span>   * @param includeStartRow true to include start row, false if not<a name="line.1307"></a>
+<span class="sourceLineNo">1308</span>   * @param stopRow the stop row<a name="line.1308"></a>
+<span class="sourceLineNo">1309</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1309"></a>
+<span class="sourceLineNo">1310</span>   * @param readPt the read point of the current scan<a name="line.1310"></a>
+<span class="sourceLineNo">1311</span>   * @return all scanners for this store<a name="line.1311"></a>
+<span class="sourceLineNo">1312</span>   */<a name="line.1312"></a>
+<span class="sourceLineNo">1313</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean usePread,<a name="line.1313"></a>
+<span class="sourceLineNo">1314</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, boolean includeStartRow,<a name="line.1314"></a>
+<span class="sourceLineNo">1315</span>      byte[] stopRow, boolean includeStopRow, long readPt) throws IOException {<a name="line.1315"></a>
+<span class="sourceLineNo">1316</span>    Collection&lt;HStoreFile&gt; storeFilesToScan;<a name="line.1316"></a>
+<span class="sourceLineNo">1317</span>    List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1317"></a>
+<span class="sourceLineNo">1318</span>    this.lock.readLock().lock();<a name="line.1318"></a>
+<span class="sourceLineNo">1319</span>    try {<a name="line.1319"></a>
+<span class="sourceLineNo">1320</span>      storeFilesToScan = this.storeEngine.getStoreFileManager().getFilesForScan(startRow,<a name="line.1320"></a>
+<span class="sourceLineNo">1321</span>        includeStartRow, stopRow, includeStopRow);<a name="line.1321"></a>
+<span class="sourceLineNo">1322</span>      memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1322"></a>
+<span class="sourceLineNo">1323</span>    } finally {<a name="line.1323"></a>
+<span class="sourceLineNo">1324</span>      this.lock.readLock().unlock();<a name="line.1324"></a>
+<span class="sourceLineNo">1325</span>    }<a name="line.1325"></a>
+<span class="sourceLineNo">1326</span><a name="line.1326"></a>
+<span class="sourceLineNo">1327</span>    try {<a name="line.1327"></a>
+<span class="sourceLineNo">1328</span>      // First the store file scanners<a name="line.1328"></a>
 <span class="sourceLineNo">1329</span><a name="line.1329"></a>
-<span class="sourceLineNo">1330</span>  private static void clearAndClose(List&lt;KeyValueScanner&gt; scanners) {<a name="line.1330"></a>
-<span class="sourceLineNo">1331</span>    if (scanners == null) {<a name="line.1331"></a>
-<span class="sourceLineNo">1332</span>      return;<a name="line.1332"></a>
-<span class="sourceLineNo">1333</span>    }<a name="line.1333"></a>
-<span class="sourceLineNo">1334</span>    for (KeyValueScanner s : scanners) {<a name="line.1334"></a>
-<span class="sourceLineNo">1335</span>      s.close();<a name="line.1335"></a>
-<span class="sourceLineNo">1336</span>    }<a name="line.1336"></a>
-<span class="sourceLineNo">1337</span>    scanners.clear();<a name="line.1337"></a>
-<span class="sourceLineNo">1338</span>  }<a name="line.1338"></a>
-<span class="sourceLineNo">1339</span><a name="line.1339"></a>
-<span class="sourceLineNo">1340</span>  /**<a name="line.1340"></a>
-<span class="sourceLineNo">1341</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1341"></a>
-<span class="sourceLineNo">1342</span>   * (that happens further down the line).<a name="line.1342"></a>
-<span class="sourceLineNo">1343</span>   * @param files the list of files on which the scanners has to be created<a name="line.1343"></a>
-<span class="sourceLineNo">1344</span>   * @param cacheBlocks cache the blocks or not<a name="line.1344"></a>
-<span class="sourceLineNo">1345</span>   * @param usePread true to use pread, false if not<a name="line.1345"></a>
-<span class="sourceLineNo">1346</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1346"></a>
-<span class="sourceLineNo">1347</span>   * @param matcher the scan query matcher<a name="line.1347"></a>
-<span class="sourceLineNo">1348</span>   * @param startRow the start row<a name="line.1348"></a>
-<span class="sourceLineNo">1349</span>   * @param stopRow the stop row<a name="line.1349"></a>
-<span class="sourceLineNo">1350</span>   * @param readPt the read point of the current scan<a name="line.1350"></a>
-<span class="sourceLineNo">1351</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1351"></a>
-<span class="sourceLineNo">1352</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1352"></a>
-<span class="sourceLineNo">1353</span>   */<a name="line.1353"></a>
-<span class="sourceLineNo">1354</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1354"></a>
-<span class="sourceLineNo">1355</span>      boolean isGet, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.1355"></a>
-<span class="sourceLineNo">1356</span>      byte[] startRow, byte[] stopRow, long readPt, boolean includeMemstoreScanner)<a name="line.1356"></a>
-<span class="sourceLineNo">1357</span>      throws IOException {<a name="line.1357"></a>
-<span class="sourceLineNo">1358</span>    return getScanners(files, cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow,<a name="line.1358"></a>
-<span class="sourceLineNo">1359</span>      false, readPt, includeMemstoreScanner);<a name="line.1359"></a>
-<span class="sourceLineNo">1360</span>  }<a name="line.1360"></a>
-<span class="sourceLineNo">1361</span><a name="line.1361"></a>
-<span class="sourceLineNo">1362</span>  /**<a name="line.1362"></a>
-<span class="sourceLineNo">1363</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1363"></a>
-<span class="sourceLineNo">1364</span>   * (that happens further down the line).<a name="line.1364"></a>
-<span class="sourceLineNo">1365</span>   * @param files the list of files on which the scanners has to be created<a name="line.1365"></a>
-<span class="sourceLineNo">1366</span>   * @param cacheBlocks ache the blocks or not<a name="line.1366"></a>
-<span class="sourceLineNo">1367</span>   * @param usePread true to use pread, false if not<a name="line.1367"></a>
-<span class="sourceLineNo">1368</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1368"></a>
-<span class="sourceLineNo">1369</span>   * @param matcher the scan query matcher<a name="line.1369"></a>
-<span class="sourceLineNo">1370</span>   * @param startRow the start row<a name="line.1370"></a>
-<span class="sourceLineNo">1371</span>   * @param includeStartRow true to include start row, false if not<a name="line.1371"></a>
-<span class="sourceLineNo">1372</span>   * @param stopRow the stop row<a name="line.1372"></a>
-<span class="sourceLineNo">1373</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1373"></a>
-<span class="sourceLineNo">1374</span>   * @param readPt the read point of the current scan<a name="line.1374"></a>
-<span class="sourceLineNo">1375</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1375"></a>
-<span class="sourceLineNo">1376</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1376"></a>
-<span class="sourceLineNo">1377</span>   */<a name="line.1377"></a>
-<span class="sourceLineNo">1378</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1378"></a>
-<span class="sourceLineNo">1379</span>      boolean usePread, boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow,<a name="line.1379"></a>
-<span class="sourceLineNo">1380</span>      boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.1380"></a>
-<span class="sourceLineNo">1381</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.1381"></a>
-<span class="sourceLineNo">1382</span>    List&lt;KeyValueScanner&gt; memStoreScanners = null;<a name="line.1382"></a>
-<span class="sourceLineNo">1383</span>    if (includeMemstoreScanner) {<a name="line.1383"></a>
-<span class="sourceLineNo">1384</span>      this.lock.readLock().lock();<a name="line.1384"></a>
-<span class="sourceLineNo">1385</span>      try {<a name="line.1385"></a>
-<span class="sourceLineNo">1386</span>        memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1386"></a>
-<span class="sourceLineNo">1387</span>      } finally {<a name="line.1387"></a>
-<span class="sourceLineNo">1388</span>        this.lock.readLock().unlock();<a name="line.1388"></a>
-<span class="sourceLineNo">1389</span>      }<a name="line.1389"></a>
-<span class="sourceLineNo">1390</span>    }<a name="line.1390"></a>
-<span class="sourceLineNo">1391</span>    try {<a name="line.1391"></a>
-<span class="sourceLineNo">1392</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1392"></a>
-<span class="sourceLineNo">1393</span>        .getScannersForStoreFiles(files, cacheBlocks, usePread, isCompaction, false, matcher,<a name="line.1393"></a>
-<span class="sourceLineNo">1394</span>          readPt);<a name="line.1394"></a>
-<span class="sourceLineNo">1395</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1395"></a>
-<span class="sourceLineNo">1396</span>      scanners.addAll(sfScanners);<a name="line.1396"></a>
-<span class="sourceLineNo">1397</span>      // Then the memstore scanners<a name="line.1397"></a>
-<span class="sourceLineNo">1398</span>      if (memStoreScanners != null) {<a name="line.1398"></a>
-<span class="sourceLineNo">1399</span>        scanners.addAll(memStoreScanners);<a name="line.1399"></a>
-<span class="sourceLineNo">1400</span>      }<a name="line.1400"></a>
-<span class="sourceLineNo">1401</span>      return scanners;<a name="line.1401"></a>
-<span class="sourceLineNo">1402</span>    } catch (Throwable t) {<a name="line.1402"></a>
-<span class="sourceLineNo">1403</span>      clearAndClose(memStoreScanners);<a name="line.1403"></a>
-<span class="sourceLineNo">1404</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1404"></a>
-<span class="sourceLineNo">1405</span>    }<a name="line.1405"></a>
-<span class="sourceLineNo">1406</span>  }<a name="line.1406"></a>
-<span class="sourceLineNo">1407</span><a name="line.1407"></a>
-<span class="sourceLineNo">1408</span>  /**<a name="line.1408"></a>
-<span class="sourceLineNo">1409</span>   * @param o Observer who wants to know about changes in set of Readers<a name="line.1409"></a>
-<span class="sourceLineNo">1410</span>   */<a name="line.1410"></a>
-<span class="sourceLineNo">1411</span>  public void addChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1411"></a>
-<span class="sourceLineNo">1412</span>    this.changedReaderObservers.add(o);<a name="line.1412"></a>
-<span class="sourceLineNo">1413</span>  }<a name="line.1413"></a>
-<span class="sourceLineNo">1414</span><a name="line.1414"></a>
-<span class="sourceLineNo">1415</span>  /**<a name="line.1415"></a>
-<span class="sourceLineNo">1416</span>   * @param o Observer no longer interested in changes in set of Readers.<a name="line.1416"></a>
-<span class="sourceLineNo">1417</span>   */<a name="line.1417"></a>
-<span class="sourceLineNo">1418</span>  public void deleteChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1418"></a>
-<span class="sourceLineNo">1419</span>    // We don't check if observer present; it may not be (legitimately)<a name="line.1419"></a>
-<span class="sourceLineNo">1420</span>    this.changedReaderObservers.remove(o);<a name="line.1420"></a>
-<span class="sourceLineNo">1421</span>  }<a name="line.1421"></a>
-<span class="sourceLineNo">1422</span><a name="line.1422"></a>
-<span class="sourceLineNo">1423</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1423"></a>
-<span class="sourceLineNo">1424</span>  // Compaction<a name="line.1424"></a>
-<span class="sourceLineNo">1425</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1425"></a>
-<span class="sourceLineNo">1426</span><a name="line.1426"></a>
-<span class="sourceLineNo">1427</span>  /**<a name="line.1427"></a>
-<span class="sourceLineNo">1428</span>   * Compact the StoreFiles.  This method may take some time, so the calling<a name="line.1428"></a>
-<span class="sourceLineNo">1429</span>   * thread must be able to block for long periods.<a name="line.1429"></a>
-<span class="sourceLineNo">1430</span>   *<a name="line.1430"></a>
-<span class="sourceLineNo">1431</span>   * &lt;p&gt;During this time, the Store can work as usual, getting values from<a name="line.1431"></a>
-<span class="sourceLineNo">1432</span>   * StoreFiles and writing new StoreFiles from the memstore.<a name="line.1432"></a>
-<span class="sourceLineNo">1433</span>   *<a name="line.1433"></a>
-<span class="sourceLineNo">1434</span>   * Existing StoreFiles are not destroyed until the new compacted StoreFile is<a name="line.1434"></a>
-<span class="sourceLineNo">1435</span>   * completely written-out to disk.<a name="line.1435"></a>
-<span class="sourceLineNo">1436</span>   *<a name="line.1436"></a>
-<span class="sourceLineNo">1437</span>   * &lt;p&gt;The compactLock prevents multiple simultaneous compactions.<a name="line.1437"></a>
-<span class="sourceLineNo">1438</span>   * The structureLock prevents us from interfering with other write operations.<a name="line.1438"></a>
-<span class="sourceLineNo">1439</span>   *<a name="line.1439"></a>
-<span class="sourceLineNo">1440</span>   * &lt;p&gt;We don't want to hold the structureLock for the whole time, as a compact()<a name="line.1440"></a>
-<span class="sourceLineNo">1441</span>   * can be lengthy and we want to allow cache-flushes during this period.<a name="line.1441"></a>
-<span class="sourceLineNo">1442</span>   *<a name="line.1442"></a>
-<span class="sourceLineNo">1443</span>   * &lt;p&gt; Compaction event should be idempotent, since there is no IO Fencing for<a name="line.1443"></a>
-<span class="sourceLineNo">1444</span>   * the region directory in hdfs. A region server might still try to complete the<a name="line.1444"></a>
-<span class="sourceLineNo">1445</span>   * compaction after it lost the region. That is why the following events are carefully<a name="line.1445"></a>
-<span class="sourceLineNo">1446</span>   * ordered for a compaction:<a name="line.1446"></a>
-<span class="sourceLineNo">1447</span>   *  1. Compaction writes new files under region/.tmp directory (compaction output)<a name="line.1447"></a>
-<span class="sourceLineNo">1448</span>   *  2. Compaction atomically moves the temporary file under region directory<a name="line.1448"></a>
-<span class="sourceLineNo">1449</span>   *  3. Compaction appends a WAL edit containing the compaction input and output files.<a name="line.1449"></a>
-<span class="sourceLineNo">1450</span>   *  Forces sync on WAL.<a name="line.1450"></a>
-<span class="sourceLineNo">1451</span>   *  4. Compaction deletes the input files from the region directory.<a name="line.1451"></a>
-<span class="sourceLineNo">1452</span>   *<a name="line.1452"></a>
-<span class="sourceLineNo">1453</span>   * Failure conditions are handled like this:<a name="line.1453"></a>
-<span class="sourceLineNo">1454</span>   *  - If RS fails before 2, compaction wont complete. Even if RS lives on and finishes<a name="line.1454"></a>
-<span class="sourceLineNo">1455</span>   *  the compaction later, it will only write the new data file to the region directory.<a name="line.1455"></a>
-<span class="sourceLineNo">1456</span>   *  Since we already have this data, this will be idempotent but we will have a redundant<a name="line.1456"></a>
-<span class="sourceLineNo">1457</span>   *  copy of the data.<a name="line.1457"></a>
-<span class="sourceLineNo">1458</span>   *  - If RS fails between 2 and 3, the region will have a redundant copy of the data. The<a name="line.1458"></a>
-<span class="sourceLineNo">1459</span>   *  RS that failed won't be able to finish sync() for WAL because of lease recovery in WAL.<a name="line.1459"></a>
-<span class="sourceLineNo">1460</span>   *  - If RS fails after 3, the region region server who opens the region will pick up the<a name="line.1460"></a>
-<span class="sourceLineNo">1461</span>   *  the compaction marker from the WAL and replay it by removing the compaction input files.<a name="line.1461"></a>
-<span class="sourceLineNo">1462</span>   *  Failed RS can also attempt to delete those files, but the operation will be idempotent<a name="line.1462"></a>
-<span class="sourceLineNo">1463</span>   *<a name="line.1463"></a>
-<span class="sourceLineNo">1464</span>   * See HBASE-2231 for details.<a name="line.1464"></a>
-<span class="sourceLineNo">1465</span>   *<a name="line.1465"></a>
-<span class="sourceLineNo">1466</span>   * @param compaction compaction details obtained from requestCompaction()<a name="line.1466"></a>
-<span class="sourceLineNo">1467</span>   * @return Storefile we compacted into or null if we failed or opted out early.<a name="line.1467"></a>
-<span class="sourceLineNo">1468</span>   */<a name="line.1468"></a>
-<span class="sourceLineNo">1469</span>  public List&lt;HStoreFile&gt; compact(CompactionContext compaction,<a name="line.1469"></a>
-<span class="sourceLineNo">1470</span>    ThroughputController throughputController, User user) throws IOException {<a name="line.1470"></a>
-<span class="sourceLineNo">1471</span>    assert compaction != null;<a name="line.1471"></a>
-<span class="sourceLineNo">1472</span>    CompactionRequestImpl cr = compaction.getRequest();<a name="line.1472"></a>
-<span class="sourceLineNo">1473</span>    try {<a name="line.1473"></a>
-<span class="sourceLineNo">1474</span>      // Do all sanity checking in here if we have a valid CompactionRequestImpl<a name="line.1474"></a>
-<span class="sourceLineNo">1475</span>      // because we need to clean up after it on the way out in a finally<a name="line.1475"></a>
-<span class="sourceLineNo">1476</span>      // block below<a name="line.1476"></a>
-<span class="sourceLineNo">1477</span>      long compactionStartTime = EnvironmentEdgeManager.currentTime();<a name="line.1477"></a>
-<span class="sourceLineNo">1478</span>      assert compaction.hasSelection();<a name="line.1478"></a>
-<span class="sourceLineNo">1479</span>      Collection&lt;HStoreFile&gt; filesToCompact = cr.getFiles();<a name="line.1479"></a>
-<span class="sourceLineNo">1480</span>      assert !filesToCompact.isEmpty();<a name="line.1480"></a>
-<span class="sourceLineNo">1481</span>      synchronized (filesCompacting) {<a name="line.1481"></a>
-<span class="sourceLineNo">1482</span>        // sanity check: we're compacting files that this store knows about<a name="line.1482"></a>
-<span class="sourceLineNo">1483</span>        // TODO: change this to LOG.error() after more debugging<a name="line.1483"></a>
-<span class="sourceLineNo">1484</span>        Preconditions.checkArgument(filesCompacting.containsAll(filesToCompact));<a name="line.1484"></a>
-<span class="sourceLineNo">1485</span>      }<a name="line.1485"></a>
-<span class="sourceLineNo">1486</span><a name="line.1486"></a>
-<span class="sourceLineNo">1487</span>      // Ready to go. Have list of files to compact.<a name="line.1487"></a>
-<span class="sourceLineNo">1488</span>      LOG.info("Starting compaction of " + filesToCompact +<a name="line.1488"></a>
-<span class="sourceLineNo">1489</span>        " into tmpdir=" + getRegionFileSystem().getTempDir() + ", totalSize=" +<a name="line.1489"></a>
-<span class="sourceLineNo">1490</span>          TraditionalBinaryPrefix.long2String(cr.getSize(), "", 1));<a name="line.1490"></a>
-<span class="sourceLineNo">1491</span><a name="line.1491"></a>
-<span class="sourceLineNo">1492</span>      return doCompaction(cr, filesToCompact, user, compactionStartTime,<a name="line.1492"></a>
-<span class="sourceLineNo">1493</span>          compaction.compact(throughputController, user));<a name="line.1493"></a>
-<span class="sourceLineNo">1494</span>    } finally {<a name="line.1494"></a>
-<span class="sourceLineNo">1495</span>      finishCompactionRequest(cr);<a name="line.1495"></a>
-<span class="sourceLineNo">1496</span>    }<a name="line.1496"></a>
-<span class="sourceLineNo">1497</span>  }<a name="line.1497"></a>
-<span class="sourceLineNo">1498</span><a name="line.1498"></a>
-<span class="sourceLineNo">1499</span>  protected List&lt;HStoreFile&gt; doCompaction(CompactionRequestImpl cr,<a name="line.1499"></a>
-<span class="sourceLineNo">1500</span>      Collection&lt;HStoreFile&gt; filesToCompact, User user, long compactionStartTime,<a name="line.1500"></a>
-<span class="sourceLineNo">1501</span>      List&lt;Path&gt; newFiles) throws IOException {<a name="line.1501"></a>
-<span class="sourceLineNo">1502</span>    // Do the steps necessary to complete the compaction.<a name="line.1502"></a>
-<span class="sourceLineNo">1503</span>    setStoragePolicyFromFileName(newFiles);<a name="line.1503"></a>
-<span class="sourceLineNo">1504</span>    List&lt;HStoreFile&gt; sfs = moveCompactedFilesIntoPlace(cr, newFiles, user);<a name="line.1504"></a>
-<span class="sourceLineNo">1505</span>    writeCompactionWalRecord(filesToCompact, sfs);<a name="line.1505"></a>
-<span class="sourceLineNo">1506</span>    replaceStoreFiles(filesToCompact, sfs);<a name="line.1506"></a>
-<span class="sourceLineNo">1507</span>    if (cr.isMajor()) {<a name="line.1507"></a>
-<span class="sourceLineNo">1508</span>      majorCompactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1508"></a>
-<span class="sourceLineNo">1509</span>      majorCompactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1509"></a>
-<span class="sourceLineNo">1510</span>    } else {<a name="line.1510"></a>
-<span class="sourceLineNo">1511</span>      compactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1511"></a>
-<span class="sourceLineNo">1512</span>      compactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1512"></a>
+<span class="sourceLineNo">1330</span>      // TODO this used to get the store files in descending order,<a name="line.1330"></a>
+<span class="sourceLineNo">1331</span>      // but now we get them in ascending order, which I think is<a name="line.1331"></a>
+<span class="sourceLineNo">1332</span>      // actually more correct, since memstore get put at the end.<a name="line.1332"></a>
+<span class="sourceLineNo">1333</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1333"></a>
+<span class="sourceLineNo">1334</span>        .getScannersForStoreFiles(storeFilesToScan, cacheBlocks, usePread, isCompaction, false,<a name="line.1334"></a>
+<span class="sourceLineNo">1335</span>          matcher, readPt);<a name="line.1335"></a>
+<span class="sourceLineNo">1336</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1336"></a>
+<span class="sourceLineNo">1337</span>      scanners.addAll(sfScanners);<a name="line.1337"></a>
+<span class="sourceLineNo">1338</span>      // Then the memstore scanners<a name="line.1338"></a>
+<span class="sourceLineNo">1339</span>      scanners.addAll(memStoreScanners);<a name="line.1339"></a>
+<span class="sourceLineNo">1340</span>      return scanners;<a name="line.1340"></a>
+<span class="sourceLineNo">1341</span>    } catch (Throwable t) {<a name="line.1341"></a>
+<span class="sourceLineNo">1342</span>      clearAndClose(memStoreScanners);<a name="line.1342"></a>
+<span class="sourceLineNo">1343</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1343"></a>
+<span class="sourceLineNo">1344</span>    }<a name="line.1344"></a>
+<span class="sourceLineNo">1345</span>  }<a name="line.1345"></a>
+<span class="sourceLineNo">1346</span><a name="line.1346"></a>
+<span class="sourceLineNo">1347</span>  private static void clearAndClose(List&lt;KeyValueScanner&gt; scanners) {<a name="line.1347"></a>
+<span class="sourceLineNo">1348</span>    if (scanners == null) {<a name="line.1348"></a>
+<span class="sourceLineNo">1349</span>      return;<a name="line.1349"></a>
+<span class="sourceLineNo">1350</span>    }<a name="line.1350"></a>
+<span class="sourceLineNo">1351</span>    for (KeyValueScanner s : scanners) {<a name="line.1351"></a>
+<span class="sourceLineNo">1352</span>      s.close();<a name="line.1352"></a>
+<span class="sourceLineNo">1353</span>    }<a name="line.1353"></a>
+<span class="sourceLineNo">1354</span>    scanners.clear();<a name="line.1354"></a>
+<span class="sourceLineNo">1355</span>  }<a name="line.1355"></a>
+<span class="sourceLineNo">1356</span><a name="line.1356"></a>
+<span class="sourceLineNo">1357</span>  /**<a name="line.1357"></a>
+<span class="sourceLineNo">1358</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1358"></a>
+<span class="sourceLineNo">1359</span>   * (that happens further down the line).<a name="line.1359"></a>
+<span class="sourceLineNo">1360</span>   * @param files the list of files on which the scanners has to be created<a name="line.1360"></a>
+<span class="sourceLineNo">1361</span>   * @param cacheBlocks cache the blocks or not<a name="line.1361"></a>
+<span class="sourceLineNo">1362</span>   * @param usePread true to use pread, false if not<a name="line.1362"></a>
+<span class="sourceLineNo">1363</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1363"></a>
+<span class="sourceLineNo">1364</span>   * @param matcher the scan query matcher<a name="line.1364"></a>
+<span class="sourceLineNo">1365</span>   * @param startRow the start row<a name="line.1365"></a>
+<span class="sourceLineNo">1366</span>   * @param stopRow the stop row<a name="line.1366"></a>
+<span class="sourceLineNo">1367</span>   * @param readPt the read point of the current scan<a name="line.1367"></a>
+<span class="sourceLineNo">1368</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1368"></a>
+<span class="sourceLineNo">1369</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1369"></a>
+<span class="sourceLineNo">1370</span>   */<a name="line.1370"></a>
+<span class="sourceLineNo">1371</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1371"></a>
+<span class="sourceLineNo">1372</span>      boolean isGet, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.1372"></a>
+<span class="sourceLineNo">1373</span>      byte[] startRow, byte[] stopRow, long readPt, boolean includeMemstoreScanner)<a name="line.1373"></a>
+<span class="sourceLineNo">1374</span>      throws IOException {<a name="line.1374"></a>
+<span class="sourceLineNo">1375</span>    return getScanners(files, cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow,<a name="line.1375"></a>
+<span class="sourceLineNo">1376</span>      false, readPt, includeMemstoreScanner);<a name="line.1376"></a>
+<span class="sourceLineNo">1377</span>  }<a name="line.1377"></a>
+<span class="sourceLineNo">1378</span><a name="line.1378"></a>
+<span class="sourceLineNo">1379</span>  /**<a name="line.1379"></a>
+<span class="sourceLineNo">1380</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1380"></a>
+<span class="sourceLineNo">1381</span>   * (that happens further down the line).<a name="line.1381"></a>
+<span class="sourceLineNo">1382</span>   * @param files the list of files on which the scanners has to be created<a name="line.1382"></a>
+<span class="sourceLineNo">1383</span>   * @param cacheBlocks ache the blocks or not<a name="line.1383"></a>
+<span class="sourceLineNo">1384</span>   * @param usePread true to use pread, false if not<a name="line.1384"></a>
+<span class="sourceLineNo">1385</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1385"></a>
+<span class="sourceLineNo">1386</span>   * @param matcher the scan query matcher<a name="line.1386"></a>
+<span class="sourceLineNo">1387</span>   * @param startRow the start row<a name="line.1387"></a>
+<span class="sourceLineNo">1388</span>   * @param includeStartRow true to include start row, false if not<a name="line.1388"></a>
+<span class="sourceLineNo">1389</span>   * @param stopRow the stop row<a name="line.1389"></a>
+<span class="sourceLineNo">1390</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1390"></a>
+<span class="sourceLineNo">1391</span>   * @param readPt the read point of the current scan<a name="line.1391"></a>
+<span class="sourceLineNo">1392</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1392"></a>
+<span class="sourceLineNo">1393</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1393"></a>
+<span class="sourceLineNo">1394</span>   */<a name="line.1394"></a>
+<span class="sourceLineNo">1395</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1395"></a>
+<span class="sourceLineNo">1396</span>      boolean usePread, boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow,<a name="line.1396"></a>
+<span class="sourceLineNo">1397</span>      boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.1397"></a>
+<span class="sourceLineNo">1398</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.1398"></a>
+<span class="sourceLineNo">1399</span>    List&lt;KeyValueScanner&gt; memStoreScanners = null;<a name="line.1399"></a>
+<span class="sourceLineNo">1400</span>    if (includeMemstoreScanner) {<a name="line.1400"></a>
+<span class="sourceLineNo">1401</span>      this.lock.readLock().lock();<a name="line.1401"></a>
+<span class="sourceLineNo">1402</span>      try {<a name="line.1402"></a>
+<span class="sourceLineNo">1403</span>        memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1403"></a>
+<span class="sourceLineNo">1404</span>      } finally {<a name="line.1404"></a>
+<span class="sourceLineNo">1405</span>        this.lock.readLock().unlock();<a name="line.1405"></a>
+<span class="sourceLineNo">1406</span>      }<a name="line.1406"></a>
+<span class="sourceLineNo">1407</span>    }<a name="line.1407"></a>
+<span class="sourceLineNo">1408</span>    try {<a name="line.1408"></a>
+<span class="sourceLineNo">1409</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1409"></a>
+<span class="sourceLineNo">1410</span>        .getScannersForStoreFiles(files, cacheBlocks, usePread, isCompaction, false, matcher,<a name="line.1410"></a>
+<span class="sourceLineNo">1411</span>          readPt);<a name="line.1411"></a>
+<span class="sourceLineNo">1412</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1412"></a>
+<span class="sourceLineNo">1413</span>      scanners.addAll(sfScanners);<a name="line.1413"></a>
+<span class="sourceLineNo">1414</span>      // Then the memstore scanners<a name="line.1414"></a>
+<span class="sourceLineNo">1415</span>      if (memStoreScanners != null) {<a name="line.1415"></a>
+<span class="sourceLineNo">1416</span>        scanners.addAll(memStoreScanners);<a name="line.1416"></a>
+<span class="sourceLineNo">1417</span>      }<a name="line.1417"></a>
+<span class="sourceLineNo">1418</span>      return scanners;<a name="line.1418"></a>
+<span class="sourceLineNo">1419</span>    } catch (Throwable t) {<a name="line.1419"></a>
+<span class="sourceLineNo">1420</span>      clearAndClose(memStoreScanners);<a name="line.1420"></a>
+<span class="sourceLineNo">1421</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1421"></a>
+<span class="sourceLineNo">1422</span>    }<a name="line.1422"></a>
+<span class="sourceLineNo">1423</span>  }<a name="line.1423"></a>
+<span class="sourceLineNo">1424</span><a name="line.1424"></a>
+<span class="sourceLineNo">1425</span>  /**<a name="line.1425"></a>
+<span class="sourceLineNo">1426</span>   * @param o Observer who wants to know about changes in set of Readers<a name="line.1426"></a>
+<span class="sourceLineNo">1427</span>   */<a name="line.1427"></a>
+<span class="sourceLineNo">1428</span>  public void addChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1428"></a>
+<span class="sourceLineNo">1429</span>    this.changedReaderObservers.add(o);<a name="line.1429"></a>
+<span class="sourceLineNo">1430</span>  }<a name="line.1430"></a>
+<span class="sourceLineNo">1431</span><a name="line.1431"></a>
+<span class="sourceLineNo">1432</span>  /**<a name="line.1432"></a>
+<span class="sourceLineNo">1433</span>   * @param o Observer no longer interested in changes in set of Readers.<a name="line.1433"></a>
+<span class="sourceLineNo">1434</span>   */<a name="line.1434"></a>
+<span class="sourceLineNo">1435</span>  public void deleteChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1435"></a>
+<span class="sourceLineNo">1436</span>    // We don't check if observer present; it may not be (legitimately)<a name="line.1436"></a>
+<span class="sourceLineNo">1437</span>    this.changedReaderObservers.remove(o);<a name="line.1437"></a>
+<span class="sourceLineNo">1438</span>  }<a name="line.1438"></a>
+<span class="sourceLineNo">1439</span><a name="line.1439"></a>
+<span class="sourceLineNo">1440</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1440"></a>
+<span class="sourceLineNo">1441</span>  // Compaction<a name="line.1441"></a>
+<span class="sourceLineNo">1442</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1442"></a>
+<span class="sourceLineNo">1443</span><a name="line.1443"></a>
+<span class="sourceLineNo">1444</span>  /**<a name="line.1444"></a>
+<span class="sourceLineNo">1445</span>   * Compact the StoreFiles.  This method may take some time, so the calling<a name="line.1445"></a>
+<span class="sourceLineNo">1446</span>   * thread must be able to block for long periods.<a name="line.1446"></a>
+<span class="sourceLineNo">1447</span>   *<a name="line.1447"></a>
+<span class="sourceLineNo">1448</span>   * &lt;p&gt;During this time, the Store can work as usual, getting values from<a name="line.1448"></a>
+<span class="sourceLineNo">1449</span>   * StoreFiles and writing new StoreFiles from the memstore.<a name="line.1449"></a>
+<span class="sourceLineNo">1450</span>   *<a name="line.1450"></a>
+<span class="sourceLineNo">1451</span>   * Existing StoreFiles are not destroyed until the new compacted StoreFile is<a name="line.1451"></a>
+<span class="sourceLineNo">1452</span>   * completely written-out to disk.<a name="line.1452"></a>
+<span class="sourceLineNo">1453</span>   *<a name="line.1453"></a>
+<span class="sourceLineNo">1454</span>   * &lt;p&gt;The compactLock prevents multiple simultaneous compactions.<a name="line.1454"></a>
+<span class="sourceLineNo">1455</span>   * The structureLock prevents us from interfering with other write operations.<a name="line.1455"></a>
+<span class="sourceLineNo">1456</span>   *<a name="line.1456"></a>
+<span class="sourceLineNo">1457</span>   * &lt;p&gt;We don't want to hold the structureLock for the whole time, as a compact()<a name="line.1457"></a>
+<span class="sourceLineNo">1458</span>   * can be lengthy and we want to allow cache-flushes during this period.<a name="line.1458"></a>
+<span class="sourceLineNo">1459</span>   *<a name="line.1459"></a>
+<span class="sourceLineNo">1460</span>   * &lt;p&gt; Compaction event should be idempotent, since there is no IO Fencing for<a name="line.1460"></a>
+<span class="sourceLineNo">1461</span>   * the region directory in hdfs. A region server might still try to complete the<a name="line.1461"></a>
+<span class="sourceLineNo">1462</span>   * compaction after it lost the region. That is why the following events are carefully<a name="line.1462"></a>
+<span class="sourceLineNo">1463</span>   * ordered for a compaction:<a name="line.1463"></a>
+<span class="sourceLineNo">1464</span>   *  1. Compaction writes new files under region/.tmp directory (compaction output)<a name="line.1464"></a>
+<span class="sourceLineNo">1465</span>   *  2. Compaction atomically moves the temporary file under region directory<a name="line.1465"></a>
+<span class="sourceLineNo">1466</span>   *  3. Compaction appends a WAL edit containing the compaction input and output files.<a name="line.1466"></a>
+<span class="sourceLineNo">1467</span>   *  Forces sync on WAL.<a name="line.1467"></a>
+<span class="sourceLineNo">1468</span>   *  4. Compaction deletes the input files from the region directory.<a name="line.1468"></a>
+<span class="sourceLineNo">1469</span>   *<a name="line.1469"></a>
+<span class="sourceLineNo">1470</span>   * Failure conditions are handled like this:<a name="line.1470"></a>
+<span class="sourceLineNo">1471</span>   *  - If RS fails before 2, compaction wont complete. Even if RS lives on and finishes<a name="line.1471"></a>
+<span class="sourceLineNo">1472</span>   *  the compaction later, it will only write the new data file to the region directory.<a name="line.1472"></a>
+<span class="sourceLineNo">1473</span>   *  Since we already have this data, this will be idempotent but we will have a redundant<a name="line.1473"></a>
+<span class="sourceLineNo">1474</span>   *  copy of the data.<a name="line.1474"></a>
+<span class="sourceLineNo">1475</span>   *  - If RS fails between 2 and 3, the region will have a redundant copy of the data. The<a name="line.1475"></a>
+<span class="sourceLineNo">1476</span>   *  RS that failed won't be able to finish sync() for WAL because of lease recovery in WAL.<a name="line.1476"></a>
+<span class="sourceLineNo">1477</span>   *  - If RS fails after 3, the region region server who opens the region will pick up the<a name="line.1477"></a>
+<span class="sourceLineNo">1478</span>   *  the compaction marker from the WAL and replay it by removing the compaction input files.<a name="line.1478"></a>
+<span class="sourceLineNo">1479</span>   *  Failed RS can also attempt to delete those files, but the operation will be idempotent<a name="line.1479"></a>
+<span class="sourceLineNo">1480</span>   *<a name="line.1480"></a>
+<span class="sourceLineNo">1481</span>   * See HBASE-2231 for details.<a name="line.1481"></a>
+<span class="sourceLineNo">1482</span>   *<a name="line.1482"></a>
+<span class="sourceLineNo">1483</span>   * @param compaction compaction details obtained from requestCompaction()<a name="line.1483"></a>
+<span class="sourceLineNo">1484</span>   * @return Storefile we compacted into or null if we failed or opted out early.<a name="line.1484"></a>
+<span class="sourceLineNo">1485</span>   */<a name="line.1485"></a>
+<span class="sourceLineNo">1486</span>  public List&lt;HStoreFile&gt; compact(CompactionContext compaction,<a name="line.1486"></a>
+<span class="sourceLineNo">1487</span>    ThroughputController throughputController, User user) throws IOException {<a name="line.1487"></a>
+<span class="sourceLineNo">1488</span>    assert compaction != null;<a name="line.1488"></a>
+<span class="sourceLineNo">1489</span>    CompactionRequestImpl cr = compaction.getRequest();<a name="line.1489"></a>
+<span class="sourceLineNo">1490</span>    try {<a name="line.1490"></a>
+<span class="sourceLineNo">1491</span>      // Do all sanity checking in here if we have a valid CompactionRequestImpl<a name="line.1491"></a>
+<span class="sourceLineNo">1492</span>      // because we need to clean up after it on the way out in a finally<a name="line.1492"></a>
+<span class="sourceLineNo">1493</span>      // block below<a name="line.1493"></a>
+<span class="sourceLineNo">1494</span>      long compactionStartTime = EnvironmentEdgeManager.currentTime();<a name="line.1494"></a>
+<span class="sourceLineNo">1495</span>      assert compaction.hasSelection();<a name="line.1495"></a>
+<span class="sourceLineNo">1496</span>      Collection&lt;HStoreFile&gt; filesToCompact = cr.getFiles();<a name="line.1496"></a>
+<span class="sourceLineNo">1497</span>      assert !filesToCompact.isEmpty();<a name="line.1497"></a>
+<span class="sourceLineNo">1498</span>      synchronized (filesCompacting) {<a name="line.1498"></a>
+<span class="sourceLineNo">1499</span>        // sanity check: we're compacting files that this store knows about<a name="line.1499"></a>
+<span class="sourceLineNo">1500</span>        // TODO: change this to LOG.error() after more debugging<a name="line.1500"></a>
+<span class="sourceLineNo">1501</span>        Preconditions.checkArgument(filesCompacting.containsAll(filesToCompact));<a name="line.1501"></a>
+<span class="sourceLineNo">1502</span>      }<a name="line.1502"></a>
+<span class="sourceLineNo">1503</span><a name="line.1503"></a>
+<span class="sourceLineNo">1504</span>      // Ready to go. Have list of files to compact.<a name="line.1504"></a>
+<span class="sourceLineNo">1505</span>      LOG.info("Starting compaction of " + filesToCompact +<a name="line.1505"></a>
+<span class="sourceLineNo">1506</span>        " into tmpdir=" + getRegionFileSystem().getTempDir() + ", totalSize=" +<a name="line.1506"></a>
+<span class="sourceLineNo">1507</span>          TraditionalBinaryPrefix.long2String(cr.getSize(), "", 1));<a name="line.1507"></a>
+<span class="sourceLineNo">1508</span><a name="line.1508"></a>
+<span class="sourceLineNo">1509</span>      return doCompaction(cr, filesToCompact, user, compactionStartTime,<a name="line.1509"></a>
+<span class="sourceLineNo">1510</span>          compaction.compact(throughputController, user));<a name="line.1510"></a>
+<span class="sourceLineNo">1511</span>    } finally {<a name="line.1511"></a>
+<span class="sourceLineNo">1512</span>      finishCompactionRequest(cr);<a name="line.1512"></a>
 <span class="sourceLineNo">1513</span>    }<a name="line.1513"></a>
-<span class="sourceLineNo">1514</span>    long outputBytes = getTotalSize(sfs);<a name="line.1514"></a>
+<span class="sourceLineNo">1514</span>  }<a name="line.1514"></a>
 <span class="sourceLineNo">1515</span><a name="line.1515"></a>
-<span class="sourceLineNo">1516</span>    // At this point the store will use new files for all new scanners.<a name="line.1516"></a>
-<span class="sourceLineNo">1517</span>    refreshStoreSizeAndTotalBytes(); // update store size.<a name="line.1517"></a>
-<span class="sourceLineNo">1518</span><a name="line.1518"></a>
-<span class="sourceLineNo">1519</span>    long now = EnvironmentEdgeManager.currentTime();<a name="line.1519"></a>
-<span class="sourceLineNo">1520</span>    if (region.getRegionServerServices() != null<a name="line.1520"></a>
-<span class="sourceLineNo">1521</span>        &amp;&amp; region.getRegionServerServices().getMetrics() != null) {<a name="line.1521"></a>
-<span class="sourceLineNo">1522</span>      region.getRegionServerServices().getMetrics().updateCompaction(<a name="line.1522"></a>
-<span class="sourceLineNo">1523</span>          region.getTableDescriptor().getTableName().getNameAsString(),<a name="line.1523"></a>
-<span class="sourceLineNo">1524</span>          cr.isMajor(), now - compactionStartTime, cr.getFiles().size(),<a name="line.1524"></a>
-<span class="sourceLineNo">1525</span>          newFiles.size(), cr.getSize(), outputBytes);<a name="line.1525"></a>
-<span class="sourceLineNo">1526</span><a name="line.1526"></a>
-<span class="sourceLineNo">1527</span>    }<a name="line.1527"></a>
-<span class="sourceLineNo">1528</span><a name="line.1528"></a>
-<span class="sourceLineNo">1529</span>    logCompactionEndMessage(cr, sfs, now, compactionStartTime);<a name="line.1529"></a>
-<span class="sourceLineNo">1530</span>    return sfs;<a name="line.1530"></a>
-<span class="sourceLineNo">1531</span>  }<a name="line.1531"></a>
-<span class="sourceLineNo">1532</span><a name="line.1532"></a>
-<span class="sourceLineNo">1533</span>  // Set correct storage policy from the file name of DTCP.<a name="line.1533"></a>
-<span class="sourceLineNo">1534</span>  // Rename file will not change the storage policy.<a name="line.1534"></a>
-<span class="sourceLineNo">1535</span>  private void setStoragePolicyFromFileName(List&lt;Path&gt; newFiles) throws IOException {<a name="line.1535"></a>
-<span class="sourceLineNo">1536</span>    String prefix = HConstants.STORAGE_POLICY_PREFIX;<a name="line.1536"></a>
-<span class="sourceLineNo">1537</span>    for (Path newFile : newFiles) {<a name="line.1537"></a>
-<span class="sourceLineNo">1538</span>      if (newFile.getParent().getName().startsWith(prefix)) {<a name="line.1538"></a>
-<span class="sourceLineNo">1539</span>        CommonFSUtils.setStoragePolicy(getRegionFileSystem().getFileSystem(), newFile,<a name="line.1539"></a>
-<span class="sourceLineNo">1540</span>            newFile.getParent().getName().substring(prefix.length()));<a name="line.1540"></a>
-<span class="sourceLineNo">1541</span>      }<a name="line.1541"></a>
-<span class="sourceLineNo">1542</span>    }<a name="line.1542"></a>
-<span class="sourceLineNo">1543</span>  }<a name="line.1543"></a>
-<span class="sourceLineNo">1544</span><a name="line.1544"></a>
-<span class="sourceLineNo">1545</span>  private List&lt;HStoreFile&gt; moveCompactedFilesIntoPlace(CompactionRequestImpl cr,<a name="line.1545"></a>
-<span class="sourceLineNo">1546</span>      List&lt;Path&gt; newFiles, User user) throws IOException {<a name="line.1546"></a>
-<span class="sourceLineNo">1547</span>    List&lt;HStoreFile&gt; sfs = new ArrayList&lt;&gt;(newFiles.size());<a name="line.1547"></a>
-<span class="sourceLineNo">1548</span>    for (Path newFile : newFiles) {<a name="line.1548"></a>
-<span class="sourceLineNo">1549</span>      assert newFile != null;<a name="line.1549"></a>
-<span class="sourceLineNo">1550</span>      HStoreFile sf = moveFileIntoPlace(newFile);<a name="line.1550"></a>
-<span class="sourceLineNo">1551</span>      if (this.getCoprocessorHost() != null) {<a name="line.1551"></a>
-<span class="sourceLineNo">1552</span>        getCoprocessorHost().postCompact(this, sf, cr.getTracker(), cr, user);<a name="line.1552"></a>
-<span class="sourceLineNo">1553</span>      }<a name="line.1553"></a>
-<span class="sourceLineNo">1554</span>      assert sf != null;<a name="line.1554"></a>
-<span class="sourceLineNo">1555</span>      sfs.add(sf);<a name="line.1555"></a>
-<span class="sourceLineNo">1556</span>    }<a name="line.1556"></a>
-<span class="sourceLineNo">1557</span>    return sfs;<a name="line.1557"></a>
-<span class="sourceLineNo">1558</span>  }<a name="line.1558"></a>
-<span class="sourceLineNo">1559</span><a name="line.1559"></a>
-<span class="sourceLineNo">1560</span>  // Package-visible for tests<a name="line.1560"></a>
-<span class="sourceLineNo">1561</span>  HStoreFile moveFileIntoPlace(Path newFile) throws IOException {<a name="line.1561"></a>
-<span class="sourceLineNo">1562</span>    validateStoreFile(newFile);<a name="line.1562"></a>
-<span class="sourceLineNo">1563</span>    // Move the file into the right spot<a name="line.1563"></a>
-<span class="sourceLineNo">1564</span>    Path destPath = getRegionFileSystem().commitStoreFile(getColumnFamilyName(), newFile);<a name="line.1564"></a>
-<span class="sourceLineNo">1565</span>    return createStoreFileAndReader(destPath);<a name="line.1565"></a>
-<span class="sourceLineNo">1566</span>  }<a name="line.1566"></a>
-<span class="sourceLineNo">1567</span><a name="line.1567"></a>
-<span class="sourceLineNo">1568</span>  /**<a name="line.1568"></a>
-<span class="sourceLineNo">1569</span>   * Writes the compaction WAL record.<a name="line.1569"></a>
-<span class="sourceLineNo">1570</span>   * @param filesCompacted Files compacted (input).<a name="line.1570"></a>
-<span class="sourceLineNo">1571</span>   * @param newFiles Files from compaction.<a name="line.1571"></a>
-<span class="sourceLineNo">1572</span>   */<a name="line.1572"></a>
-<span class="sourceLineNo">1573</span>  private void writeCompactionWalRecord(Collection&lt;HStoreFile&gt; filesCompacted,<a name="line.1573"></a>
-<span class="sourceLineNo">1574</span>      Collection&lt;HStoreFile&gt; newFiles) throws IOException {<a name="line.1574"></a>
-<span class="sourceLineNo">1575</span>    if (region.getWAL() == null) {<a name="line.1575"></a>
-<span class="sourceLineNo">1576</span>      return;<a name="line.1576"></a>
-<span class="sourceLineNo">1577</span>    }<a name="line.1577"></a>
-<span class="sourceLineNo">1578</span>    List&lt;Path&gt; inputPaths =<a name="line.1578"></a>
-<span class="sourceLineNo">1579</span>        filesCompacted.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1579"></a>
-<span class="sourceLineNo">1580</span>    List&lt;Path&gt; outputPaths =<a name="line.1580"></a>
-<span class="sourceLineNo">1581</span>        newFiles.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1581"></a>
-<span class="sourceLineNo">1582</span>    RegionInfo info = this.region.getRegionInfo();<a name="line.1582"></a>
-<span class="sourceLineNo">1583</span>    CompactionDescriptor compactionDescriptor = ProtobufUtil.toCompactionDescriptor(info,<a name="line.1583"></a>
-<span class="sourceLineNo">1584</span>        getColumnFamilyDescriptor().getName(), inputPaths, outputPaths,<a name="line.1584"></a>
-<span class="sourceLineNo">1585</span>        getRegionFileSystem().getStoreDir(getColumnFamilyDescriptor().getNameAsString()));<a name="line.1585"></a>
-<span class="sourceLineNo">1586</span>    // Fix reaching into Region to get the maxWaitForSeqId.<a name="line.1586"></a>
-<span class="sourceLineNo">1587</span>    // Does this method belong in Region altogether given it is making so many references up there?<a name="line.1587"></a>
-<span class="sourceLineNo">1588</span>    // Could be Region#writeCompactionMarker(compactionDescriptor);<a name="line.1588"></a>
-<span class="sourceLineNo">1589</span>    WALUtil.writeCompactionMarker(this.region.getWAL(), this.region.getReplicationScope(),<a name="line.1589"></a>
-<span class="sourceLineNo">1590</span>        this.region.getRegionInfo(), compactionDescriptor, this.region.getMVCC());<a name="line.1590"></a>
-<span class="sourceLineNo">1591</span>  }<a name="line.1591"></a>
-<span class="sourceLineNo">1592</span><a name="line.1592"></a>
-<span class="sourceLineNo">1593</span>  void replaceStoreFiles(Collection&lt;HStoreFile&gt; compactedFiles, Collection&lt;HStoreFile&gt; result)<a name="line.1593"></a>
-<span class="sourceLineNo">1594</span>      throws IOException {<a name="line.1594"></a>
-<span class="sourceLineNo">1595</span>    this.lock.writeLock().lock();<a name="line.1595"></a>
-<span class="sourceLineNo">1596</span>    try {<a name="line.1596"></a>
-<span class="sourceLineNo">1597</span>      this.storeEngine.getStoreFileManager().addCompactionResults(compactedFiles, result);<a name="line.1597"></a>
-<span class="sourceLineNo">1598</span>      synchronized (filesCompacting) {<a name="line.1598"></a>
-<span class="sourceLineNo">1599</span>        filesCompacting.removeAll(compactedFiles);<a name="line.1599"></a>
-<span class="sourceLineNo">1600</span>      }<a name="line.1600"></a>
-<span class="sourceLineNo">1601</span><a name="line.1601"></a>
-<span class="sourceLineNo">1602</span>      // These may be null when the RS is shutting down. The space quota Chores will fix the Region<a name="line.1602"></a>
-<span class="sourceLineNo">1603</span>      // sizes later so it's not super-critical if we miss these.<a name="line.1603"></a>
-<span class="sourceLineNo">1604</span>      RegionServerServices rsServices = region.getRegionServerServices();<a name="line.1604"></a>
-<span class="sourceLineNo">1605</span>      if (rsServices != null &amp;&amp; rsServices.getRegionServerSpaceQuotaManager() != null) {<a name="line.1605"></a>
-<span class="sourceLineNo">1606</span>        updateSpaceQuotaAfterFileReplacement(<a name="line.1606"></a>
-<span class="sourceLineNo">1607</span>            rsServices.getRegionServerSpaceQuotaManager().getRegionSizeStore(), getRegionInfo(),<a name="line.1607"></a>
-<span class="sourceLineNo">1608</span>            compactedFiles, result);<a name="line.1608"></a>
-<span class="sourceLineNo">1609</span>      }<a name="line.1609"></a>
-<span class="sourceLineNo">1610</span>    } finally {<a name="line.1610"></a>
-<span class="sourceLineNo">1611</span>      this.lock.writeLock().unlock();<a name="line.1611"></a>
-<span class="sourceLineNo">1612</span>    }<a name="line.1612"></a>
-<span class="sourceLineNo">1613</span>  }<a name="line.1613"></a>
-<span class="sourceLineNo">1614</span><a name="line.1614"></a>
-<span class="sourceLineNo">1615</span>  /**<a name="line.1615"></a>
-<span class="sourceLineNo">1616</span>   * Updates the space quota usage for this region, removing the size for files compacted away<a name="line.1616"></a>
-<span class="sourceLineNo">1617</span>   * and adding in the size for new files.<a name="line.1617"></a>
-<span class="sourceLineNo">1618</span>   *<a name="line.1618"></a>
-<span class="sourceLineNo">1619</span>   * @param sizeStore The object tracking changes in region size for space quotas.<a name="line.1619"></a>
-<span class="sourceLineNo">1620</span>   * @param regionInfo The identifier for the region whose size is being updated.<a name="line.1620"></a>
-<span class="sourceLineNo">1621</span>   * @param oldFiles Files removed from this store's region.<a name="line.1621"></a>
-<span class="sourceLineNo">1622</span>   * @param newFiles Files added to this store's region.<a name="line.1622"></a>
-<span class="sourceLineNo">1623</span>   */<a name="line.1623"></a>
-<span class="sourceLineNo">1624</span>  void updateSpaceQuotaAfterFileReplacement(<a name="line.1624"></a>
-<span class="sourceLineNo">1625</span>      RegionSizeStore sizeStore, RegionInfo regionInfo, Collection&lt;HStoreFile&gt; oldFiles,<a name="line.1625"></a>
-<span class="sourceLineNo">1626</span>      Collection&lt;HStoreFile&gt; newFiles) {<a name="line.1626"></a>
-<span class="sourceLineNo">1627</span>    long delta = 0;<a name="line.1627"></a>
-<span class="sourceLineNo">1628</span>    if (oldFiles != null) {<a name="line.1628"></a>
-<span class="sourceLineNo">1629</span>      for (HStoreFile compactedFile : oldFiles) {<a name="line.1629"></a>
-<span class="sourceLineNo">1630</span>        if (compactedFile.isHFile()) {<a name="line.1630"></a>
-<span class="sourceLineNo">1631</span>          delta -= compactedFile.getReader().length();<a name="line.1631"></a>
-<span class="sourceLineNo">1632</span>        }<a name="line.1632"></a>
-<span class="sourceLineNo">1633</span>      }<a name="line.1633"></a>
-<span class="sourceLineNo">1634</span>    }<a name="line.1634"></a>
-<span class="sourceLineNo">1635</span>    if (newFiles != null) {<a name="line.1635"></a>
-<span class="sourceLineNo">1636</span>      for (HStoreFile newFile : newFiles) {<a name="line.1636"></a>
-<span class="sourceLineNo">1637</span>        if (newFile.isHFile()) {<a name="line.1637"></a>
-<span class="sourceLineNo">1638</span>          delta += newFile.getReader().length();<a name="line.1638"></a>
-<span class="sourceLineNo">1639</span>        }<a name="line.1639"></a>
-<span class="sourceLineNo">1640</span>      }<a name="line.1640"></a>
-<span class="sourceLineNo">1641</span>    }<a name="line.1641"></a>
-<span class="sourceLineNo">1642</span>    sizeStore.incrementRegionSize(regionInfo, delta);<a name="line.1642"></a>
-<span class="sourceLineNo">1643</span>  }<a name="line.1643"></a>
-<span class="sourceLineNo">1644</span><a name="line.1644"></a>
-<span class="sourceLineNo">1645</span>  /**<a name="line.1645"></a>
-<span class="sourceLineNo">1646</span>   * Log a very elaborate compaction completion message.<a name="line.1646"></a>
-<span class="sourceLineNo">1647</span>   * @param cr Request.<a name="line.1647"></a>
-<span class="sourceLineNo">1648</span>   * @param sfs Resulting files.<a name="line.1648"></a>
-<span class="sourceLineNo">1649</span>   * @param compactionStartTime Start time.<a name="line.1649"></a>
-<span class="sourceLineNo">1650</span>   */<a name="line.1650"></a>
-<span class="sourceLineNo">1651</span>  private void logCompactionEndMessage(<a name="line.1651"></a>
-<span class="sourceLineNo">1652</span>      CompactionRequestImpl cr, List&lt;HStoreFile&gt; sfs, long now, long compactionStartTime) {<a name="line.1652"></a>
-<span class="sourceLineNo">1653</span>    StringBuilder message = new StringBuilder(<a name="line.1653"></a>
-<span class="sourceLineNo">1654</span>      "Completed" + (cr.isMajor() ? " major" : "") + " compaction of "<a name="line.1654"></a>
-<span class="sourceLineNo">1655</span>      + cr.getFiles().size() + (cr.isAllFiles() ? " (all)" : "") + " file(s) in "<a name="line.1655"></a>
-<span class="sourceLineNo">1656</span>      + this + " of " + this.getRegionInfo().getShortNameToLog() + " into ");<a name="line.1656"></a>
-<span class="sourceLineNo">1657</span>    if (sfs.isEmpty()) {<a name="line.1657"></a>
-<span class="sourceLineNo">1658</span>      message.append("none, ");<a name="line.1658"></a>
-<span class="sourceLineNo">1659</span>    } else {<a name="line.1659"></a>
-<span class="sourceLineNo">1660</span>      for (HStoreFile sf: sfs) {<a name="line.1660"></a>
-<span class="sourceLineNo">1661</span>        message.append(sf.getPath().getName());<a name="line.1661"></a>
-<span class="sourceLineNo">1662</span>        message.append("(size=");<a name="line.1662"></a>
-<span class="sourceLineNo">1663</span>        message.append(TraditionalBinaryPrefix.long2String(sf.getReader().length(), "", 1));<a name="line.1663"></a>
-<span class="sourceLineNo">1664</span>        message.append("), ");<a name="line.1664"></a>
-<span class="sourceLineNo">1665</span>      }<a name="line.1665"></a>
-<span class="sourceLineNo">1666</span>    }<a name="line.1666"></a>
-<span class="sourceLineNo">1667</span>    message.append("total size for store is ")<a name="line.1667"></a>
-<span class="sourceLineNo">1668</span>      .append(StringUtils.TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1))<a name="line.1668"></a>
-<span class="sourceLineNo">1669</span>      .append(". This selection was in queue for ")<a name="line.1669"></a>
-<span class="sourceLineNo">1670</span>      .append(StringUtils.formatTimeDiff(compactionStartTime, cr.getSelectionTime()))<a name="line.1670"></a>
-<span class="sourceLineNo">1671</span>      .append(", and took ").append(StringUtils.formatTimeDiff(now, compactionStartTime))<a name="line.1671"></a>
-<span class="sourceLineNo">1672</span>      .append(" to execute.");<a name="line.1672"></a>
-<span class="sourceLineNo">1673</span>    LOG.info(message.toString());<a name="line.1673"></a>
-<span class="sourceLineNo">1674</span>    if (LOG.isTraceEnabled()) {<a name="line.1674"></a>
-<span class="sourceLineNo">1675</span>      int fileCount = storeEngine.getStoreFileManager().getStorefileCount();<a name="line.1675"></a>
-<span class="sourceLineNo">1676</span>      long resultSize = getTotalSize(sfs);<a name="line.1676"></a>
-<span class="sourceLineNo">1677</span>      String traceMessage = "COMPACTION start,end,size out,files in,files out,store size,"<a name="line.1677"></a>
-<span class="sourceLineNo">1678</span>        + "store files [" + compactionStartTime + "," + now + "," + resultSize + ","<a name="line.1678"></a>
-<span class="sourceLineNo">1679</span>          + cr.getFiles().size() + "," + sfs.size() + "," +  storeSize + "," + fileCount + "]";<a name="line.1679"></a>
-<span class="sourceLineNo">1680</span>      LOG.trace(traceMessage);<a name="line.1680"></a>
-<span class="sourceLineNo">1681</span>    }<a name="line.1681"></a>
-<span class="sourceLineNo">1682</span>  }<a name="line.1682"></a>
-<span class="sourceLineNo">1683</span><a name="line.1683"></a>
-<span class="sourceLineNo">1684</span>  /**<a name="line.1684"></a>
-<span class="sourceLineNo">1685</span>   * Call to complete a compaction. Its for the case where we find in the WAL a compaction<a name="line.1685"></a>
-<span class="sourceLineNo">1686</span>   * that was not finished.  We could find one recovering a WAL after a regionserver crash.<a name="line.1686"></a>
-<span class="sourceLineNo">1687</span>   * See HBASE-2231.<a name="line.1687"></a>
-<span class="sourceLineNo">1688</span>   */<a name="line.1688"></a>
-<span class="sourceLineNo">1689</span>  public void replayCompactionMarker(CompactionDescriptor compaction, boolean pickCompactionFiles,<a name="line.1689"></a>
-<span class="sourceLineNo">1690</span>      boolean removeFiles) throws IOException {<a name="line.1690"></a>
-<span class="sourceLineNo">1691</span>    LOG.debug("Completing compaction from the WAL marker");<a name="line.1691"></a>
-<span class="sourceLineNo">1692</span>    List&lt;String&gt; compactionInputs = compaction.getCompactionInputList();<a name="line.1692"></a>
-<span class="sourceLineNo">1693</span>    List&lt;String&gt; compactionOutputs = Lists.newArrayList(compaction.getCompactionOutputList());<a name="line.1693"></a>
-<span class="sourceLineNo">1694</span><a name="line.1694"></a>
-<span class="sourceLineNo">1695</span>    // The Compaction Marker is written after the compaction is completed,<a name="line.1695"></a>
-<span class="sourceLineNo">1696</span>    // and the files moved into the region/family folder.<a name="line.1696"></a>
-<span class="sourceLineNo">1697</span>    //<a name="line.1697"></a>
-<span class="sourceLineNo">1698</span>    // If we crash after the entry is written, we may not have removed the<a name="line.1698"></a>
-<span class="sourceLineNo">1699</span>    // input files, but the output file is present.<a name="line.1699"></a>
-<span class="sourceLineNo">1700</span>    // (The unremoved input files will be removed by this function)<a name="line.1700"></a>
-<span class="sourceLineNo">1701</span>    //<a name="line.1701"></a>
-<span class="sourceLineNo">1702</span>    // If we scan the directory and the file is not present, it can mean that:<a name="line.1702"></a>
-<span class="sourceLineNo">1703</span>    //   - The file was manually removed by the user<a name="line.1703"></a>
-<span class="sourceLineNo">1704</span>    //   - The file was removed as consequence of subsequent compaction<a name="line.1704"></a>
-<span class="sourceLineNo">1705</span>    // so, we can't do anything with the "compaction output list" because those<a name="line.1705"></a>
-<span class="sourceLineNo">1706</span>    // files have already been loaded when opening the region (by virtue of<a name="line.1706"></a>
-<span class="sourceLineNo">1707</span>    // being in the store's folder) or they may be missing due to a compaction.<a name="line.1707"></a>
-<span class="sourceLineNo">1708</span><a name="line.1708"></a>
-<span class="sourceLineNo">1709</span>    String familyName = this.getColumnFamilyName();<a name="line.1709"></a>
-<span class="sourceLineNo">1710</span>    Set&lt;String&gt; inputFiles = new HashSet&lt;&gt;();<a name="line.1710"></a>
-<span class="sourceLineNo">1711</span>    for (String compactionInput : compactionInputs) {<a name="line.1711"></a>
-<span class="sourceLineNo">1712</span>      Path inputPath = getRegionFileSystem().getStoreFilePath(familyName, compactionInput);<a name="line.1712"></a>
-<span class="sourceLineNo">1713</span>      inputFiles.add(inputPath.getName());<a name="line.1713"></a>
-<span class="sourceLineNo">1714</span>    }<a name="line.1714"></a>
-<span class="sourceLineNo">1715</span><a name="line.1715"></a>
-<span class="sourceLineNo">1716</span>    //some of the input files might already be deleted<a name="line.1716"></a>
-<span class="sourceLineNo">1717</span>    List&lt;HStoreFile&gt; inputStoreFiles = new ArrayList&lt;&gt;(compactionInputs.size());<a name="line.1717"></a>
-<span class="sourceLineNo">1718</span>    for (HStoreFile sf : this.getStorefiles()) {<a name="line.1718"></a>
-<span class="sourceLineNo">1719</span>      if (inputFiles.contains(sf.getPath().getName())) {<a name="line.1719"></a>
-<span class="sourceLineNo">1720</span>        inputStoreFiles.add(sf);<a name="line.1720"></a>
-<span class="sourceLineNo">1721</span>      }<a name="line.1721"></a>
-<span class="sourceLineNo">1722</span>    }<a name="line.1722"></a>
-<span class="sourceLineNo">1723</span><a name="line.1723"></a>
-<span class="sourceLineNo">1724</span>    // check whether we need to pick up the new files<a name="line.1724"></a>
-<span class="sourceLineNo">1725</span>    List&lt;HStoreFile&gt; outputStoreFiles = new ArrayList&lt;&gt;(compactionOutputs.size());<a name="line.1725"></a>
-<span class="sourceLineNo">1726</span><a name="line.1726"></a>
-<span class="sourceLineNo">1727</span>    if (pickCompactionFiles) {<a name="line.1727"></a>
-<span class="sourceLineNo">1728</span>      for (HStoreFile sf : this.getStorefiles()) {<a name="line.1728"></a>
-<span class="sourceLineNo">1729</span>        compactionOutputs.remove(sf.getPath().getName());<a name="line.1729"></a>
-<span class="sourceLineNo">1730</span>      }<a name="line.1730"></a>
-<span class="sourceLineNo">1731</span>      for (String compactionOutput : compactionOutputs) {<a name="line.1731"></a>
-<span class="sourceLineNo">1732</span>        StoreFileInfo storeFileInfo =<a name="line.1732"></a>
-<span class="sourceLineNo">1733</span>            getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), compactionOutput);<a name="line.1733"></a>
-<span class="sourceLineNo">1734</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.1734"></a>
-<span class="sourceLineNo">1735</span>        outputStoreFiles.add(storeFile);<a name="line.1735"></a>
-<span class="sourceLineNo">1736</span>      }<a name="line.1736"></a>
-<span class="sourceLineNo">1737</span>    }<a name="line.1737"></a>
-<span class="sourceLineNo">1738</span><a name="line.1738"></a>
-<span class="sourceLineNo">1739</span>    if (!inputStoreFiles.isEmpty() || !outputStoreFiles.isEmpty()) {<a name="line.1739"></a>
-<span class="sourceLineNo">1740</span>      LOG.info("Replaying compaction marker, replacing input files: " +<a name="line.1740"></a>
-<span class="sourceLineNo">1741</span>          inputStoreFiles + " with output files : " + outputStoreFiles);<a name="line.1741"></a>
-<span class="sourceLineNo">1742</span>      this.replaceStoreFiles(inputStoreFiles, outputStoreFiles);<a name="line.1742"></a>
-<span class="sourceLineNo">1743</span>      this.refreshStoreSizeAndTotalBytes();<a name="line.1743"></a>
-<span class="sourceLineNo">1744</span>    }<a name="line.1744"></a>
-<span class="sourceLineNo">1745</span>  }<a name="line.1745"></a>
-<span class="sourceLineNo">1746</span><a name="line.1746"></a>
-<span class="sourceLineNo">1747</span>  @Override<a name="line.1747"></a>
-<span class="sourceLineNo">1748</span>  public boolean hasReferences() {<a name="line.1748"></a>
-<span class="sourceLineNo">1749</span>    // Grab the read lock here, because we need to ensure that: only when the atomic<a name="line.1749"></a>
-<span class="sourceLineNo">1750</span>    // replaceStoreFiles(..) finished, we can get all the complete store file list.<a name="line.1750"></a>
-<span class="sourceLineNo">1751</span>    this.lock.readLock().lock();<a name="line.1751"></a>
-<span class="sourceLineNo">1752</span>    try {<a name="line.1752"></a>
-<span class="sourceLineNo">1753</span>      // Merge the current store files with compacted files here due to HBASE-20940.<a name="line.1753"></a>
-<span class="sourceLineNo">1754</span>      Collection&lt;HStoreFile&gt; allStoreFiles = new ArrayList&lt;&gt;(getStorefiles());<a name="line.1754"></a>
-<span class="sourceLineNo">1755</span>      allStoreFiles.addAll(getCompactedFiles());<a name="line.1755"></a>
-<span class="sourceLineNo">1756</span>      return StoreUtils.hasReferences(allStoreFiles);<a name="line.1756"></a>
-<span class="sourceLineNo">1757</span>    } finally {<a name="line.1757"></a>
-<span class="sourceLineNo">1758</span>      this.lock.readLock().unlock();<a name="line.1758"></a>
-<span class="sourceLineNo">1759</span>    }<a name="line.1759"></a>
-<span class="sourceLineNo">1760</span>  }<a name="line.1760"></a>
-<span class="sourceLineNo">1761</span><a name="line.1761"></a>
-<span class="sourceLineNo">1762</span>  /**<a name="line.1762"></a>
-<span class="sourceLineNo">1763</span>   * getter for CompactionProgress object<a name="line.1763"></a>
-<span class="sourceLineNo">1764</span>   * @return CompactionProgress object; can be null<a name="line.1764"></a>
-<span class="sourceLineNo">1765</span>   */<a name="line.1765"></a>
-<span class="sourceLineNo">1766</span>  public CompactionProgress getCompactionProgress() {<a name="line.1766"></a>
-<span class="sourceLineNo">1767</span>    return this.storeEngine.getCompactor().getProgress();<a name="line.1767"></a>
-<span class="sourceLineNo">1768</span>  }<a name="line.1768"></a>
-<span class="sourceLineNo">1769</span><a name="line.1769"></a>
-<span class="sourceLineNo">1770</span>  @Override<a name="line.1770"></a>
-<span class="sourceLineNo">1771</span>  public boolean shouldPerformMajorCompaction() throws IOException {<a name="line.1771"></a>
-<span class="sourceLineNo">1772</span>    for (HStoreFile sf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1772"></a>
-<span class="sourceLineNo">1773</span>      // TODO: what are these reader checks all over the place?<a name="line.1773"></a>
-<span class="sourceLineNo">1774</span>      if (sf.getReader() == null) {<a name="line.1774"></a>
-<span class="sourceLineNo">1775</span>        LOG.debug("StoreFile {} has null Reader", sf);<a name="line.1775"></a>
-<span class="sourceLineNo">1776</span>        return false;<a name="line.1776"></a>
-<span class="sourceLineNo">1777</span>      }<a name="line.1777"></a>
-<span class="sourceLineNo">1778</span>    }<a name="line.1778"></a>
-<span class="sourceLineNo">1779</span>    return storeEngine.getCompactionPolicy().shouldPerformMajorCompaction(<a name="line.1779"></a>
-<span class="sourceLineNo">1780</span>        this.storeEngine.getStoreFileManager().getStorefiles());<a name="line.1780"></a>
-<span class="sourceLineNo">1781</span>  }<a name="line.1781"></a>
-<span class="sourceLineNo">1782</span><a name="line.1782"></a>
-<span class="sourceLineNo">1783</span>  public Optional&lt;CompactionContext&gt; requestCompaction() throws IOException {<a name="line.1783"></a>
-<span class="sourceLineNo">1784</span>    return requestCompaction(NO_PRIORITY, CompactionLifeCycleTracker.DUMMY, null);<a name="line.1784"></a>
-<span class="sourceLineNo">1785</span>  }<a name="line.1785"></a>
-<span class="sourceLineNo">1786</span><a name="line.1786"></a>
-<span class="sourceLineNo">1787</span>  public Optional&lt;CompactionContext&gt; requestCompaction(int priority,<a name="line.1787"></a>
-<span class="sourceLineNo">1788</span>      CompactionLifeCycleTracker tracker, User user) throws IOException {<a name="line.1788"></a>
-<span class="sourceLineNo">1789</span>    // don't even select for compaction if writes are disabled<a name="line.1789"></a>
-<span class="sourceLineNo">1790</span>    if (!this.areWritesEnabled()) {<a name="line.1790"></a>
-<span class="sourceLineNo">1791</span>      return Optional.empty();<a name="line.1791"></a>
-<span class="sourceLineNo">1792</span>    }<a name="line.1792"></a>
-<span class="sourceLineNo">1793</span>    // Before we do compaction, try to get rid of unneeded files to simplify things.<a name="line.1793"></a>
-<span class="sourceLineNo">1794</span>    removeUnneededFiles();<a name="line.1794"></a>
-<span class="sourceLineNo">1795</span><a name="line.1795"></a>
-<span class="sourceLineNo">1796</span>    final CompactionContext compaction = storeEngine.createCompaction();<a name="line.1796"></a>
-<span class="sourceLineNo">1797</span>    CompactionRequestImpl request = null;<a name="line.1797"></a>
-<span class="sourceLineNo">1798</span>    this.lock.readLock().lock();<a name="line.1798"></a>
-<span class="sourceLineNo">1799</span>    try {<a name="line.1799"></a>
-<span class="sourceLineNo">1800</span>      synchronized (filesCompacting) {<a name="line.1800"></a>
-<span class="sourceLineNo">1801</span>        // First, see if coprocessor would want to override selection.<a name="line.1801"></a>
-<span class="sourceLineNo">1802</span>        if (this.getCoprocessorHost() != null) {<a name="line.1802"></a>
-<span class="sourceLineNo">1803</span>          final List&lt;HStoreFile&gt; candidatesForCoproc = compaction.preSelect(this.filesCompacting);<a name="line.1803"></a>
-<span class="sourceLineNo">1804</span>          boolean override = getCoprocessorHost().preCompactSelection(this,<a name="line.1804"></a>
-<span class="sourceLineNo">1805</span>              candidatesForCoproc, tracker, user);<a name="line.1805"></a>
-<span class="sourceLineNo">1806</span>          if (override) {<a name="line.1806"></a>
-<span class="sourceLineNo">1807</span>            // Coprocessor is overriding normal file selection.<a name="line.1807"></a>
-<span class="sourceLineNo">1808</span>            compaction.forceSelect(new CompactionRequestImpl(candidatesForCoproc));<a name="line.1808"></a>
-<span class="sourceLineNo">1809</span>          }<a name="line.1809"></a>
-<span class="sourceLineNo">1810</span>        }<a name="line.1810"></a>
-<span class="sourceLineNo">1811</span><a name="line.1811"></a>
-<span class="sourceLineNo">1812</span>        // Normal case - coprocessor is not overriding file selection.<a name="line.1812"></a>
-<span class="sourceLineNo">1813</span>        if (!compaction.hasSelection()) {<a name="line.1813"></a>
-<span class="sourceLineNo">1814</span>          boolean isUserCompaction = priority == Store.PRIORITY_USER;<a name="line.1814"></a>
-<span class="sourceLineNo">1815</span>          boolean mayUseOffPeak = offPeakHours.isOffPeakHour() &amp;&amp;<a name="line.1815"></a>
-<span class="sourceLineNo">1816</span>              offPeakCompactionTracker.compareAndSet(false, true);<a name="line.1816"></a>
-<span class="sourceLineNo">1817</span>          try {<a name="line.1817"></a>
-<span class="sourceLineNo">1818</span>            compaction.select(this.filesCompacting, isUserCompaction,<a name="line.1818"></a>
-<span class="sourceLineNo">1819</span>              mayUseOffPeak, forceMajor &amp;&amp; filesCompacting.isEmpty());<a name="line.1819"></a>
-<span class="sourceLineNo">1820</span>          } catch (IOException e) {<a name="line.1820"></a>
-<span class="sourceLineNo">1821</span>            if (mayUseOffPeak) {<a name="line.1821"></a>
-<span class="sourceLineNo">1822</span>              offPeakCompactionTracker.set(false);<a name="line.1822"></a>
-<span class="sourceLineNo">1823</span>            }<a name="line.1823"></a>
-<span class="sourceLineNo">1824</span>            throw e;<a name="line.1824"></a>
-<span class="sourceLineNo">1825</span>          }<a name="line.1825"></a>
-<span class="sourceLineNo">1826</span>          assert compaction.hasSelection();<a name="line.1826"></a>
-<span class="sourceLineNo">1827</span>          if (mayUseOffPeak &amp;&amp; !compaction.getRequest().isOffPeak()) {<a name="line.1827"></a>
-<span class="sourceLineNo">1828</span>            // Compaction policy doesn't want to take advantage of off-peak.<a name="line.1828"></a>
-<span class="sourceLineNo">1829</span>            offPeakCompactionTracker.set(false);<a name="line.1829"></a>
-<span class="sourceLineNo">1830</span>          }<a name="line.1830"></a>
-<span class="sourceLineNo">1831</span>        }<a name="line.1831"></a>
-<span class="sourceLineNo">1832</span>        if (this.getCoprocessorHost() != null) {<a name="line.1832"></a>
-<span class="sourceLineNo">1833</span>          this.getCoprocessorHost().postCompactSelection(<a name="line.1833"></a>
-<span class="sourceLineNo">1834</span>              this, ImmutableList.copyOf(compaction.getRequest().getFiles()), tracker,<a name="line.1834"></a>
-<span class="sourceLineNo">1835</span>              compaction.getRequest(), user);<a name="line.1835"></a>
-<span class="sourceLineNo">1836</span>        }<a name="line.1836"></a>
-<span class="sourceLineNo">1837</span>        // Finally, we have the resulting files list. Check if we have any files at all.<a name="line.1837"></a>
-<span class="sourceLineNo">1838</span>        request = compaction.getRequest();<a name="line.1838"></a>
-<span class="sourceLineNo">1839</span>        Collection&lt;HStoreFile&gt; selectedFiles = request.getFiles();<a name="line.1839"></a>
-<span class="sourceLineNo">1840</span>        if (selectedFiles.isEmpty()) {<a name="line.1840"></a>
-<span class="sourceLineNo">1841</span>          return Optional.empty();<a name="line.1841"></a>
-<span class="sourceLineNo">1842</span>        }<a name="line.1842"></a>
-<span class="sourceLineNo">1843</span><a name="line.1843"></a>
-<span class="sourceLineNo">1844</span>        addToCompactingFiles(selectedFiles);<a name="line.1844"></a>
-<span class="sourceLineNo">1845</span><a name="line.1845"></a>
-<span class="sourceLineNo">1846</span>        // If we're enqueuing a major, clear the force flag.<a name="line.1846"></a>
-<span class="sourceLineNo">1847</span>        this.forceMajor = this.forceMajor &amp;&amp; !request.isMajor();<a name="line.1847"></a>
-<span class="sourceLineNo">1848</span><a name="line.1848"></a>
-<span class="sourceLineNo">1849</span>        // Set common request properties.<a name="line.1849"></a>
-<span class="sourceLineNo">1850</span>        // Set priority, either override value supplied by caller or from store.<a name="line.1850"></a>
-<span class="sourceLineNo">1851</span>        final int compactionPriority =<a name="line.1851"></a>
-<span class="sourceLineNo">1852</span>          (priority != Store.NO_PRIORITY) ? priority : getCompactPriority();<a name="line.1852"></a>
-<span class="sourceLineNo">1853</span>        request.setPriority(compactionPriority);<a name="line.1853"></a>
-<span class="sourceLineNo">1854</span><a name="line.1854"></a>
-<span class="sourceLineNo">1855</span>        if (request.isAfterSplit()) {<a name="line.1855"></a>
-<span class="sourceLineNo">1856</span>          // If the store belongs to recently splitted daughter regions, better we consider<a name="line.1856"></a>
-<span class="sourceLineNo">1857</span>          // them with the higher priority in the compaction queue.<a name="line.1857"></a>
-<span class="sourceLineNo">1858</span>          // Override priority if it is lower (higher int value) than<a name="line.1858"></a>
-<span class="sourceLineNo">1859</span>          // SPLIT_REGION_COMPACTION_PRIORITY<a name="line.1859"></a>
-<span class="sourceLineNo">1860</span>          final int splitHousekeepingPriority =<a name="line.1860"></a>
-<span class="sourceLineNo">1861</span>            Math.min(compactionPriority, SPLIT_REGION_COMPACTION_PRIORITY);<a name="line.1861"></a>
-<span class="sourceLineNo">1862</span>          request.setPriority(splitHousekeepingPriority);<a name="line.1862"></a>
-<span class="sourceLineNo">1863</span>          LOG.info("Keeping/Overriding Compaction request priority to {} for CF {} since it"<a name="line.1863"></a>
-<span class="sourceLineNo">1864</span>              + " belongs to recently split daughter region {}", splitHousekeepingPriority,<a name="line.1864"></a>
-<span class="sourceLineNo">1865</span>            this.getColumnFamilyName(), getRegionInfo().getRegionNameAsString());<a name="line.1865"></a>
-<span class="sourceLineNo">1866</span>        }<a name="line.1866"></a>
-<span class="sourceLineNo">1867</span>        request.setDescription(getRegionInfo().getRegionNameAsString(), getColumnFamilyName());<a name="line.1867"></a>
-<span class="sourceLineNo">1868</span>        request.setTracker(tracker);<a name="line.1868"></a>
-<span class="sourceLineNo">1869</span>      }<a name="line.1869"></a>
-<span class="sourceLineNo">1870</span>    } finally {<a name="line.1870"></a>
-<span class="sourceLineNo">1871</span>      this.lock.readLock().unlock();<a name="line.1871"></a>
-<span class="sourceLineNo">1872</span>    }<a name="line.1872"></a>
-<span class="sourceLineNo">1873</span><a name="line.1873"></a>
-<span class="sourceLineNo">1874</span>    if (LOG.isDebugEnabled()) {<a name="line.1874"></a>
-<span class="sourceLineNo">1875</span>      LOG.debug(this + " is initiating " + (request.isMajor() ? "major" : "minor") + " compaction"<a name="line.1875"></a>
-<span class="sourceLineNo">1876</span>          + (request.isAllFiles() ? " (all files)" : ""));<a name="line.1876"></a>
-<span class="sourceLineNo">1877</span>    }<a name="line.1877"></a>
-<span class="sourceLineNo">1878</span>    this.region.reportCompactionRequestStart(request.isMajor());<a name="line.1878"></a>
-<span class="sourceLineNo">1879</span>    return Optional.of(compaction);<a name="line.1879"></a>
-<span class="sourceLineNo">1880</span>  }<a name="line.1880"></a>
-<span class="sourceLineNo">1881</span><a name="line.1881"></a>
-<span class="sourceLineNo">1882</span>  /** Adds the files to compacting files. filesCompacting must be locked. */<a name="line.1882"></a>
-<span class="sourceLineNo">1883</span>  private void addToCompactingFiles(Collection&lt;HStoreFile&gt; filesToAdd) {<a name="line.1883"></a>
-<span class="sourceLineNo">1884</span>    if (CollectionUtils.isEmpty(filesToAdd)) {<a name="line.1884"></a>
-<span class="sourceLineNo">1885</span>      return;<a name="line.1885"></a>
-<span class="sourceLineNo">1886</span>    }<a name="line.1886"></a>
-<span class="sourceLineNo">1887</span>    // Check that we do not try to compact the same StoreFile twice.<a name="line.1887"></a>
-<span class="sourceLineNo">1888</span>    if (!Collections.disjoint(filesCompacting, filesToAdd)) {<a name="line.1888"></a>
-<span class="sourceLineNo">1889</span>      Preconditions.checkArgument(false, "%s overlaps with %s", filesToAdd, filesCompacting);<a name="line.1889"></a>
-<span class="sourceLineNo">1890</span>    }<a name="line.1890"></a>
-<span class="sourceLineNo">1891</span>    filesCompacting.addAll(filesToAdd);<a name="line.1891"></a>
-<span class="sourceLineNo">1892</span>    Collections.sort(filesCompacting, storeEngine.getStoreFileManager().getStoreFileComparator());<a name="line.1892"></a>
-<span class="sourceLineNo">1893</span>  }<a name="line.1893"></a>
-<span class="sourceLineNo">1894</span><a name="line.1894"></a>
-<span class="sourceLineNo">1895</span>  private void removeUnneededFiles() throws IOException {<a name="line.1895"></a>
-<span class="sourceLineNo">1896</span>    if (!conf.getBoolean("hbase.store.delete.expired.storefile", true)) {<a name="line.1896"></a>
-<span class="sourceLineNo">1897</span>      return;<a name="line.1897"></a>
-<span class="sourceLineNo">1898</span>    }<a name="line.1898"></a>
-<span class="sourceLineNo">1899</span>    if (getColumnFamilyDescriptor().getMinVersions() &gt; 0) {<a name="line.1899"></a>
-<span class="sourceLineNo">1900</span>      LOG.debug("Skipping expired store file removal due to min version of {} being {}",<a name="line.1900"></a>
-<span class="sourceLineNo">1901</span>          this, getColumnFamilyDescriptor().getMinVersions());<a name="line.1901"></a>
-<span class="sourceLineNo">1902</span>      return;<a name="line.1902"></a>
-<span class="sourceLineNo">1903</span>    }<a name="line.1903"></a>
-<span class="sourceLineNo">1904</span>    this.lock.readLock().lock();<a name="line.1904"></a>
-<span class="sourceLineNo">1905</span>    Collection&lt;HStoreFile&gt; delSfs = null;<a name="line.1905"></a>
-<span class="sourceLineNo">1906</span>    try {<a name="line.1906"></a>
-<span class="sourceLineNo">1907</span>      synchronized (filesCompacting) {<a name="line.1907"></a>
-<span class="sourceLineNo">1908</span>        long cfTtl = getStoreFileTtl();<a name="line.1908"></a>
-<span class="sourceLineNo">1909</span>        if (cfTtl != Long.MAX_VALUE) {<a name="line.1909"></a>
-<span class="sourceLineNo">1910</span>          delSfs = storeEngine.getStoreFileManager().getUnneededFiles(<a name="line.1910"></a>
-<span class="sourceLineNo">1911</span>              EnvironmentEdgeManager.currentTime() - cfTtl, filesCompacting);<a name="line.1911"></a>
-<span class="sourceLineNo">1912</span>          addToCompactingFiles(delSfs);<a name="line.1912"></a>
-<span class="sourceLineNo">1913</span>        }<a name="line.1913"></a>
-<span class="sourceLineNo">1914</span>      }<a name="line.1914"></a>
-<span class="sourceLineNo">1915</span>    } finally {<a name="line.1915"></a>
-<span class="sourceLineNo">1916</span>      this.lock.readLock().unlock();<a name="line.1916"></a>
-<span class="sourceLineNo">1917</span>    }<a name="line.1917"></a>
-<span class="sourceLineNo">1918</span><a name="line.1918"></a>
-<span class="sourceLineNo">1919</span>    if (CollectionUtils.isEmpty(delSfs)) {<a name="line.1919"></a>
-<span class="sourceLineNo">1920</span>      return;<a name="line.1920"></a>
-<span class="sourceLineNo">1921</span>    }<a name="line.1921"></a>
-<span class="sourceLineNo">1922</span><a name="line.1922"></a>
-<span class="sourceLineNo">1923</span>    Collection&lt;HStoreFile&gt; newFiles = Collections.emptyList(); // No new files.<a name="line.1923"></a>
-<span class="sourceLineNo">1924</span>    writeCompactionWalRecord(delSfs, newFiles);<a name="line.1924"></a>
-<span class="sourceLineNo">1925</span>    replaceStoreFiles(delSfs, newFiles);<a name="line.1925"></a>
-<span class="sourceLineNo">1926</span>    refreshStoreSizeAndTotalBytes();<a name="line.1926"></a>
-<span class="sourceLineNo">1927</span>    LOG.info("Completed removal of " + delSfs.size() + " unnecessary (expired) file(s) in "<a name="line.1927"></a>
-<span class="sourceLineNo">1928</span>        + this + "; total size is "<a name="line.1928"></a>
-<span class="sourceLineNo">1929</span>        + TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1));<a name="line.1929"></a>
-<span class="sourceLineNo">1930</span>  }<a name="line.1930"></a>
-<span class="sourceLineNo">1931</span><a name="line.1931"></a>
-<span class="sourceLineNo">1932</span>  public void cancelRequestedCompaction(CompactionContext compaction) {<a name="line.1932"></a>
-<span class="sourceLineNo">1933</span>    finishCompactionRequest(compaction.getRequest());<a name="line.1933"></a>
-<span class="sourceLineNo">1934</span>  }<a name="line.1934"></a>
-<span class="sourceLineNo">1935</span><a name="line.1935"></a>
-<span class="sourceLineNo">1936</span>  protected void finishCompactionRequest(CompactionRequestImpl cr) {<a name="line.1936"></a>
-<span class="sourceLineNo">1937</span>    this.region.reportCompactionRequestEnd(cr.isMajor(), cr.getFiles().size(), cr.getSize());<a name="line.1937"></a>
-<span class="sourceLineNo">1938</span>    if (cr.isOffPeak()) {<a name="line.1938"></a>
-<span class="sourceLineNo">1939</span>      offPeakCompactionTracker.set(false);<a name="line.1939"></a>
-<span class="sourceLineNo">1940</span>      cr.setOffPeak(false);<a name="line.1940"></a>
-<span class="sourceLineNo">1941</span>    }<a name="line.1941"></a>
-<span class="sourceLineNo">1942</span>    synchronized (filesCompacting) {<a name="line.1942"></a>
-<span class="sourceLineNo">1943</span>      filesCompacting.removeAll(cr.getFiles());<a name="line.1943"></a>
-<span class="sourceLineNo">1944</span>    }<a name="line.1944"></a>
-<span class="sourceLineNo">1945</span>  }<a name="line.1945"></a>
-<span class="sourceLineNo">1946</span><a name="line.1946"></a>
-<span class="sourceLineNo">1947</span>  /**<a name="line.1947"></a>
-<span class="sourceLineNo">1948</span>   * Validates a store file by opening and closing it. In HFileV2 this should not be an expensive<a name="line.1948"></a>
-<span class="sourceLineNo">1949</span>   * operation.<a name="line.1949"></a>
-<span class="sourceLineNo">1950</span>   * @param path the path to the store file<a name="line.1950"></a>
-<span class="sourceLineNo">1951</span>   */<a name="line.1951"></a>
-<span class="sourceLineNo">1952</span>  private void validateStoreFile(Path path) throws IOException {<a name="line.1952"></a>
-<span class="sourceLineNo">1953</span>    HStoreFile storeFile = null;<a name="line.1953"></a>
-<span class="sourceLineNo">1954</span>    try {<a name="line.1954"></a>
-<span class="sourceLineNo">1955</span>      storeFile = createStoreFileAndReader(path);<a name="line.1955"></a>
-<span class="sourceLineNo">1956</span>    } catch (IOException e) {<a name="line.1956"></a>
-<span class="sourceLineNo">1957</span>      LOG.error("Failed to open store file : {}, keeping it in tmp location", path, e);<a name="line.1957"></a>
-<span class="sourceLineNo">1958</span>      throw e;<a name="line.1958"></a>
-<span class="sourceLineNo">1959</span>    } finally {<a name="line.1959"></a>
-<span class="sourceLineNo">1960</span>      if (storeFile != null) {<a name="line.1960"></a>
-<span class="sourceLineNo">1961</span>        storeFile.closeStoreFile(false);<a name="line.1961"></a>
-<span class="sourceLineNo">1962</span>      }<a name="line.1962"></a>
-<span class="sourceLineNo">1963</span>    }<a name="line.1963"></a>
-<span class="sourceLineNo">1964</span>  }<a name="line.1964"></a>
-<span class="sourceLineNo">1965</span><a name="line.1965"></a>
-<span class="sourceLineNo">1966</span>  /**<a name="line.1966"></a>
-<span class="sourceLineNo">1967</span>   * Update counts.<a name="line.1967"></a>
-<span class="sourceLineNo">1968</span>   */<a name="line.1968"></a>
-<span class="sourceLineNo">1969</span>  protected void refreshStoreSizeAndTotalBytes()<a name="line.1969"></a>
-<span class="sourceLineNo">1970</span>    throws IOException {<a name="line.1970"></a>
-<span class="sourceLineNo">1971</span>    this.storeSize.set(0L);<a name="line.1971"></a>
-<span class="sourceLineNo">1972</span>    this.totalUncompressedBytes.set(0L);<a name="line.1972"></a>
-<span class="sourceLineNo">1973</span>    for (HStoreFile hsf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1973"></a>
-<span class="sourceLineNo">1974</span>      StoreFileReader r = hsf.getReader();<a name="line.1974"></a>
-<span class="sourceLineNo">1975</span>      if (r == null) {<a name="line.1975"></a>
-<span class="sourceLineNo">1976</span>        LOG.warn("StoreFile {} has a null Reader", hsf);<a name="line.1976"></a>
-<span class="sourceLineNo">1977</span>        continue;<a name="line.1977"></a>
-<span class="sourceLineNo">1978</span>      }<a name="line.1978"></a>
-<span class="sourceLineNo">1979</span>      this.storeSize.addAndGet(r.length());<a name="line.1979"></a>
-<span class="sourceLineNo">1980</span>      this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.1980"></a>
-<span class="sourceLineNo">1981</span>    }<a name="line.1981"></a>
-<span class="sourceLineNo">1982</span>  }<a name="line.1982"></a>
-<span class="sourceLineNo">1983</span><a name="line.1983"></a>
-<span class="sourceLineNo">1984</span>  /*<a name="line.1984"></a>
-<span class="sourceLineNo">1985</span>   * @param wantedVersions How many versions were asked for.<a name="line.1985"></a>
-<span class="sourceLineNo">1986</span>   * @return wantedVersions or this families' {@link HConstants#VERSIONS}.<a name="line.1986"></a>
-<span class="sourceLineNo">1987</span>   */<a name="line.1987"></a>
-<span class="sourceLineNo">1988</span>  int versionsToReturn(final int wantedVersions) {<a name="line.1988"></a>
-<span class="sourceLineNo">1989</span>    if (wantedVersions &lt;= 0) {<a name="line.1989"></a>
-<span class="sourceLineNo">1990</span>      throw new IllegalArgumentException("Number of versions must be &gt; 0");<a name="line.1990"></a>
-<span class="sourceLineNo">1991</span>    }<a name="line.1991"></a>
-<span class="sourceLineNo">1992</span>    // Make sure we do not return more than maximum versions for this store.<a name="line.1992"></a>
-<span class="sourceLineNo">1993</span>    int maxVersions = getColumnFamilyDescriptor().getMaxVersions();<a name="line.1993"></a>
-<span class="sourceLineNo">1994</span>    return wantedVersions &gt; maxVersions ? maxVersions: wantedVersions;<a name="line.1994"></a>
-<span class="sourceLineNo">1995</span>  }<a name="line.1995"></a>
-<span class="sourceLineNo">1996</span><a name="line.1996"></a>
-<span class="sourceLineNo">1997</span>  @Override<a name="line.1997"></a>
-<span class="sourceLineNo">1998</span>  public boolean canSplit() {<a name="line.1998"></a>
-<span class="sourceLineNo">1999</span>    // Not split-able if we find a reference store file present in the store.<a name="line.1999"></a>
-<span class="sourceLineNo">2000</span>    boolean result = !hasReferences();<a name="line.2000"></a>
-<span class="sourceLineNo">2001</span>    if (!result) {<a name="line.2001"></a>
-<span class="sourceLineNo">2002</span>      LOG.trace("Not splittable; has references: {}", this);<a name="line.2002"></a>
-<span class="sourceLineNo">2003</span>    }<a name="line.2003"></a>
-<span class="sourceLineNo">2004</span>    return result;<a name="line.2004"></a>
-<span class="sourceLineNo">2005</span>  }<a name="line.2005"></a>
-<span class="sourceLineNo">2006</span><a name="line.2006"></a>
-<span class="sourceLineNo">2007</span>  /**<a name="line.2007"></a>
-<span class="sourceLineNo">2008</span>   * Determines if Store should be split.<a name="line.2008"></a>
-<span class="sourceLineNo">2009</span>   */<a name="line.2009"></a>
-<span class="sourceLineNo">2010</span>  public Optional&lt;byte[]&gt; getSplitPoint() {<a name="line.2010"></a>
-<span class="sourceLineNo">2011</span>    this.lock.readLock().lock();<a name="line.2011"></a>
-<span class="sourceLineNo">2012</span>    try {<a name="line.2012"></a>
-<span class="sourceLineNo">2013</span>      // Should already be enforced by the split policy!<a name="line.2013"></a>
-<span class="sourceLineNo">2014</span>      assert !this.getRegionInfo().isMetaRegion();<a name="line.2014"></a>
-<span class="sourceLineNo">2015</span>      // Not split-able if we find a reference store file present in the store.<a name="line.2015"></a>
-<span class="sourceLineNo">2016</span>      if (hasReferences()) {<a name="line.2016"></a>
-<span class="sourceLineNo">2017</span>        LOG.trace("Not splittable; has references: {}", this);<a name="line.2017"></a>
-<span class="sourceLineNo">2018</span>        return Optional.empty();<a name="line.2018"></a>
-<span class="sourceLineNo">2019</span>      }<a name="line.2019"></a>
-<span class="sourceLineNo">2020</span>      return this.storeEngine.getStoreFileManager().getSplitPoint();<a name="line.2020"></a>
-<span class="sourceLineNo">2021</span>    } catch(IOException e) {<a name="line.2021"></a>
-<span class="sourceLineNo">2022</span>      LOG.warn("Failed getting store size for {}", this, e);<a name="line.2022"></a>
-<span class="sourceLineNo">2023</span>    } finally {<a name="line.2023"></a>
-<span class="sourceLineNo">2024</span>      this.lock.readLock().unlock();<a name="line.2024"></a>
-<span class="sourceLineNo">2025</span>    }<a name="line.2025"></a>
-<span class="sourceLineNo">2026</span>    return Optional.empty();<a name="line.2026"></a>
-<span class="sourceLineNo">2027</span>  }<a name="line.2027"></a>
-<span class="sourceLineNo">2028</span><a name="line.2028"></a>
-<span class="sourceLineNo">2029</span>  @Override<a name="line.2029"></a>
-<span class="sourceLineNo">2030</span>  public long getLastCompactSize() {<a name="line.2030"></a>
-<span class="sourceLineNo">2031</span>    return this.lastCompactSize;<a name="line.2031"></a>
-<span class="sourceLineNo">2032</span>  }<a name="line.2032"></a>
-<span class="sourceLineNo">2033</span><a name="line.2033"></a>
-<span class="sourceLineNo">2034</span>  @Override<a name="line.2034"></a>
-<span class="sourceLineNo">2035</span>  public long getSize() {<a name="line.2035"></a>
-<span class="sourceLineNo">2036</span>    return storeSize.get();<a name="line.2036"></a>
-<span class="sourceLineNo">2037</span>  }<a name="line.2037"></a>
-<span class="sourceLineNo">2038</span><a name="line.2038"></a>
-<span class="sourceLineNo">2039</span>  public void triggerMajorCompaction() {<a name="line.2039"></a>
-<span class="sourceLineNo">2040</span>    this.forceMajor = true;<a name="line.2040"></a>
-<span class="sourceLineNo">2041</span>  }<a name="line.2041"></a>
-<span class="sourceLineNo">2042</span><a name="line.2042"></a>
-<span class="sourceLineNo">2043</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2043"></a>
-<span class="sourceLineNo">2044</span>  // File administration<a name="line.2044"></a>
-<span class="sourceLineNo">2045</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2045"></a>
-<span class="sourceLineNo">2046</span><a name="line.2046"></a>
-<span class="sourceLineNo">2047</span>  /**<a name="line.2047"></a>
-<span class="sourceLineNo">2048</span>   * Return a scanner for both the memstore and the HStore files. Assumes we are not in a<a name="line.2048"></a>
-<span class="sourceLineNo">2049</span>   * compaction.<a name="line.2049"></a>
-<span class="sourceLineNo">2050</span>   * @param scan Scan to apply when scanning the stores<a name="line.2050"></a>
-<span class="sourceLineNo">2051</span>   * @param targetCols columns to scan<a name="line.2051"></a>
-<span class="sourceLineNo">2052</span>   * @return a scanner over the current key values<a name="line.2052"></a>
-<span class="sourceLineNo">2053</span>   * @throws IOException on failure<a name="line.2053"></a>
-<span class="sourceLineNo">2054</span>   */<a name="line.2054"></a>
-<span class="sourceLineNo">2055</span>  public KeyValueScanner getScanner(Scan scan, final NavigableSet&lt;byte[]&gt; targetCols, long readPt)<a name="line.2055"></a>
-<span class="sourceLineNo">2056</span>      throws IOException {<a name="line.2056"></a>
-<span class="sourceLineNo">2057</span>    lock.readLock().lock();<a name="line.2057"></a>
-<span class="sourceLineNo">2058</span>    try {<a name="line.2058"></a>
-<span class="sourceLineNo">2059</span>      ScanInfo scanInfo;<a name="line.2059"></a>
-<span class="sourceLineNo">2060</span>      if (this.getCoprocessorHost() != null) {<a name="line.2060"></a>
-<span class="sourceLineNo">2061</span>        scanInfo = this.getCoprocessorHost().preStoreScannerOpen(this, scan);<a name="line.2061"></a>
-<span class="sourceLineNo">2062</span>      } else {<a name="line.2062"></a>
-<span class="sourceLineNo">2063</span>        scanInfo = getScanInfo();<a name="line.2063"></a>
-<span class="sourceLineNo">2064</span>      }<a name="line.2064"></a>
-<span class="sourceLineNo">2065</span>      return createScanner(scan, scanInfo, targetCols, readPt);<a name="line.2065"></a>
-<span class="sourceLineNo">2066</span>    } finally {<a name="line.2066"></a>
-<span class="sourceLineNo">2067</span>      lock.readLock().unlock();<a name="line.2067"></a>
-<span class="sourceLineNo">2068</span>    }<a name="line.2068"></a>
-<span class="sourceLineNo">2069</span>  }<a name="line.2069"></a>
-<span class="sourceLineNo">2070</span><a name="line.2070"></a>
-<span class="sourceLineNo">2071</span>  // HMobStore will override this method to return its own implementation.<a name="line.2071"></a>
-<span class="sourceLineNo">2072</span>  protected KeyValueScanner createScanner(Scan scan, ScanInfo scanInfo,<a name="line.2072"></a>
-<span class="sourceLineNo">2073</span>      NavigableSet&lt;byte[]&gt; targetCols, long readPt) throws IOException {<a name="line.2073"></a>
-<span class="sourceLineNo">2074</span>    return scan.isReversed() ? new ReversedStoreScanner(this, scanInfo, scan, targetCols, readPt)<a name="line.2074"></a>
-<span class="sourceLineNo">2075</span>        : new StoreScanner(this, scanInfo, scan, targetCols, readPt);<a name="line.2075"></a>
-<span class="sourceLineNo">2076</span>  }<a name="line.2076"></a>
-<span class="sourceLineNo">2077</span><a name="line.2077"></a>
-<span class="sourceLineNo">2078</span>  /**<a name="line.2078"></a>
-<span class="sourceLineNo">2079</span>   * Recreates the scanners on the current list of active store file scanners<a name="line.2079"></a>
-<span class="sourceLineNo">2080</span>   * @param currentFileScanners the current set of active store file scanners<a name="line.2080"></a>
-<span class="sourceLineNo">2081</span>   * @param cacheBlocks cache the blocks or not<a name="line.2081"></a>
-<span class="sourceLineNo">2082</span>   * @param usePread use pread or not<a name="line.2082"></a>
-<span class="sourceLineNo">2083</span>   * @param isCompaction is the scanner for compaction<a name="line.2083"></a>
-<span class="sourceLineNo">2084</span>   * @param matcher the scan query matcher<a name="line.2084"></a>
-<span class="sourceLineNo">2085</span>   * @param startRow the scan's start row<a name="line.2085"></a>
-<span class="sourceLineNo">2086</span>   * @param includeStartRow should the scan include the start row<a name="line.2086"></a>
-<span class="sourceLineNo">2087</span>   * @param stopRow the scan's stop row<a name="line.2087"></a>
-<span class="sourceLineNo">2088</span>   * @param includeStopRow should the scan include the stop row<a name="line.2088"></a>
-<span class="sourceLineNo">2089</span>   * @param readPt the read point of the current scane<a name="line.2089"></a>
-<span class="sourceLineNo">2090</span>   * @param includeMemstoreScanner whether the current scanner should include memstorescanner<a name="line.2090"></a>
-<span class="sourceLineNo">2091</span>   * @return list of scanners recreated on the current Scanners<a name="line.2091"></a>
-<span class="sourceLineNo">2092</span>   */<a name="line.2092"></a>
-<span class="sourceLineNo">2093</span>  public List&lt;KeyValueScanner&gt; recreateScanners(List&lt;KeyValueScanner&gt; currentFileScanners,<a name="line.2093"></a>
-<span class="sourceLineNo">2094</span>      boolean cacheBlocks, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.2094"></a>
-<span class="sourceLineNo">2095</span>      byte[] startRow, boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.2095"></a>
-<span class="sourceLineNo">2096</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.2096"></a>
-<span class="sourceLineNo">2097</span>    this.lock.readLock().lock();<a name="line.2097"></a>
-<span class="sourceLineNo">2098</span>    try {<a name="line.2098"></a>
-<span class="sourceLineNo">2099</span>      Map&lt;String, HStoreFile&gt; name2File =<a name="line.2099"></a>
-<span class="sourceLineNo">2100</span>          new HashMap&lt;&gt;(getStorefilesCount() + getCompactedFilesCount());<a name="line.2100"></a>
-<span class="sourceLineNo">2101</span>      for (HStoreFile file : getStorefiles()) {<a name="line.2101"></a>
-<span class="sourceLineNo">2102</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2102"></a>
-<span class="sourceLineNo">2103</span>      }<a name="line.2103"></a>
-<span class="sourceLineNo">2104</span>      Collection&lt;HStoreFile&gt; compactedFiles = getCompactedFiles();<a name="line.2104"></a>
-<span class="sourceLineNo">2105</span>      for (HStoreFile file : IterableUtils.emptyIfNull(compactedFiles)) {<a name="line.2105"></a>
-<span class="sourceLineNo">2106</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2106"></a>
-<span class="sourceLineNo">2107</span>      }<a name="line.2107"></a>
-<span class="sourceLineNo">2108</span>      List&lt;HStoreFile&gt; filesToReopen = new ArrayList&lt;&gt;();<a name="line.2108"></a>
-<span class="sourceLineNo">2109</span>      for (KeyValueScanner kvs : currentFileScanners) {<a name="line.2109"></a>
-<span class="sourceLineNo">2110</span>        assert kvs.isFileScanner();<a name="line.2110"></a>
-<span class="sourceLineNo">2111</span>        if (kvs.peek() == null) {<a name="line.2111"></a>
-<span class="sourceLineNo">2112</span>          continue;<a name="line.2112"></a>
-<span class="sourceLineNo">2113</span>        }<a name="line.2113"></a>
-<span class="sourceLineNo">2114</span>        filesToReopen.add(name2File.get(kvs.getFilePath().getName()));<a name="line.2114"></a>
-<span class="sourceLineNo">2115</span>      }<a name="line.2115"></a>
-<span class="sourceLineNo">2116</span>      if (filesToReopen.isEmpty()) {<a name="line.2116"></a>
-<span class="sourceLineNo">2117</span>        return null;<a name="line.2117"></a>
-<span class="sourceLineNo">2118</span>      }<a name="line.2118"></a>
-<span class="sourceLineNo">2119</span>      return getScanners(filesToReopen, cacheBlocks, false, false, matcher, startRow,<a name="line.2119"></a>
-<span class="sourceLineNo">2120</span>        includeStartRow, stopRow, includeStopRow, readPt, false);<a name="line.2120"></a>
-<span class="sourceLineNo">2121</span>    } finally {<a name="line.2121"></a>
-<span class="sourceLineNo">2122</span>      this.lock.readLock().unlock();<a name="line.2122"></a>
-<span class="sourceLineNo">2123</span>    }<a name="line.2123"></a>
-<span class="sourceLineNo">2124</span>  }<a name="line.2124"></a>
-<span class="sourceLineNo">2125</span><a name="line.2125"></a>
-<span class="sourceLineNo">2126</span>  @Override<a name="line.2126"></a>
-<span class="sourceLineNo">2127</span>  public String toString() {<a name="line.2127"></a>
-<span class="sourceLineNo">2128</span>    return this.getRegionInfo().getShortNameToLog()+ "/" + this.getColumnFamilyName();<a name="line.2128"></a>
-<span class="sourceLineNo">2129</span>  }<a name="line.2129"></a>
-<span class="sourceLineNo">2130</span><a name="line.2130"></a>
-<span class="sourceLineNo">2131</span>  @Override<a name="line.2131"></a>
-<span class="sourceLineNo">2132</span>  public int getStorefilesCount() {<a name="line.2132"></a>
-<span class="sourceLineNo">2133</span>    return this.storeEngine.getStoreFileManager().getStorefileCount();<a name="line.2133"></a>
-<span class="sourceLineNo">2134</span>  }<a name="line.2134"></a>
-<span class="sourceLineNo">2135</span><a name="line.2135"></a>
-<span class="sourceLineNo">2136</span>  @Override<a name="line.2136"></a>
-<span class="sourceLineNo">2137</span>  public int getCompactedFilesCount() {<a name="line.2137"></a>
-<span class="sourceLineNo">2138</span>    return this.storeEngine.getStoreFileManager().getCompactedFilesCount();<a name="line.2138"></a>
-<span class="sourceLineNo">2139</span>  }<a name="line.2139"></a>
-<span class="sourceLineNo">2140</span><a name="line.2140"></a>
-<span class="sourceLineNo">2141</span>  private LongStream getStoreFileAgeStream() {<a name="line.2141"></a>
-<span class="sourceLineNo">2142</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream().filter(sf -&gt; {<a name="line.2142"></a>
-<span class="sourceLineNo">2143</span>      if (sf.getReader() == null) {<a name="line.2143"></a>
-<span class="sourceLineNo">2144</span>        LOG.warn("StoreFile {} has a null Reader", sf);<a name="line.2144"></a>
-<span class="sourceLineNo">2145</span>        return false;<a name="line.2145"></a>
-<span class="sourceLineNo">2146</span>      } else {<a name="line.2146"></a>
-<span class="sourceLineNo">2147</span>        return true;<a name="line.2147"></a>
-<span class="sourceLineNo">2148</span>      }<a name="line.2148"></a>
-<span class="sourceLineNo">2149</span>    }).filter(HStoreFile::isHFile).mapToLong(sf -&gt; sf.getFileInfo().getCreatedTimestamp())<a name="line.2149"></a>
-<span class="sourceLineNo">2150</span>        .map(t -&gt; EnvironmentEdgeManager.currentTime() - t);<a name="line.2150"></a>
-<span class="sourceLineNo">2151</span>  }<a name="line.2151"></a>
-<span class="sourceLineNo">2152</span><a name="line.2152"></a>
-<span class="sourceLineNo">2153</span>  @Override<a name="line.2153"></a>
-<span class="sourceLineNo">2154</span>  public OptionalLong getMaxStoreFileAge() {<a name="line.2154"></a>
-<span class="sourceLineNo">2155</span>    return getStoreFileAgeStream().max();<a name="line.2155"></a>
-<span class="sourceLineNo">2156</span>  }<a name="line.2156"></a>
-<span class="sourceLineNo">2157</span><a name="line.2157"></a>
-<span class="sourceLineNo">2158</span>  @Override<a name="line.2158"></a>
-<span class="sourceLineNo">2159</span>  public OptionalLong getMinStoreFileAge() {<a name="line.2159"></a>
-<span class="sourceLineNo">2160</span>    return getStoreFileAgeStream().min();<a name="line.2160"></a>
-<span class="sourceLineNo">2161</span>  }<a name="line.2161"></a>
-<span class="sourceLineNo">2162</span><a name="line.2162"></a>
-<span class="sourceLineNo">2163</span>  @Override<a name="line.2163"></a>
-<span class="sourceLineNo">2164</span>  public OptionalDouble getAvgStoreFileAge() {<a name="line.2164"></a>
-<span class="sourceLineNo">2165</span>    return getStoreFileAgeStream().average();<a name="line.2165"></a>
-<span class="sourceLineNo">2166</span>  }<a name="line.2166"></a>
-<span class="sourceLineNo">2167</span><a name="line.2167"></a>
-<span class="sourceLineNo">2168</span>  @Override<a name="line.2168"></a>
-<span class="sourceLineNo">2169</span>  public long getNumReferenceFiles() {<a name="line.2169"></a>
-<span class="sourceLineNo">2170</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2170"></a>
-<span class="sourceLineNo">2171</span>        .filter(HStoreFile::isReference).count();<a name="line.2171"></a>
-<span class="sourceLineNo">2172</span>  }<a name="line.2172"></a>
-<span class="sourceLineNo">2173</span><a name="line.2173"></a>
-<span class="sourceLineNo">2174</span>  @Override<a name="line.2174"></a>
-<span class="sourceLineNo">2175</span>  public long getNumHFiles() {<a name="line.2175"></a>
-<span class="sourceLineNo">2176</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2176"></a>
-<span class="sourceLineNo">2177</span>        .filter(HStoreFile::isHFile).count();<a name="line.2177"></a>
-<span class="sourceLineNo">2178</span>  }<a name="line.2178"></a>
-<span class="sourceLineNo">2179</span><a name="line.2179"></a>
-<span class="sourceLineNo">2180</span>  @Override<a name="line.2180"></a>
-<span class="sourceLineNo">2181</span>  public long getStoreSizeUncompressed() {<a name="line.2181"></a>
-<span class="sourceLineNo">2182</span>    return this.totalUncompressedBytes.get();<a name="line.2182"></a>
-<span class="sourceLineNo">2183</span>  }<a name="line.2183"></a>
-<span class="sourceLineNo">2184</span><a name="line.2184"></a>
-<span class="sourceLineNo">2185</span>  @Override<a name="line.2185"></a>
-<span class="sourceLineNo">2186</span>  public long getStorefilesSize() {<a name="line.2186"></a>
-<span class="sourceLineNo">2187</span>    // Include all StoreFiles<a name="line.2187"></a>
-<span class="sourceLineNo">2188</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(), sf -&gt; true);<a name="line.2188"></a>
-<span class="sourceLineNo">2189</span>  }<a name="line.2189"></a>
-<span class="sourceLineNo">2190</span><a name="line.2190"></a>
-<span class="sourceLineNo">2191</span>  @Override<a name="line.2191"></a>
-<span class="sourceLineNo">2192</span>  public long getHFilesSize() {<a name="line.2192"></a>
-<span class="sourceLineNo">2193</span>    // Include only StoreFiles which are HFiles<a name="line.2193"></a>
-<span class="sourceLineNo">2194</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(),<a name="line.2194"></a>
-<span class="sourceLineNo">2195</span>      HStoreFile::isHFile);<a name="line.2195"></a>
-<span class="sourceLineNo">2196</span>  }<a name="line.2196"></a>
-<span class="sourceLineNo">2197</span><a name="line.2197"></a>
-<span class="sourceLineNo">2198</span>  private long getTotalUncompressedBytes(List&lt;HStoreFile&gt; files) {<a name="line.2198"></a>
-<span class="sourceLineNo">2199</span>    return files.stream()<a name="line.2199"></a>
-<span class="sourceLineNo">2200</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::getTotalUncompressedBytes))<a name="line.2200"></a>
-<span class="sourceLineNo">2201</span>      .sum();<a name="line.2201"></a>
-<span class="sourceLineNo">2202</span>  }<a name="line.2202"></a>
-<span class="sourceLineNo">2203</span><a name="line.2203"></a>
-<span class="sourceLineNo">2204</span>  private long getStorefilesSize(Collection&lt;HStoreFile&gt; files, Predicate&lt;HStoreFile&gt; predicate) {<a name="line.2204"></a>
-<span class="sourceLineNo">2205</span>    return files.stream().filter(predicate)<a name="line.2205"></a>
-<span class="sourceLineNo">2206</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::length)).sum();<a name="line.2206"></a>
-<span class="sourceLineNo">2207</span>  }<a name="line.2207"></a>
-<span class="sourceLineNo">2208</span><a name="line.2208"></a>
-<span class="sourceLineNo">2209</span>  private long getStorefileFieldSize(HStoreFile file, ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2209"></a>
-<span class="sourceLineNo">2210</span>    if (file == null) {<a name="line.2210"></a>
-<span class="sourceLineNo">2211</span>      return 0L;<a name="line.2211"></a>
-<span class="sourceLineNo">2212</span>    }<a name="line.2212"></a>
-<span class="sourceLineNo">2213</span>    StoreFileReader reader = file.getReader();<a name="line.2213"></a>
-<span class="sourceLineNo">2214</span>    if (reader == null) {<a name="line.2214"></a>
-<span class="sourceLineNo">2215</span>      return 0L;<a name="line.2215"></a>
-<span class="sourceLineNo">2216</span>    }<a name="line.2216"></a>
-<span class="sourceLineNo">2217</span>    return f.applyAsLong(reader);<a name="line.2217"></a>
-<span class="sourceLineNo">2218</span>  }<a name="line.2218"></a>
-<span class="sourceLineNo">2219</span><a name="line.2219"></a>
-<span class="sourceLineNo">2220</span>  private long getStorefilesFieldSize(ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2220"></a>
-<span class="sourceLineNo">2221</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2221"></a>
-<span class="sourceLineNo">2222</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, f)).sum();<a name="line.2222"></a>
-<span class="sourceLineNo">2223</span>  }<a name="line.2223"></a>
-<span class="sourceLineNo">2224</span><a name="line.2224"></a>
-<span class="sourceLineNo">2225</span>  @Override<a name="line.2225"></a>
-<span class="sourceLineNo">2226</span>  public long getStorefilesRootLevelIndexSize() {<a name="line.2226"></a>
-<span class="sourceLineNo">2227</span>    return getStorefilesFieldSize(StoreFileReader::indexSize);<a name="line.2227"></a>
-<span class="sourceLineNo">2228</span>  }<a name="line.2228"></a>
-<span class="sourceLineNo">2229</span><a name="line.2229"></a>
-<span class="sourceLineNo">2230</span>  @Override<a name="line.2230"></a>
-<span class="sourceLineNo">2231</span>  public long getTotalStaticIndexSize() {<a name="line.2231"></a>
-<span class="sourceLineNo">2232</span>    return getStorefilesFieldSize(StoreFileReader::getUncompressedDataIndexSize);<a name="line.2232"></a>
-<span class="sourceLineNo">2233</span>  }<a name="line.2233"></a>
-<span class="sourceLineNo">2234</span><a name="line.2234"></a>
-<span class="sourceLineNo">2235</span>  @Override<a name="line.2235"></a>
-<span class="sourceLineNo">2236</span>  public long getTotalStaticBloomSize() {<a name="line.2236"></a>
-<span class="sourceLineNo">2237</span>    return getStorefilesFieldSize(StoreFileReader::getTotalBloomSize);<a name="line.2237"></a>
-<span class="sourceLineNo">2238</span>  }<a name="line.2238"></a>
-<span class="sourceLineNo">2239</span><a name="line.2239"></a>
-<span class="sourceLineNo">2240</span>  @Override<a name="line.2240"></a>
-<span class="sourceLineNo">2241</span>  public MemStoreSize getMemStoreSize() {<a name="line.2241"></a>
-<span class="sourceLineNo">2242</span>    return this.memstore.size();<a name="line.2242"></a>
-<span class="sourceLineNo">2243</span>  }<a name="line.2243"></a>
-<span class="sourceLineNo">2244</span><a name="line.2244"></a>
-<span class="sourceLineNo">2245</span>  @Override<a name="line.2245"></a>
-<span class="sourceLineNo">2246</span>  public int getCompactPriority() {<a name="line.2246"></a>
-<span class="sourceLineNo">2247</span>    int priority = this.storeEngine.getStoreFileManager().getStoreCompactionPriority();<a name="line.2247"></a>
-<span class="sourceLineNo">2248</span>    if (priority == PRIORITY_USER) {<a name="line.2248"></a>
-<span class="sourceLineNo">2249</span>      LOG.warn("Compaction priority is USER despite there being no user compaction");<a name="line.2249"></a>
-<span class="sourceLineNo">2250</span>    }<a name="line.2250"></a>
-<span class="sourceLineNo">2251</span>    return priority;<a name="line.2251"></a>
-<span class="sourceLineNo">2252</span>  }<a name="line.2252"></a>
-<span class="sourceLineNo">2253</span><a name="line.2253"></a>
-<span class="sourceLineNo">2254</span>  public boolean throttleCompaction(long compactionSize) {<a name="line.2254"></a>
-<span class="sourceLineNo">2255</span>    return storeEngine.getCompactionPolicy().throttleCompaction(compactionSize);<a name="line.2255"></a>
-<span class="sourceLineNo">2256</span>  }<a name="line.2256"></a>
-<span class="sourceLineNo">2257</span><a name="line.2257"></a>
-<span class="sourceLineNo">2258</span>  public HRegion getHRegion() {<a name="line.2258"></a>
-<span class="sourceLineNo">2259</span>    return this.region;<a name="line.2259"></a>
-<span class="sourceLineNo">2260</span>  }<a name="line.2260"></a>
-<span class="sourceLineNo">2261</span><a name="line.2261"></a>
-<span class="sourceLineNo">2262</span>  public RegionCoprocessorHost getCoprocessorHost() {<a name="line.2262"></a>
-<span class="sourceLineNo">2263</span>    return this.region.getCoprocessorHost();<a name="line.2263"></a>
-<span class="sourceLineNo">2264</span>  }<a name="line.2264"></a>
-<span class="sourceLineNo">2265</span><a name="line.2265"></a>
-<span class="sourceLineNo">2266</span>  @Override<a name="line.2266"></a>
-<span class="sourceLineNo">2267</span>  public RegionInfo getRegionInfo() {<a name="line.2267"></a>
-<span class="sourceLineNo">2268</span>    return getRegionFileSystem().getRegionInfo();<a name="line.2268"></a>
-<span class="sourceLineNo">2269</span>  }<a name="line.2269"></a>
-<span class="sourceLineNo">2270</span><a name="line.2270"></a>
-<span class="sourceLineNo">2271</span>  @Override<a name="line.2271"></a>
-<span class="sourceLineNo">2272</span>  public boolean areWritesEnabled() {<a name="line.2272"></a>
-<span class="sourceLineNo">2273</span>    return this.region.areWritesEnabled();<a name="line.2273"></a>
-<span class="sourceLineNo">2274</span>  }<a name="line.2274"></a>
-<span class="sourceLineNo">2275</span><a name="line.2275"></a>
-<span class="sourceLineNo">2276</span>  @Override<a name="line.2276"></a>
-<span class="sourceLineNo">2277</span>  public long getSmallestReadPoint() {<a name="line.2277"></a>
-<span class="sourceLineNo">2278</span>    return this.region.getSmallestReadPoint();<a name="line.2278"></a>
-<span class="sourceLineNo">2279</span>  }<a name="line.2279"></a>
-<span class="sourceLineNo">2280</span><a name="line.2280"></a>
-<span class="sourceLineNo">2281</span>  /**<a name="line.2281"></a>
-<span class="sourceLineNo">2282</span>   * Adds or replaces the specified KeyValues.<a name="line.2282"></a>
-<span class="sourceLineNo">2283</span>   * &lt;p&gt;<a name="line.2283"></a>
-<span class="sourceLineNo">2284</span>   * For each KeyValue specified, if a cell with the same row, family, and qualifier exists in<a name="line.2284"></a>
-<span class="sourceLineNo">2285</span>   * MemStore, it will be replaced. Otherwise, it will just be inserted to MemStore.<a name="line.2285"></a>
-<span class="sourceLineNo">2286</span>   * &lt;p&gt;<a name="line.2286"></a>
-<span class="sourceLineNo">2287</span>   * This operation is atomic on each KeyValue (row/family/qualifier) but not necessarily atomic<a name="line.2287"></a>
-<span class="sourceLineNo">2288</span>   * across all of them.<a name="line.2288"></a>
-<span class="sourceLineNo">2289</span>   * @param readpoint readpoint below which we can safely remove duplicate KVs<a name="line.2289"></a>
-<span class="sourceLineNo">2290</span>   */<a name="line.2290"></a>
-<span class="sourceLineNo">2291</span>  public void upsert(Iterable&lt;Cell&gt; cells, long readpoint, MemStoreSizing memstoreSizing)<a name="line.2291"></a>
-<span class="sourceLineNo">2292</span>      throws IOException {<a name="line.2292"></a>
-<span class="sourceLineNo">2293</span>    this.lock.readLock().lock();<a name="line.2293"></a>
-<span class="sourceLineNo">2294</span>    try {<a name="line.2294"></a>
-<span class="sourceLineNo">2295</span>      this.memstore.upsert(cells, readpoint, memstoreSizing);<a name="line.2295"></a>
-<span class="sourceLineNo">2296</span>    } finally {<a name="line.2296"></a>
-<span class="sourceLineNo">2297</span>      this.lock.readLock().unlock();<a name="line.2297"></a>
-<span class="sourceLineNo">2298</span>    }<a name="line.2298"></a>
-<span class="sourceLineNo">2299</span>  }<a name="line.2299"></a>
-<span class="sourceLineNo">2300</span><a name="line.2300"></a>
-<span class="sourceLineNo">2301</span>  public StoreFlushContext createFlushContext(long cacheFlushId, FlushLifeCycleTracker tracker) {<a name="line.2301"></a>
-<span class="sourceLineNo">2302</span>    return new StoreFlusherImpl(cacheFlushId, tracker);<a name="line.2302"></a>
-<span class="sourceLineNo">2303</span>  }<a name="line.2303"></a>
-<span class="sourceLineNo">2304</span><a name="line.2304"></a>
-<span class="sourceLineNo">2305</span>  private final class StoreFlusherImpl implements StoreFlushContext {<a name="line.2305"></a>
-<span class="sourceLineNo">2306</span><a name="line.2306"></a>
-<span class="sourceLineNo">2307</span>    private final FlushLifeCycleTracker tracker;<a name="line.2307"></a>
-<span class="sourceLineNo">2308</span>    private final long cacheFlushSeqNum;<a name="line.2308"></a>
-<span class="sourceLineNo">2309</span>    private MemStoreSnapshot snapshot;<a name="line.2309"></a>
-<span class="sourceLineNo">2310</span>    private List&lt;Path&gt; tempFiles;<a name="line.2310"></a>
-<span class="sourceLineNo">2311</span>    private List&lt;Path&gt; committedFiles;<a name="line.2311"></a>
-<span class="sourceLineNo">2312</span>    private long cacheFlushCount;<a name="line.2312"></a>
-<span class="sourceLineNo">2313</span>    private long cacheFlushSize;<a name="line.2313"></a>
-<span class="sourceLineNo">2314</span>    private long outputFileSize;<a name="line.2314"></a>
-<span class="sourceLineNo">2315</span><a name="line.2315"></a>
-<span class="sourceLineNo">2316</span>    private StoreFlusherImpl(long cacheFlushSeqNum, FlushLifeCycleTracker tracker) {<a name="line.2316"></a>
-<span class="sourceLineNo">2317</span>      this.cacheFlushSeqNum = cacheFlushSeqNum;<a name="line.2317"></a>
-<span class="sourceLineNo">2318</span>      this.tracker = tracker;<a name="line.2318"></a>
-<span class="sourceLineNo">2319</span>    }<a name="line.2319"></a>
-<span class="sourceLineNo">2320</span><a name="line.2320"></a>
-<span class="sourceLineNo">2321</span>    /**<a name="line.2321"></a>
-<span class="sourceLineNo">2322</span>     * This is not thread safe. The caller should have a lock on the region or the store.<a name="line.2322"></a>
-<span class="sourceLineNo">2323</span>     * If necessary, the lock can be added with the patch provided in HBASE-10087<a name="line.2323"></a>
-<span class="sourceLineNo">2324</span>     */<a name="line.2324"></a>
-<span class="sourceLineNo">2325</span>    @Override<a name="line.2325"></a>
-<span class="sourceLineNo">2326</span>    public MemStoreSize prepare() {<a name="line.2326"></a>
-<span class="sourceLineNo">2327</span>      // passing the current sequence number of the wal - to allow bookkeeping in the memstore<a name="line.2327"></a>
-<span class="sourceLineNo">2328</span>      this.snapshot = memstore.snapshot();<a name="line.2328"></a>
-<span class="sourceLineNo">2329</span>      this.cacheFlushCount = snapshot.getCellsCount();<a name="line.2329"></a>
-<span class="sourceLineNo">2330</span>      this.cacheFlushSize = snapshot.getDataSize();<a name="line.2330"></a>
-<span class="sourceLineNo">2331</span>      committedFiles = new ArrayList&lt;&gt;(1);<a name="line.2331"></a>
-<span class="sourceLineNo">2332</span>      return snapshot.getMemStoreSize();<a name="line.2332"></a>
-<span class="sourceLineNo">2333</span>    }<a name="line.2333"></a>
-<span class="sourceLineNo">2334</span><a name="line.2334"></a>
-<span class="sourceLineNo">2335</span>    @Override<a name="line.2335"></a>
-<span class="sourceLineNo">2336</span>    public void flushCache(MonitoredTask status) throws IOException {<a name="line.2336"></a>
-<span class="sourceLineNo">2337</span>      RegionServerServices rsService = region.getRegionServerServices();<a name="line.2337"></a>
-<span class="sourceLineNo">2338</span>      ThroughputController throughputController =<a name="line.2338"></a>
-<span class="sourceLineNo">2339</span>          rsService == null ? null : rsService.getFlushThroughputController();<a name="line.2339"></a>
-<span class="sourceLineNo">2340</span>      tempFiles =<a name="line.2340"></a>
-<span class="sourceLineNo">2341</span>          HStore.this.flushCache(cacheFlushSeqNum, snapshot, status, throughputController, tracker);<a name="line.2341"></a>
-<span class="sourceLineNo">2342</span>    }<a name="line.2342"></a>
-<span class="sourceLineNo">2343</span><a name="line.2343"></a>
-<span class="sourceLineNo">2344</span>    @Override<a name="line.2344"></a>
-<span class="sourceLineNo">2345</span>    public boolean commit(MonitoredTask status) throws IOException {<a name="line.2345"></a>
-<span class="sourceLineNo">2346</span>      if (CollectionUtils.isEmpty(this.tempFiles)) {<a name="line.2346"></a>
-<span class="sourceLineNo">2347</span>        return false;<a name="line.2347"></a>
-<span class="sourceLineNo">2348</span>      }<a name="line.2348"></a>
-<span class="sourceLineNo">2349</span>      List&lt;HStoreFile&gt; storeFiles = new ArrayList&lt;&gt;(this.tempFiles.size());<a name="line.2349"></a>
-<span class="sourceLineNo">2350</span>      for (Path storeFilePath : tempFiles) {<a name="line.2350"></a>
-<span class="sourceLineNo">2351</span>        try {<a name="line.2351"></a>
-<span class="sourceLineNo">2352</span>          HStoreFile sf = HStore.this.commitFile(storeFilePath, cacheFlushSeqNum, status);<a name="line.2352"></a>
-<span class="sourceLineNo">2353</span>          outputFileSize += sf.getReader().length();<a name="line.2353"></a>
-<span class="sourceLineNo">2354</span>          storeFiles.add(sf);<a name="line.2354"></a>
-<span class="sourceLineNo">2355</span>        } catch (IOException ex) {<a name="line.2355"></a>
-<span class="sourceLineNo">2356</span>          LOG.error("Failed to commit store file {}", storeFilePath, ex);<a name="line.2356"></a>
-<span class="sourceLineNo">2357</span>          // Try to delete the files we have committed before.<a name="line.2357"></a>
-<span class="sourceLineNo">2358</span>          for (HStoreFile sf : storeFiles) {<a name="line.2358"></a>
-<span class="sourceLineNo">2359</span>            Path pathToDelete = sf.getPath();<a name="line.2359"></a>
-<span class="sourceLineNo">2360</span>            try {<a name="line.2360"></a>
-<span class="sourceLineNo">2361</span>              sf.deleteStoreFile();<a name="line.2361"></a>
-<span class="sourceLineNo">2362</span>            } catch (IOException deleteEx) {<a name="line.2362"></a>
-<span class="sourceLineNo">2363</span>              LOG.error(HBaseMarkers.FATAL, "Failed to delete store file we committed, "<a name="line.2363"></a>
-<span class="sourceLineNo">2364</span>                  + "halting {}", pathToDelete, ex);<a name="line.2364"></a>
-<span class="sourceLineNo">2365</span>              Runtime.getRuntime().halt(1);<a name="line.2365"></a>
-<span class="sourceLineNo">2366</span>            }<a name="line.2366"></a>
-<span class="sourceLineNo">2367</span>          }<a name="line.2367"></a>
-<span class="sourceLineNo">2368</span>          throw new IOException("Failed to commit the flush", ex);<a name="line.2368"></a>
+<span class="sourceLineNo">1516</span>  protected List&lt;HStoreFile&gt; doCompaction(CompactionRequestImpl cr,<a name="line.1516"></a>
+<span class="sourceLineNo">1517</span>      Collection&lt;HStoreFile&gt; filesToCompact, User user, long compactionStartTime,<a name="line.1517"></a>
+<span class="sourceLineNo">1518</span>      List&lt;Path&gt; newFiles) throws IOException {<a name="line.1518"></a>
+<span class="sourceLineNo">1519</span>    // Do the steps necessary to complete the compaction.<a name="line.1519"></a>
+<span class="sourceLineNo">1520</span>    setStoragePolicyFromFileName(newFiles);<a name="line.1520"></a>
+<span class="sourceLineNo">1521</span>    List&lt;HStoreFile&gt; sfs = commitStoreFiles(newFiles, true);<a name="line.1521"></a>
+<span class="sourceLineNo">1522</span>    if (this.getCoprocessorHost() != null) {<a name="line.1522"></a>
+<span class="sourceLineNo">1523</span>      for (HStoreFile sf : sfs) {<a name="line.1523"></a>
+<span class="sourceLineNo">1524</span>        getCoprocessorHost().postCompact(this, sf, cr.getTracker(), cr, user);<a name="line.1524"></a>
+<span class="sourceLineNo">1525</span>      }<a name="line.1525"></a>
+<span class="sourceLineNo">1526</span>    }<a name="line.1526"></a>
+<span class="sourceLineNo">1527</span>    writeCompactionWalRecord(filesToCompact, sfs);<a name="line.1527"></a>
+<span class="sourceLineNo">1528</span>    replaceStoreFiles(filesToCompact, sfs);<a name="line.1528"></a>
+<span class="sourceLineNo">1529</span>    if (cr.isMajor()) {<a name="line.1529"></a>
+<span class="sourceLineNo">1530</span>      majorCompactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1530"></a>
+<span class="sourceLineNo">1531</span>      majorCompactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1531"></a>
+<span class="sourceLineNo">1532</span>    } else {<a name="line.1532"></a>
+<span class="sourceLineNo">1533</span>      compactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1533"></a>
+<span class="sourceLineNo">1534</span>      compactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1534"></a>
+<span class="sourceLineNo">1535</span>    }<a name="line.1535"></a>
+<span class="sourceLineNo">1536</span>    long outputBytes = getTotalSize(sfs);<a name="line.1536"></a>
+<span class="sourceLineNo">1537</span><a name="line.1537"></a>
+<span class="sourceLineNo">1538</span>    // At this point the store will use new files for all new scanners.<a name="line.1538"></a>
+<span class="sourceLineNo">1539</span>    refreshStoreSizeAndTotalBytes(); // update store size.<a name="line.1539"></a>
+<span class="sourceLineNo">1540</span><a name="line.1540"></a>
+<span class="sourceLineNo">1541</span>    long now = EnvironmentEdgeManager.currentTime();<a name="line.1541"></a>
+<span class="sourceLineNo">1542</span>    if (region.getRegionServerServices() != null<a name="line.1542"></a>
+<span class="sourceLineNo">1543</span>        &amp;&amp; region.getRegionServerServices().getMetrics() != null) {<a name="line.1543"></a>
+<span class="sourceLineNo">1544</span>      region.getRegionServerServices().getMetrics().updateCompaction(<a name="line.1544"></a>
+<span class="sourceLineNo">1545</span>          region.getTableDescriptor().getTableName().getNameAsString(),<a name="line.1545"></a>
+<span class="sourceLineNo">1546</span>          cr.isMajor(), now - compactionStartTime, cr.getFiles().size(),<a name="line.1546"></a>
+<span class="sourceLineNo">1547</span>          newFiles.size(), cr.getSize(), outputBytes);<a name="line.1547"></a>
+<span class="sourceLineNo">1548</span><a name="line.1548"></a>
+<span class="sourceLineNo">1549</span>    }<a name="line.1549"></a>
+<span class="sourceLineNo">1550</span><a name="line.1550"></a>
+<span class="sourceLineNo">1551</span>    logCompactionEndMessage(cr, sfs, now, compactionStartTime);<a name="line.1551"></a>
+<span class="sourceLineNo">1552</span>    return sfs;<a name="line.1552"></a>
+<span class="sourceLineNo">1553</span>  }<a name="line.1553"></a>
+<span class="sourceLineNo">1554</span><a name="line.1554"></a>
+<span class="sourceLineNo">1555</span>  // Set correct storage policy from the file name of DTCP.<a name="line.1555"></a>
+<span class="sourceLineNo">1556</span>  // Rename file will not change the storage policy.<a name="line.1556"></a>
+<span class="sourceLineNo">1557</span>  private void setStoragePolicyFromFileName(List&lt;Path&gt; newFiles) throws IOException {<a name="line.1557"></a>
+<span class="sourceLineNo">1558</span>    String prefix = HConstants.STORAGE_POLICY_PREFIX;<a name="line.1558"></a>
+<span class="sourceLineNo">1559</span>    for (Path newFile : newFiles) {<a name="line.1559"></a>
+<span class="sourceLineNo">1560</span>      if (newFile.getParent().getName().startsWith(prefix)) {<a name="line.1560"></a>
+<span class="sourceLineNo">1561</span>        CommonFSUtils.setStoragePolicy(getRegionFileSystem().getFileSystem(), newFile,<a name="line.1561"></a>
+<span class="sourceLineNo">1562</span>            newFile.getParent().getName().substring(prefix.length()));<a name="line.1562"></a>
+<span class="sourceLineNo">1563</span>      }<a name="line.1563"></a>
+<span class="sourceLineNo">1564</span>    }<a name="line.1564"></a>
+<span class="sourceLineNo">1565</span>  }<a name="line.1565"></a>
+<span class="sourceLineNo">1566</span><a name="line.1566"></a>
+<span class="sourceLineNo">1567</span>  /**<a name="line.1567"></a>
+<span class="sourceLineNo">1568</span>   * Writes the compaction WAL record.<a name="line.1568"></a>
+<span class="sourceLineNo">1569</span>   * @param filesCompacted Files compacted (input).<a name="line.1569"></a>
+<span class="sourceLineNo">1570</span>   * @param newFiles Files from compaction.<a name="line.1570"></a>
+<span class="sourceLineNo">1571</span>   */<a name="line.1571"></a>
+<span class="sourceLineNo">1572</span>  private void writeCompactionWalRecord(Collection&lt;HStoreFile&gt; filesCompacted,<a name="line.1572"></a>
+<span class="sourceLineNo">1573</span>      Collection&lt;HStoreFile&gt; newFiles) throws IOException {<a name="line.1573"></a>
+<span class="sourceLineNo">1574</span>    if (region.getWAL() == null) {<a name="line.1574"></a>
+<span class="sourceLineNo">1575</span>      return;<a name="line.1575"></a>
+<span class="sourceLineNo">1576</span>    }<a name="line.1576"></a>
+<span class="sourceLineNo">1577</span>    List&lt;Path&gt; inputPaths =<a name="line.1577"></a>
+<span class="sourceLineNo">1578</span>        filesCompacted.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1578"></a>
+<span class="sourceLineNo">1579</span>    List&lt;Path&gt; outputPaths =<a name="line.1579"></a>
+<span class="sourceLineNo">1580</span>        newFiles.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1580"></a>
+<span class="sourceLineNo">1581</span>    RegionInfo info = this.region.getRegionInfo();<a name="line.1581"></a>
+<span class="sourceLineNo">1582</span>    CompactionDescriptor compactionDescriptor = ProtobufUtil.toCompactionDescriptor(info,<a name="line.1582"></a>
+<span class="sourceLineNo">1583</span>        getColumnFamilyDescriptor().getName(), inputPaths, outputPaths,<a name="line.1583"></a>
+<span class="sourceLineNo">1584</span>        getRegionFileSystem().getStoreDir(getColumnFamilyDescriptor().getNameAsString()));<a name="line.1584"></a>
+<span class="sourceLineNo">1585</span>    // Fix reaching into Region to get the maxWaitForSeqId.<a name="line.1585"></a>
+<span class="sourceLineNo">1586</span>    // Does this method belong in Region altogether given it is making so many references up there?<a name="line.1586"></a>
+<span class="sourceLineNo">1587</span>    // Could be Region#writeCompactionMarker(compactionDescriptor);<a name="line.1587"></a>
+<span class="sourceLineNo">1588</span>    WALUtil.writeCompactionMarker(this.region.getWAL(), this.region.getReplicationScope(),<a name="line.1588"></a>
+<span class="sourceLineNo">1589</span>        this.region.getRegionInfo(), compactionDescriptor, this.region.getMVCC());<a name="line.1589"></a>
+<span class="sourceLineNo">1590</span>  }<a name="line.1590"></a>
+<span class="sourceLineNo">1591</span><a name="line.1591"></a>
+<span class="sourceLineNo">1592</span>  void replaceStoreFiles(Collection&lt;HStoreFile&gt; compactedFiles, Collection&lt;HStoreFile&gt; result)<a name="line.1592"></a>
+<span class="sourceLineNo">1593</span>      throws IOException {<a name="line.1593"></a>
+<span class="sourceLineNo">1594</span>    this.lock.writeLock().lock();<a name="line.1594"></a>
+<span class="sourceLineNo">1595</span>    try {<a name="line.1595"></a>
+<span class="sourceLineNo">1596</span>      this.storeEngine.getStoreFileManager().addCompactionResults(compactedFiles, result);<a name="line.1596"></a>
+<span class="sourceLineNo">1597</span>      synchronized (filesCompacting) {<a name="line.1597"></a>
+<span class="sourceLineNo">1598</span>        filesCompacting.removeAll(compactedFiles);<a name="line.1598"></a>
+<span class="sourceLineNo">1599</span>      }<a name="line.1599"></a>
+<span class="sourceLineNo">1600</span><a name="line.1600"></a>
+<span class="sourceLineNo">1601</span>      // These may be null when the RS is shutting down. The space quota Chores will fix the Region<a name="line.1601"></a>
+<span class="sourceLineNo">1602</span>      // sizes later so it's not super-critical if we miss these.<a name="line.1602"></a>
+<span class="sourceLineNo">1603</span>      RegionServerServices rsServices = region.getRegionServerServices();<a name="line.1603"></a>
+<span class="sourceLineNo">1604</span>      if (rsServices != null &amp;&amp; rsServices.getRegionServerSpaceQuotaManager() != null) {<a name="line.1604"></a>
+<span class="sourceLineNo">1605</span>        updateSpaceQuotaAfterFileReplacement(<a name="line.1605"></a>
+<span class="sourceLineNo">1606</span>            rsServices.getRegionServerSpaceQuotaManager().getRegionSizeStore(), getRegionInfo(),<a name="line.1606"></a>
+<span class="sourceLineNo">1607</span>            compactedFiles, result);<a name="line.1607"></a>
+<span class="sourceLineNo">1608</span>      }<a name="line.1608"></a>
+<span class="sourceLineNo">1609</span>    } finally {<a name="line.1609"></a>
+<span class="sourceLineNo">1610</span>      this.lock.writeLock().unlock();<a name="line.1610"></a>
+<span class="sourceLineNo">1611</span>    }<a name="line.1611"></a>
+<span class="sourceLineNo">1612</span>  }<a name="line.1612"></a>
+<span class="sourceLineNo">1613</span><a name="line.1613"></a>
+<span class="sourceLineNo">1614</span>  /**<a name="line.1614"></a>
+<span class="sourceLineNo">1615</span>   * Updates the space quota usage for this region, removing the size for files compacted away<a name="line.1615"></a>
+<span class="sourceLineNo">1616</span>   * and adding in the size for new files.<a name="line.1616"></a>
+<span class="sourceLineNo">1617</span>   *<a name="line.1617"></a>
+<span class="sourceLineNo">1618</span>   * @param sizeStore The object tracking changes in region size for space quotas.<a name="line.1618"></a>
+<span class="sourceLineNo">1619</span>   * @param regionInfo The identifier for the region whose size is being updated.<a name="line.1619"></a>
+<span class="sourceLineNo">1620</span>   * @param oldFiles Files removed from this store's region.<a name="line.1620"></a>
+<span class="sourceLineNo">1621</span>   * @param newFiles Files added to this store's region.<a name="line.1621"></a>
+<span class="sourceLineNo">1622</span>   */<a name="line.1622"></a>
+<span class="sourceLineNo">1623</span>  void updateSpaceQuotaAfterFileReplacement(<a name="line.1623"></a>
+<span class="sourceLineNo">1624</span>      RegionSizeStore sizeStore, RegionInfo regionInfo, Collection&lt;HStoreFile&gt; oldFiles,<a name="line.1624"></a>
+<span class="sourceLineNo">1625</span>      Collection&lt;HStoreFile&gt; newFiles) {<a name="line.1625"></a>
+<span class="sourceLineNo">1626</span>    long delta = 0;<a name="line.1626"></a>
+<span class="sourceLineNo">1627</span>    if (oldFiles != null) {<a name="line.1627"></a>
+<span class="sourceLineNo">1628</span>      for (HStoreFile compactedFile : oldFiles) {<a name="line.1628"></a>
+<span class="sourceLineNo">1629</span>        if (compactedFile.isHFile()) {<a name="line.1629"></a>
+<span class="sourceLineNo">1630</span>          delta -= compactedFile.getReader().length();<a name="line.1630"></a>
+<span class="sourceLineNo">1631</span>        }<a name="line.1631"></a>
+<span class="sourceLineNo">1632</span>      }<a name="line.1632"></a>
+<span class="sourceLineNo">1633</span>    }<a name="line.1633"></a>
+<span class="sourceLineNo">1634</span>    if (newFiles != null) {<a name="line.1634"></a>
+<span class="sourceLineNo">1635</span>      for (HStoreFile newFile : newFiles) {<a name="line.1635"></a>
+<span class="sourceLineNo">1636</span>        if (newFile.isHFile()) {<a name="line.1636"></a>
+<span class="sourceLineNo">1637</span>          delta += newFile.getReader().length();<a name="line.1637"></a>
+<span class="sourceLineNo">1638</span>        }<a name="line.1638"></a>
+<span class="sourceLineNo">1639</span>      }<a name="line.1639"></a>
+<span class="sourceLineNo">1640</span>    }<a name="line.1640"></a>
+<span class="sourceLineNo">1641</span>    sizeStore.incrementRegionSize(regionInfo, delta);<a name="line.1641"></a>
+<span class="sourceLineNo">1642</span>  }<a name="line.1642"></a>
+<span class="sourceLineNo">1643</span><a name="line.1643"></a>
+<span class="sourceLineNo">1644</span>  /**<a name="line.1644"></a>
+<span class="sourceLineNo">1645</span>   * Log a very elaborate compaction completion message.<a name="line.1645"></a>
+<span class="sourceLineNo">1646</span>   * @param cr Request.<a name="line.1646"></a>
+<span class="sourceLineNo">1647</span>   * @param sfs Resulting files.<a name="line.1647"></a>
+<span class="sourceLineNo">1648</span>   * @param compactionStartTime Start time.<a name="line.1648"></a>
+<span class="sourceLineNo">1649</span>   */<a name="line.1649"></a>
+<span class="sourceLineNo">1650</span>  private void logCompactionEndMessage(<a name="line.1650"></a>
+<span class="sourceLineNo">1651</span>      CompactionRequestImpl cr, List&lt;HStoreFile&gt; sfs, long now, long compactionStartTime) {<a name="line.1651"></a>
+<span class="sourceLineNo">1652</span>    StringBuilder message = new StringBuilder(<a name="line.1652"></a>
+<span class="sourceLineNo">1653</span>      "Completed" + (cr.isMajor() ? " major" : "") + " compaction of "<a name="line.1653"></a>
+<span class="sourceLineNo">1654</span>      + cr.getFiles().size() + (cr.isAllFiles() ? " (all)" : "") + " file(s) in "<a name="line.1654"></a>
+<span class="sourceLineNo">1655</span>      + this + " of " + this.getRegionInfo().getShortNameToLog() + " into ");<a name="line.1655"></a>
+<span class="sourceLineNo">1656</span>    if (sfs.isEmpty()) {<a name="line.1656"></a>
+<span class="sourceLineNo">1657</span>      message.append("none, ");<a name="line.1657"></a>
+<span class="sourceLineNo">1658</span>    } else {<a name="line.1658"></a>
+<span class="sourceLineNo">1659</span>      for (HStoreFile sf: sfs) {<a name="line.1659"></a>
+<span class="sourceLineNo">1660</span>        message.append(sf.getPath().getName());<a name="line.1660"></a>
+<span class="sourceLineNo">1661</span>        message.append("(size=");<a name="line.1661"></a>
+<span class="sourceLineNo">1662</span>        message.append(TraditionalBinaryPrefix.long2String(sf.getReader().length(), "", 1));<a name="line.1662"></a>
+<span class="sourceLineNo">1663</span>        message.append("), ");<a name="line.1663"></a>
+<span class="sourceLineNo">1664</span>      }<a name="line.1664"></a>
+<span class="sourceLineNo">1665</span>    }<a name="line.1665"></a>
+<span class="sourceLineNo">1666</span>    message.append("total size for store is ")<a name="line.1666"></a>
+<span class="sourceLineNo">1667</span>      .append(StringUtils.TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1))<a name="line.1667"></a>
+<span class="sourceLineNo">1668</span>      .append(". This selection was in queue for ")<a name="line.1668"></a>
+<span class="sourceLineNo">1669</span>      .append(StringUtils.formatTimeDiff(compactionStartTime, cr.getSelectionTime()))<a name="line.1669"></a>
+<span class="sourceLineNo">1670</span>      .append(", and took ").append(StringUtils.formatTimeDiff(now, compactionStartTime))<a name="line.1670"></a>
+<span class="sourceLineNo">1671</span>      .append(" to execute.");<a name="line.1671"></a>
+<span class="sourceLineNo">1672</span>    LOG.info(message.toString());<a name="line.1672"></a>
+<span class="sourceLineNo">1673</span>    if (LOG.isTraceEnabled()) {<a name="line.1673"></a>
+<span class="sourceLineNo">1674</span>      int fileCount = storeEngine.getStoreFileManager().getStorefileCount();<a name="line.1674"></a>
+<span class="sourceLineNo">1675</span>      long resultSize = getTotalSize(sfs);<a name="line.1675"></a>
+<span class="sourceLineNo">1676</span>      String traceMessage = "COMPACTION start,end,size out,files in,files out,store size,"<a name="line.1676"></a>
+<span class="sourceLineNo">1677</span>        + "store files [" + compactionStartTime + "," + now + "," + resultSize + ","<a name="line.1677"></a>
+<span class="sourceLineNo">1678</span>          + cr.getFiles().size() + "," + sfs.size() + "," +  storeSize + "," + fileCount + "]";<a name="line.1678"></a>
+<span class="sourceLineNo">1679</span>      LOG.trace(traceMessage);<a name="line.1679"></a>
+<span class="sourceLineNo">1680</span>    }<a name="line.1680"></a>
+<span class="sourceLineNo">1681</span>  }<a name="line.1681"></a>
+<span class="sourceLineNo">1682</span><a name="line.1682"></a>
+<span class="sourceLineNo">1683</span>  /**<a name="line.1683"></a>
+<span class="sourceLineNo">1684</span>   * Call to complete a compaction. Its for the case where we find in the WAL a compaction<a name="line.1684"></a>
+<span class="sourceLineNo">1685</span>   * that was not finished.  We could find one recovering a WAL after a regionserver crash.<a name="line.1685"></a>
+<span class="sourceLineNo">1686</span>   * See HBASE-2231.<a name="line.1686"></a>
+<span class="sourceLineNo">1687</span>   */<a name="line.1687"></a>
+<span class="sourceLineNo">1688</span>  public void replayCompactionMarker(CompactionDescriptor compaction, boolean pickCompactionFiles,<a name="line.1688"></a>
+<span class="sourceLineNo">1689</span>      boolean removeFiles) throws IOException {<a name="line.1689"></a>
+<span class="sourceLineNo">1690</span>    LOG.debug("Completing compaction from the WAL marker");<a name="line.1690"></a>
+<span class="sourceLineNo">1691</span>    List&lt;String&gt; compactionInputs = compaction.getCompactionInputList();<a name="line.1691"></a>
+<span class="sourceLineNo">1692</span>    List&lt;String&gt; compactionOutputs = Lists.newArrayList(compaction.getCompactionOutputList());<a name="line.1692"></a>
+<span class="sourceLineNo">1693</span><a name="line.1693"></a>
+<span class="sourceLineNo">1694</span>    // The Compaction Marker is written after the compaction is completed,<a name="line.1694"></a>
+<span class="sourceLineNo">1695</span>    // and the files moved into the region/family folder.<a name="line.1695"></a>
+<span class="sourceLineNo">1696</span>    //<a name="line.1696"></a>
+<span class="sourceLineNo">1697</span>    // If we crash after the entry is written, we may not have removed the<a name="line.1697"></a>
+<span class="sourceLineNo">1698</span>    // input files, but the output file is present.<a name="line.1698"></a>
+<span class="sourceLineNo">1699</span>    // (The unremoved input files will be removed by this function)<a name="line.1699"></a>
+<span class="sourceLineNo">1700</span>    //<a name="line.1700"></a>
+<span class="sourceLineNo">1701</span>    // If we scan the directory and the file is not present, it can mean that:<a name="line.1701"></a>
+<span class="sourceLineNo">1702</span>    //   - The file was manually removed by the user<a name="line.1702"></a>
+<span class="sourceLineNo">1703</span>    //   - The file was removed as consequence of subsequent compaction<a name="line.1703"></a>
+<span class="sourceLineNo">1704</span>    // so, we can't do anything with the "compaction output list" because those<a name="line.1704"></a>
+<span class="sourceLineNo">1705</span>    // files have already been loaded when opening the region (by virtue of<a name="line.1705"></a>
+<span class="sourceLineNo">1706</span>    // being in the store's folder) or they may be missing due to a compaction.<a name="line.1706"></a>
+<span class="sourceLineNo">1707</span><a name="line.1707"></a>
+<span class="sourceLineNo">1708</span>    String familyName = this.getColumnFamilyName();<a name="line.1708"></a>
+<span class="sourceLineNo">1709</span>    Set&lt;String&gt; inputFiles = new HashSet&lt;&gt;();<a name="line.1709"></a>
+<span class="sourceLineNo">1710</span>    for (String compactionInput : compactionInputs) {<a name="line.1710"></a>
+<span class="sourceLineNo">1711</span>      Path inputPath = getRegionFileSystem().getStoreFilePath(familyName, compactionInput);<a name="line.1711"></a>
+<span class="sourceLineNo">1712</span>      inputFiles.add(inputPath.getName());<a name="line.1712"></a>
+<span class="sourceLineNo">1713</span>    }<a name="line.1713"></a>
+<span class="sourceLineNo">1714</span><a name="line.1714"></a>
+<span class="sourceLineNo">1715</span>    //some of the input files might already be deleted<a name="line.1715"></a>
+<span class="sourceLineNo">1716</span>    List&lt;HStoreFile&gt; inputStoreFiles = new ArrayList&lt;&gt;(compactionInputs.size());<a name="line.1716"></a>
+<span class="sourceLineNo">1717</span>    for (HStoreFile sf : this.getStorefiles()) {<a name="line.1717"></a>
+<span class="sourceLineNo">1718</span>      if (inputFiles.contains(sf.getPath().getName())) {<a name="line.1718"></a>
+<span class="sourceLineNo">1719</span>        inputStoreFiles.add(sf);<a name="line.1719"></a>
+<span class="sourceLineNo">1720</span>      }<a name="line.1720"></a>
+<span class="sourceLineNo">1721</span>    }<a name="line.1721"></a>
+<span class="sourceLineNo">1722</span><a name="line.1722"></a>
+<span class="sourceLineNo">1723</span>    // check whether we need to pick up the new files<a name="line.1723"></a>
+<span class="sourceLineNo">1724</span>    List&lt;HStoreFile&gt; outputStoreFiles = new ArrayList&lt;&gt;(compactionOutputs.size());<a name="line.1724"></a>
+<span class="sourceLineNo">1725</span><a name="line.1725"></a>
+<span class="sourceLineNo">1726</span>    if (pickCompactionFiles) {<a name="line.1726"></a>
+<span class="sourceLineNo">1727</span>      for (HStoreFile sf : this.getStorefiles()) {<a name="line.1727"></a>
+<span class="sourceLineNo">1728</span>        compactionOutputs.remove(sf.getPath().getName());<a name="line.1728"></a>
+<span class="sourceLineNo">1729</span>      }<a name="line.1729"></a>
+<span class="sourceLineNo">1730</span>      for (String compactionOutput : compactionOutputs) {<a name="line.1730"></a>
+<span class="sourceLineNo">1731</span>        StoreFileInfo storeFileInfo =<a name="line.1731"></a>
+<span class="sourceLineNo">1732</span>            getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), compactionOutput);<a name="line.1732"></a>
+<span class="sourceLineNo">1733</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.1733"></a>
+<span class="sourceLineNo">1734</span>        outputStoreFiles.add(storeFile);<a name="line.1734"></a>
+<span class="sourceLineNo">1735</span>      }<a name="line.1735"></a>
+<span class="sourceLineNo">1736</span>    }<a name="line.1736"></a>
+<span class="sourceLineNo">1737</span><a name="line.1737"></a>
+<span class="sourceLineNo">1738</span>    if (!inputStoreFiles.isEmpty() || !outputStoreFiles.isEmpty()) {<a name="line.1738"></a>
+<span class="sourceLineNo">1739</span>      LOG.info("Replaying compaction marker, replacing input files: " +<a name="line.1739"></a>
+<span class="sourceLineNo">1740</span>          inputStoreFiles + " with output files : " + outputStoreFiles);<a name="line.1740"></a>
+<span class="sourceLineNo">1741</span>      this.replaceStoreFiles(inputStoreFiles, outputStoreFiles);<a name="line.1741"></a>
+<span class="sourceLineNo">1742</span>      this.refreshStoreSizeAndTotalBytes();<a name="line.1742"></a>
+<span class="sourceLineNo">1743</span>    }<a name="line.1743"></a>
+<span class="sourceLineNo">1744</span>  }<a name="line.1744"></a>
+<span class="sourceLineNo">1745</span><a name="line.1745"></a>
+<span class="sourceLineNo">1746</span>  @Override<a name="line.1746"></a>
+<span class="sourceLineNo">1747</span>  public boolean hasReferences() {<a name="line.1747"></a>
+<span class="sourceLineNo">1748</span>    // Grab the read lock here, because we need to ensure that: only when the atomic<a name="line.1748"></a>
+<span class="sourceLineNo">1749</span>    // replaceStoreFiles(..) finished, we can get all the complete store file list.<a name="line.1749"></a>
+<span class="sourceLineNo">1750</span>    this.lock.readLock().lock();<a name="line.1750"></a>
+<span class="sourceLineNo">1751</span>    try {<a name="line.1751"></a>
+<span class="sourceLineNo">1752</span>      // Merge the current store files with compacted files here due to HBASE-20940.<a name="line.1752"></a>
+<span class="sourceLineNo">1753</span>      Collection&lt;HStoreFile&gt; allStoreFiles = new ArrayList&lt;&gt;(getStorefiles());<a name="line.1753"></a>
+<span class="sourceLineNo">1754</span>      allStoreFiles.addAll(getCompactedFiles());<a name="line.1754"></a>
+<span class="sourceLineNo">1755</span>      return StoreUtils.hasReferences(allStoreFiles);<a name="line.1755"></a>
+<span class="sourceLineNo">1756</span>    } finally {<a name="line.1756"></a>
+<span class="sourceLineNo">1757</span>      this.lock.readLock().unlock();<a name="line.1757"></a>
+<span class="sourceLineNo">1758</span>    }<a name="line.1758"></a>
+<span class="sourceLineNo">1759</span>  }<a name="line.1759"></a>
+<span class="sourceLineNo">1760</span><a name="line.1760"></a>
+<span class="sourceLineNo">1761</span>  /**<a name="line.1761"></a>
+<span class="sourceLineNo">1762</span>   * getter for CompactionProgress object<a name="line.1762"></a>
+<span class="sourceLineNo">1763</span>   * @return CompactionProgress object; can be null<a name="line.1763"></a>
+<span class="sourceLineNo">1764</span>   */<a name="line.1764"></a>
+<span class="sourceLineNo">1765</span>  public CompactionProgress getCompactionProgress() {<a name="line.1765"></a>
+<span class="sourceLineNo">1766</span>    return this.storeEngine.getCompactor().getProgress();<a name="line.1766"></a>
+<span class="sourceLineNo">1767</span>  }<a name="line.1767"></a>
+<span class="sourceLineNo">1768</span><a name="line.1768"></a>
+<span class="sourceLineNo">1769</span>  @Override<a name="line.1769"></a>
+<span class="sourceLineNo">1770</span>  public boolean shouldPerformMajorCompaction() throws IOException {<a name="line.1770"></a>
+<span class="sourceLineNo">1771</span>    for (HStoreFile sf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1771"></a>
+<span class="sourceLineNo">1772</span>      // TODO: what are these reader checks all over the place?<a name="line.1772"></a>
+<span class="sourceLineNo">1773</span>      if (sf.getReader() == null) {<a name="line.1773"></a>
+<span class="sourceLineNo">1774</span>        LOG.debug("StoreFile {} has null Reader", sf);<a name="line.1774"></a>
+<span class="sourceLineNo">1775</span>        return false;<a name="line.1775"></a>
+<span class="sourceLineNo">1776</span>      }<a name="line.1776"></a>
+<span class="sourceLineNo">1777</span>    }<a name="line.1777"></a>
+<span class="sourceLineNo">1778</span>    return storeEngine.getCompactionPolicy().shouldPerformMajorCompaction(<a name="line.1778"></a>
+<span class="sourceLineNo">1779</span>        this.storeEngine.getStoreFileManager().getStorefiles());<a name="line.1779"></a>
+<span class="sourceLineNo">1780</span>  }<a name="line.1780"></a>
+<span class="sourceLineNo">1781</span><a name="line.1781"></a>
+<span class="sourceLineNo">1782</span>  public Optional&lt;CompactionContext&gt; requestCompaction() throws IOException {<a name="line.1782"></a>
+<span class="sourceLineNo">1783</span>    return requestCompaction(NO_PRIORITY, CompactionLifeCycleTracker.DUMMY, null);<a name="line.1783"></a>
+<span class="sourceLineNo">1784</span>  }<a name="line.1784"></a>
+<span class="sourceLineNo">1785</span><a name="line.1785"></a>
+<span class="sourceLineNo">1786</span>  public Optional&lt;CompactionContext&gt; requestCompaction(int priority,<a name="line.1786"></a>
+<span class="sourceLineNo">1787</span>      CompactionLifeCycleTracker tracker, User user) throws IOException {<a name="line.1787"></a>
+<span class="sourceLineNo">1788</span>    // don't even select for compaction if writes are disabled<a name="line.1788"></a>
+<span class="sourceLineNo">1789</span>    if (!this.areWritesEnabled()) {<a name="line.1789"></a>
+<span class="sourceLineNo">1790</span>      return Optional.empty();<a name="line.1790"></a>
+<span class="sourceLineNo">1791</span>    }<a name="line.1791"></a>
+<span class="sourceLineNo">1792</span>    // Before we do compaction, try to get rid of unneeded files to simplify things.<a name="line.1792"></a>
+<span class="sourceLineNo">1793</span>    removeUnneededFiles();<a name="line.1793"></a>
+<span class="sourceLineNo">1794</span><a name="line.1794"></a>
+<span class="sourceLineNo">1795</span>    final CompactionContext compaction = storeEngine.createCompaction();<a name="line.1795"></a>
+<span class="sourceLineNo">1796</span>    CompactionRequestImpl request = null;<a name="line.1796"></a>
+<span class="sourceLineNo">1797</span>    this.lock.readLock().lock();<a name="line.1797"></a>
+<span class="sourceLineNo">1798</span>    try {<a name="line.1798"></a>
+<span class="sourceLineNo">1799</span>      synchronized (filesCompacting) {<a name="line.1799"></a>
+<span class="sourceLineNo">1800</span>        // First, see if coprocessor would want to override selection.<a name="line.1800"></a>
+<span class="sourceLineNo">1801</span>        if (this.getCoprocessorHost() != null) {<a name="line.1801"></a>
+<span class="sourceLineNo">1802</span>          final List&lt;HStoreFile&gt; candidatesForCoproc = compaction.preSelect(this.filesCompacting);<a name="line.1802"></a>
+<span class="sourceLineNo">1803</span>          boolean override = getCoprocessorHost().preCompactSelection(this,<a name="line.1803"></a>
+<span class="sourceLineNo">1804</span>              candidatesForCoproc, tracker, user);<a name="line.1804"></a>
+<span class="sourceLineNo">1805</span>          if (override) {<a name="line.1805"></a>
+<span class="sourceLineNo">1806</span>            // Coprocessor is overriding normal file selection.<a name="line.1806"></a>
+<span class="sourceLineNo">1807</span>            compaction.forceSelect(new CompactionRequestImpl(candidatesForCoproc));<a name="line.1807"></a>
+<span class="sourceLineNo">1808</span>          }<a name="line.1808"></a>
+<span class="sourceLineNo">1809</span>        }<a name="line.1809"></a>
+<span class="sourceLineNo">1810</span><a name="line.1810"></a>
+<span class="sourceLineNo">1811</span>        // Normal case - coprocessor is not overriding file selection.<a name="line.1811"></a>
+<span class="sourceLineNo">1812</span>        if (!compaction.hasSelection()) {<a name="line.1812"></a>
+<span class="sourceLineNo">1813</span>          boolean isUserCompaction = priority == Store.PRIORITY_USER;<a name="line.1813"></a>
+<span class="sourceLineNo">1814</span>          boolean mayUseOffPeak = offPeakHours.isOffPeakHour() &amp;&amp;<a name="line.1814"></a>
+<span class="sourceLineNo">1815</span>              offPeakCompactionTracker.compareAndSet(false, true);<a name="line.1815"></a>
+<span class="sourceLineNo">1816</span>          try {<a name="line.1816"></a>
+<span class="sourceLineNo">1817</span>            compaction.select(this.filesCompacting, isUserCompaction,<a name="line.1817"></a>
+<span class="sourceLineNo">1818</span>              mayUseOffPeak, forceMajor &amp;&amp; filesCompacting.isEmpty());<a name="line.1818"></a>
+<span class="sourceLineNo">1819</span>          } catch (IOException e) {<a name="line.1819"></a>
+<span class="sourceLineNo">1820</span>            if (mayUseOffPeak) {<a name="line.1820"></a>
+<span class="sourceLineNo">1821</span>              offPeakCompactionTracker.set(false);<a name="line.1821"></a>
+<span class="sourceLineNo">1822</span>            }<a name="line.1822"></a>
+<span class="sourceLineNo">1823</span>            throw e;<a name="line.1823"></a>
+<span class="sourceLineNo">1824</span>          }<a name="line.1824"></a>
+<span class="sourceLineNo">1825</span>          assert compaction.hasSelection();<a name="line.1825"></a>
+<span class="sourceLineNo">1826</span>          if (mayUseOffPeak &amp;&amp; !compaction.getRequest().isOffPeak()) {<a name="line.1826"></a>
+<span class="sourceLineNo">1827</span>            // Compaction policy doesn't want to take advantage of off-peak.<a name="line.1827"></a>
+<span class="sourceLineNo">1828</span>            offPeakCompactionTracker.set(false);<a name="line.1828"></a>
+<span class="sourceLineNo">1829</span>          }<a name="line.1829"></a>
+<span class="sourceLineNo">1830</span>        }<a name="line.1830"></a>
+<span class="sourceLineNo">1831</span>        if (this.getCoprocessorHost() != null) {<a name="line.1831"></a>
+<span class="sourceLineNo">1832</span>          this.getCoprocessorHost().postCompactSelection(<a name="line.1832"></a>
+<span class="sourceLineNo">1833</span>              this, ImmutableList.copyOf(compaction.getRequest().getFiles()), tracker,<a name="line.1833"></a>
+<span class="sourceLineNo">1834</span>              compaction.getRequest(), user);<a name="line.1834"></a>
+<span class="sourceLineNo">1835</span>        }<a name="line.1835"></a>
+<span class="sourceLineNo">1836</span>        // Finally, we have the resulting files list. Check if we have any files at all.<a name="line.1836"></a>
+<span class="sourceLineNo">1837</span>        request = compaction.getRequest();<a name="line.1837"></a>
+<span class="sourceLineNo">1838</span>        Collection&lt;HStoreFile&gt; selectedFiles = request.getFiles();<a name="line.1838"></a>
+<span class="sourceLineNo">1839</span>        if (selectedFiles.isEmpty()) {<a name="line.1839"></a>
+<span class="sourceLineNo">1840</span>          return Optional.empty();<a name="line.1840"></a>
+<span class="sourceLineNo">1841</span>        }<a name="line.1841"></a>
+<span class="sourceLineNo">1842</span><a name="line.1842"></a>
+<span class="sourceLineNo">1843</span>        addToCompactingFiles(selectedFiles);<a name="line.1843"></a>
+<span class="sourceLineNo">1844</span><a name="line.1844"></a>
+<span class="sourceLineNo">1845</span>        // If we're enqueuing a major, clear the force flag.<a name="line.1845"></a>
+<span class="sourceLineNo">1846</span>        this.forceMajor = this.forceMajor &amp;&amp; !request.isMajor();<a name="line.1846"></a>
+<span class="sourceLineNo">1847</span><a name="line.1847"></a>
+<span class="sourceLineNo">1848</span>        // Set common request properties.<a name="line.1848"></a>
+<span class="sourceLineNo">1849</span>        // Set priority, either override value supplied by caller or from store.<a name="line.1849"></a>
+<span class="sourceLineNo">1850</span>        final int compactionPriority =<a name="line.1850"></a>
+<span class="sourceLineNo">1851</span>          (priority != Store.NO_PRIORITY) ? priority : getCompactPriority();<a name="line.1851"></a>
+<span class="sourceLineNo">1852</span>        request.setPriority(compactionPriority);<a name="line.1852"></a>
+<span class="sourceLineNo">1853</span><a name="line.1853"></a>
+<span class="sourceLineNo">1854</span>        if (request.isAfterSplit()) {<a name="line.1854"></a>
+<span class="sourceLineNo">1855</span>          // If the store belongs to recently splitted daughter regions, better we consider<a name="line.1855"></a>
+<span class="sourceLineNo">1856</span>          // them with the higher priority in the compaction queue.<a name="line.1856"></a>
+<span class="sourceLineNo">1857</span>          // Override priority if it is lower (higher int value) than<a name="line.1857"></a>
+<span class="sourceLineNo">1858</span>          // SPLIT_REGION_COMPACTION_PRIORITY<a name="line.1858"></a>
+<span class="sourceLineNo">1859</span>          final int splitHousekeepingPriority =<a name="line.1859"></a>
+<span class="sourceLineNo">1860</span>            Math.min(compactionPriority, SPLIT_REGION_COMPACTION_PRIORITY);<a name="line.1860"></a>
+<span class="sourceLineNo">1861</span>          request.setPriority(splitHousekeepingPriority);<a name="line.1861"></a>
+<span class="sourceLineNo">1862</span>          LOG.info("Keeping/Overriding Compaction request priority to {} for CF {} since it"<a name="line.1862"></a>
+<span class="sourceLineNo">1863</span>              + " belongs to recently split daughter region {}", splitHousekeepingPriority,<a name="line.1863"></a>
+<span class="sourceLineNo">1864</span>            this.getColumnFamilyName(), getRegionInfo().getRegionNameAsString());<a name="line.1864"></a>
+<span class="sourceLineNo">1865</span>        }<a name="line.1865"></a>
+<span class="sourceLineNo">1866</span>        request.setDescription(getRegionInfo().getRegionNameAsString(), getColumnFamilyName());<a name="line.1866"></a>
+<span class="sourceLineNo">1867</span>        request.setTracker(tracker);<a name="line.1867"></a>
+<span class="sourceLineNo">1868</span>      }<a name="line.1868"></a>
+<span class="sourceLineNo">1869</span>    } finally {<a name="line.1869"></a>
+<span class="sourceLineNo">1870</span>      this.lock.readLock().unlock();<a name="line.1870"></a>
+<span class="sourceLineNo">1871</span>    }<a name="line.1871"></a>
+<span class="sourceLineNo">1872</span><a name="line.1872"></a>
+<span class="sourceLineNo">1873</span>    if (LOG.isDebugEnabled()) {<a name="line.1873"></a>
+<span class="sourceLineNo">1874</span>      LOG.debug(this + " is initiating " + (request.isMajor() ? "major" : "minor") + " compaction"<a name="line.1874"></a>
+<span class="sourceLineNo">1875</span>          + (request.isAllFiles() ? " (all files)" : ""));<a name="line.1875"></a>
+<span class="sourceLineNo">1876</span>    }<a name="line.1876"></a>
+<span class="sourceLineNo">1877</span>    this.region.reportCompactionRequestStart(request.isMajor());<a name="line.1877"></a>
+<span class="sourceLineNo">1878</span>    return Optional.of(compaction);<a name="line.1878"></a>
+<span class="sourceLineNo">1879</span>  }<a name="line.1879"></a>
+<span class="sourceLineNo">1880</span><a name="line.1880"></a>
+<span class="sourceLineNo">1881</span>  /** Adds the files to compacting files. filesCompacting must be locked. */<a name="line.1881"></a>
+<span class="sourceLineNo">1882</span>  private void addToCompactingFiles(Collection&lt;HStoreFile&gt; filesToAdd) {<a name="line.1882"></a>
+<span class="sourceLineNo">1883</span>    if (CollectionUtils.isEmpty(filesToAdd)) {<a name="line.1883"></a>
+<span class="sourceLineNo">1884</span>      return;<a name="line.1884"></a>
+<span class="sourceLineNo">1885</span>    }<a name="line.1885"></a>
+<span class="sourceLineNo">1886</span>    // Check that we do not try to compact the same StoreFile twice.<a name="line.1886"></a>
+<span class="sourceLineNo">1887</span>    if (!Collections.disjoint(filesCompacting, filesToAdd)) {<a name="line.1887"></a>
+<span class="sourceLineNo">1888</span>      Preconditions.checkArgument(false, "%s overlaps with %s", filesToAdd, filesCompacting);<a name="line.1888"></a>
+<span class="sourceLineNo">1889</span>    }<a name="line.1889"></a>
+<span class="sourceLineNo">1890</span>    filesCompacting.addAll(filesToAdd);<a name="line.1890"></a>
+<span class="sourceLineNo">1891</span>    Collections.sort(filesCompacting, storeEngine.getStoreFileManager().getStoreFileComparator());<a name="line.1891"></a>
+<span class="sourceLineNo">1892</span>  }<a name="line.1892"></a>
+<span class="sourceLineNo">1893</span><a name="line.1893"></a>
+<span class="sourceLineNo">1894</span>  private void removeUnneededFiles() throws IOException {<a name="line.1894"></a>
+<span class="sourceLineNo">1895</span>    if (!conf.getBoolean("hbase.store.delete.expired.storefile", true)) {<a name="line.1895"></a>
+<span class="sourceLineNo">1896</span>      return;<a name="line.1896"></a>
+<span class="sourceLineNo">1897</span>    }<a name="line.1897"></a>
+<span class="sourceLineNo">1898</span>    if (getColumnFamilyDescriptor().getMinVersions() &gt; 0) {<a name="line.1898"></a>
+<span class="sourceLineNo">1899</span>      LOG.debug("Skipping expired store file removal due to min version of {} being {}",<a name="line.1899"></a>
+<span class="sourceLineNo">1900</span>          this, getColumnFamilyDescriptor().getMinVersions());<a name="line.1900"></a>
+<span class="sourceLineNo">1901</span>      return;<a name="line.1901"></a>
+<span class="sourceLineNo">1902</span>    }<a name="line.1902"></a>
+<span class="sourceLineNo">1903</span>    this.lock.readLock().lock();<a name="line.1903"></a>
+<span class="sourceLineNo">1904</span>    Collection&lt;HStoreFile&gt; delSfs = null;<a name="line.1904"></a>
+<span class="sourceLineNo">1905</span>    try {<a name="line.1905"></a>
+<span class="sourceLineNo">1906</span>      synchronized (filesCompacting) {<a name="line.1906"></a>
+<span class="sourceLineNo">1907</span>        long cfTtl = getStoreFileTtl();<a name="line.1907"></a>
+<span class="sourceLineNo">1908</span>        if (cfTtl != Long.MAX_VALUE) {<a name="line.1908"></a>
+<span class="sourceLineNo">1909</span>          delSfs = storeEngine.getStoreFileManager().getUnneededFiles(<a name="line.1909"></a>
+<span class="sourceLineNo">1910</span>              EnvironmentEdgeManager.currentTime() - cfTtl, filesCompacting);<a name="line.1910"></a>
+<span class="sourceLineNo">1911</span>          addToCompactingFiles(delSfs);<a name="line.1911"></a>
+<span class="sourceLineNo">1912</span>        }<a name="line.1912"></a>
+<span class="sourceLineNo">1913</span>      }<a name="line.1913"></a>
+<span class="sourceLineNo">1914</span>    } finally {<a name="line.1914"></a>
+<span class="sourceLineNo">1915</span>      this.lock.readLock().unlock();<a name="line.1915"></a>
+<span class="sourceLineNo">1916</span>    }<a name="line.1916"></a>
+<span class="sourceLineNo">1917</span><a name="line.1917"></a>
+<span class="sourceLineNo">1918</span>    if (CollectionUtils.isEmpty(delSfs)) {<a name="line.1918"></a>
+<span class="sourceLineNo">1919</span>      return;<a name="line.1919"></a>
+<span class="sourceLineNo">1920</span>    }<a name="line.1920"></a>
+<span class="sourceLineNo">1921</span><a name="line.1921"></a>
+<span class="sourceLineNo">1922</span>    Collection&lt;HStoreFile&gt; newFiles = Collections.emptyList(); // No new files.<a name="line.1922"></a>
+<span class="sourceLineNo">1923</span>    writeCompactionWalRecord(delSfs, newFiles);<a name="line.1923"></a>
+<span class="sourceLineNo">1924</span>    replaceStoreFiles(delSfs, newFiles);<a name="line.1924"></a>
+<span class="sourceLineNo">1925</span>    refreshStoreSizeAndTotalBytes();<a name="line.1925"></a>
+<span class="sourceLineNo">1926</span>    LOG.info("Completed removal of " + delSfs.size() + " unnecessary (expired) file(s) in "<a name="line.1926"></a>
+<span class="sourceLineNo">1927</span>        + this + "; total size is "<a name="line.1927"></a>
+<span class="sourceLineNo">1928</span>        + TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1));<a name="line.1928"></a>
+<span class="sourceLineNo">1929</span>  }<a name="line.1929"></a>
+<span class="sourceLineNo">1930</span><a name="line.1930"></a>
+<span class="sourceLineNo">1931</span>  public void cancelRequestedCompaction(CompactionContext compaction) {<a name="line.1931"></a>
+<span class="sourceLineNo">1932</span>    finishCompactionRequest(compaction.getRequest());<a name="line.1932"></a>
+<span class="sourceLineNo">1933</span>  }<a name="line.1933"></a>
+<span class="sourceLineNo">1934</span><a name="line.1934"></a>
+<span class="sourceLineNo">1935</span>  protected void finishCompactionRequest(CompactionRequestImpl cr) {<a name="line.1935"></a>
+<span class="sourceLineNo">1936</span>    this.region.reportCompactionRequestEnd(cr.isMajor(), cr.getFiles().size(), cr.getSize());<a name="line.1936"></a>
+<span class="sourceLineNo">1937</span>    if (cr.isOffPeak()) {<a name="line.1937"></a>
+<span class="sourceLineNo">1938</span>      offPeakCompactionTracker.set(false);<a name="line.1938"></a>
+<span class="sourceLineNo">1939</span>      cr.setOffPeak(false);<a name="line.1939"></a>
+<span class="sourceLineNo">1940</span>    }<a name="line.1940"></a>
+<span class="sourceLineNo">1941</span>    synchronized (filesCompacting) {<a name="line.1941"></a>
+<span class="sourceLineNo">1942</span>      filesCompacting.removeAll(cr.getFiles());<a name="line.1942"></a>
+<span class="sourceLineNo">1943</span>    }<a name="line.1943"></a>
+<span class="sourceLineNo">1944</span>  }<a name="line.1944"></a>
+<span class="sourceLineNo">1945</span><a name="line.1945"></a>
+<span class="sourceLineNo">1946</span>  /**<a name="line.1946"></a>
+<span class="sourceLineNo">1947</span>   * Validates a store file by opening and closing it. In HFileV2 this should not be an expensive<a name="line.1947"></a>
+<span class="sourceLineNo">1948</span>   * operation.<a name="line.1948"></a>
+<span class="sourceLineNo">1949</span>   * @param path the path to the store file<a name="line.1949"></a>
+<span class="sourceLineNo">1950</span>   */<a name="line.1950"></a>
+<span class="sourceLineNo">1951</span>  private void validateStoreFile(Path path) throws IOException {<a name="line.1951"></a>
+<span class="sourceLineNo">1952</span>    HStoreFile storeFile = null;<a name="line.1952"></a>
+<span class="sourceLineNo">1953</span>    try {<a name="line.1953"></a>
+<span class="sourceLineNo">1954</span>      storeFile = createStoreFileAndReader(path);<a name="line.1954"></a>
+<span class="sourceLineNo">1955</span>    } catch (IOException e) {<a name="line.1955"></a>
+<span class="sourceLineNo">1956</span>      LOG.error("Failed to open store file : {}, keeping it in tmp location", path, e);<a name="line.1956"></a>
+<span class="sourceLineNo">1957</span>      throw e;<a name="line.1957"></a>
+<span class="sourceLineNo">1958</span>    } finally {<a name="line.1958"></a>
+<span class="sourceLineNo">1959</span>      if (storeFile != null) {<a name="line.1959"></a>
+<span class="sourceLineNo">1960</span>        storeFile.closeStoreFile(false);<a name="line.1960"></a>
+<span class="sourceLineNo">1961</span>      }<a name="line.1961"></a>
+<span class="sourceLineNo">1962</span>    }<a name="line.1962"></a>
+<span class="sourceLineNo">1963</span>  }<a name="line.1963"></a>
+<span class="sourceLineNo">1964</span><a name="line.1964"></a>
+<span class="sourceLineNo">1965</span>  /**<a name="line.1965"></a>
+<span class="sourceLineNo">1966</span>   * Update counts.<a name="line.1966"></a>
+<span class="sourceLineNo">1967</span>   */<a name="line.1967"></a>
+<span class="sourceLineNo">1968</span>  protected void refreshStoreSizeAndTotalBytes()<a name="line.1968"></a>
+<span class="sourceLineNo">1969</span>    throws IOException {<a name="line.1969"></a>
+<span class="sourceLineNo">1970</span>    this.storeSize.set(0L);<a name="line.1970"></a>
+<span class="sourceLineNo">1971</span>    this.totalUncompressedBytes.set(0L);<a name="line.1971"></a>
+<span class="sourceLineNo">1972</span>    for (HStoreFile hsf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1972"></a>
+<span class="sourceLineNo">1973</span>      StoreFileReader r = hsf.getReader();<a name="line.1973"></a>
+<span class="sourceLineNo">1974</span>      if (r == null) {<a name="line.1974"></a>
+<span class="sourceLineNo">1975</span>        LOG.warn("StoreFile {} has a null Reader", hsf);<a name="line.1975"></a>
+<span class="sourceLineNo">1976</span>        continue;<a name="line.1976"></a>
+<span class="sourceLineNo">1977</span>      }<a name="line.1977"></a>
+<span class="sourceLineNo">1978</span>      this.storeSize.addAndGet(r.length());<a name="line.1978"></a>
+<span class="sourceLineNo">1979</span>      this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.1979"></a>
+<span class="sourceLineNo">1980</span>    }<a name="line.1980"></a>
+<span class="sourceLineNo">1981</span>  }<a name="line.1981"></a>
+<span class="sourceLineNo">1982</span><a name="line.1982"></a>
+<span class="sourceLineNo">1983</span>  /*<a name="line.1983"></a>
+<span class="sourceLineNo">1984</span>   * @param wantedVersions How many versions were asked for.<a name="line.1984"></a>
+<span class="sourceLineNo">1985</span>   * @return wantedVersions or this families' {@link HConstants#VERSIONS}.<a name="line.1985"></a>
+<span class="sourceLineNo">1986</span>   */<a name="line.1986"></a>
+<span class="sourceLineNo">1987</span>  int versionsToReturn(final int wantedVersions) {<a name="line.1987"></a>
+<span class="sourceLineNo">1988</span>    if (wantedVersions &lt;= 0) {<a name="line.1988"></a>
+<span class="sourceLineNo">1989</span>      throw new IllegalArgumentException("Number of versions must be &gt; 0");<a name="line.1989"></a>
+<span class="sourceLineNo">1990</span>    }<a name="line.1990"></a>
+<span class="sourceLineNo">1991</span>    // Make sure we do not return more than maximum versions for this store.<a name="line.1991"></a>
+<span class="sourceLineNo">1992</span>    int maxVersions = getColumnFamilyDescriptor().getMaxVersions();<a name="line.1992"></a>
+<span class="sourceLineNo">1993</span>    return wantedVersions &gt; maxVersions ? maxVersions: wantedVersions;<a name="line.1993"></a>
+<span class="sourceLineNo">1994</span>  }<a name="line.1994"></a>
+<span class="sourceLineNo">1995</span><a name="line.1995"></a>
+<span class="sourceLineNo">1996</span>  @Override<a name="line.1996"></a>
+<span class="sourceLineNo">1997</span>  public boolean canSplit() {<a name="line.1997"></a>
+<span class="sourceLineNo">1998</span>    // Not split-able if we find a reference store file present in the store.<a name="line.1998"></a>
+<span class="sourceLineNo">1999</span>    boolean result = !hasReferences();<a name="line.1999"></a>
+<span class="sourceLineNo">2000</span>    if (!result) {<a name="line.2000"></a>
+<span class="sourceLineNo">2001</span>      LOG.trace("Not splittable; has references: {}", this);<a name="line.2001"></a>
+<span class="sourceLineNo">2002</span>    }<a name="line.2002"></a>
+<span class="sourceLineNo">2003</span>    return result;<a name="line.2003"></a>
+<span class="sourceLineNo">2004</span>  }<a name="line.2004"></a>
+<span class="sourceLineNo">2005</span><a name="line.2005"></a>
+<span class="sourceLineNo">2006</span>  /**<a name="line.2006"></a>
+<span class="sourceLineNo">2007</span>   * Determines if Store should be split.<a name="line.2007"></a>
+<span class="sourceLineNo">2008</span>   */<a name="line.2008"></a>
+<span class="sourceLineNo">2009</span>  public Optional&lt;byte[]&gt; getSplitPoint() {<a name="line.2009"></a>
+<span class="sourceLineNo">2010</span>    this.lock.readLock().lock();<a name="line.2010"></a>
+<span class="sourceLineNo">2011</span>    try {<a name="line.2011"></a>
+<span class="sourceLineNo">2012</span>      // Should already be enforced by the split policy!<a name="line.2012"></a>
+<span class="sourceLineNo">2013</span>      assert !this.getRegionInfo().isMetaRegion();<a name="line.2013"></a>
+<span class="sourceLineNo">2014</span>      // Not split-able if we find a reference store file present in the store.<a name="line.2014"></a>
+<span class="sourceLineNo">2015</span>      if (hasReferences()) {<a name="line.2015"></a>
+<span class="sourceLineNo">2016</span>        LOG.trace("Not splittable; has references: {}", this);<a name="line.2016"></a>
+<span class="sourceLineNo">2017</span>        return Optional.empty();<a name="line.2017"></a>
+<span class="sourceLineNo">2018</span>      }<a name="line.2018"></a>
+<span class="sourceLineNo">2019</span>      return this.storeEngine.getStoreFileManager().getSplitPoint();<a name="line.2019"></a>
+<span class="sourceLineNo">2020</span>    } catch(IOException e) {<a name="line.2020"></a>
+<span class="sourceLineNo">2021</span>      LOG.warn("Failed getting store size for {}", this, e);<a name="line.2021"></a>
+<span class="sourceLineNo">2022</span>    } finally {<a name="line.2022"></a>
+<span class="sourceLineNo">2023</span>      this.lock.readLock().unlock();<a name="line.2023"></a>
+<span class="sourceLineNo">2024</span>    }<a name="line.2024"></a>
+<span class="sourceLineNo">2025</span>    return Optional.empty();<a name="line.2025"></a>
+<span class="sourceLineNo">2026</span>  }<a name="line.2026"></a>
+<span class="sourceLineNo">2027</span><a name="line.2027"></a>
+<span class="sourceLineNo">2028</span>  @Override<a name="line.2028"></a>
+<span class="sourceLineNo">2029</span>  public long getLastCompactSize() {<a name="line.2029"></a>
+<span class="sourceLineNo">2030</span>    return this.lastCompactSize;<a name="line.2030"></a>
+<span class="sourceLineNo">2031</span>  }<a name="line.2031"></a>
+<span class="sourceLineNo">2032</span><a name="line.2032"></a>
+<span class="sourceLineNo">2033</span>  @Override<a name="line.2033"></a>
+<span class="sourceLineNo">2034</span>  public long getSize() {<a name="line.2034"></a>
+<span class="sourceLineNo">2035</span>    return storeSize.get();<a name="line.2035"></a>
+<span class="sourceLineNo">2036</span>  }<a name="line.2036"></a>
+<span class="sourceLineNo">2037</span><a name="line.2037"></a>
+<span class="sourceLineNo">2038</span>  public void triggerMajorCompaction() {<a name="line.2038"></a>
+<span class="sourceLineNo">2039</span>    this.forceMajor = true;<a name="line.2039"></a>
+<span class="sourceLineNo">2040</span>  }<a name="line.2040"></a>
+<span class="sourceLineNo">2041</span><a name="line.2041"></a>
+<span class="sourceLineNo">2042</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2042"></a>
+<span class="sourceLineNo">2043</span>  // File administration<a name="line.2043"></a>
+<span class="sourceLineNo">2044</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2044"></a>
+<span class="sourceLineNo">2045</span><a name="line.2045"></a>
+<span class="sourceLineNo">2046</span>  /**<a name="line.2046"></a>
+<span class="sourceLineNo">2047</span>   * Return a scanner for both the memstore and the HStore files. Assumes we are not in a<a name="line.2047"></a>
+<span class="sourceLineNo">2048</span>   * compaction.<a name="line.2048"></a>
+<span class="sourceLineNo">2049</span>   * @param scan Scan to apply when scanning the stores<a name="line.2049"></a>
+<span class="sourceLineNo">2050</span>   * @param targetCols columns to scan<a name="line.2050"></a>
+<span class="sourceLineNo">2051</span>   * @return a scanner over the current key values<a name="line.2051"></a>
+<span class="sourceLineNo">2052</span>   * @throws IOException on failure<a name="line.2052"></a>
+<span class="sourceLineNo">2053</span>   */<a name="line.2053"></a>
+<span class="sourceLineNo">2054</span>  public KeyValueScanner getScanner(Scan scan, final NavigableSet&lt;byte[]&gt; targetCols, long readPt)<a name="line.2054"></a>
+<span class="sourceLineNo">2055</span>      throws IOException {<a name="line.2055"></a>
+<span class="sourceLineNo">2056</span>    lock.readLock().lock();<a name="line.2056"></a>
+<span class="sourceLineNo">2057</span>    try {<a name="line.2057"></a>
+<span class="sourceLineNo">2058</span>      ScanInfo scanInfo;<a name="line.2058"></a>
+<span class="sourceLineNo">2059</span>      if (this.getCoprocessorHost() != null) {<a name="line.2059"></a>
+<span class="sourceLineNo">2060</span>        scanInfo = this.getCoprocessorHost().preStoreScannerOpen(this, scan);<a name="line.2060"></a>
+<span class="sourceLineNo">2061</span>      } else {<a name="line.2061"></a>
+<span class="sourceLineNo">2062</span>        scanInfo = getScanInfo();<a name="line.2062"></a>
+<span class="sourceLineNo">2063</span>      }<a name="line.2063"></a>
+<span class="sourceLineNo">2064</span>      return createScanner(scan, scanInfo, targetCols, readPt);<a name="line.2064"></a>
+<span class="sourceLineNo">2065</span>    } finally {<a name="line.2065"></a>
+<span class="sourceLineNo">2066</span>      lock.readLock().unlock();<a name="line.2066"></a>
+<span class="sourceLineNo">2067</span>    }<a name="line.2067"></a>
+<span class="sourceLineNo">2068</span>  }<a name="line.2068"></a>
+<span class="sourceLineNo">2069</span><a name="line.2069"></a>
+<span class="sourceLineNo">2070</span>  // HMobStore will override this method to return its own implementation.<a name="line.2070"></a>
+<span class="sourceLineNo">2071</span>  protected KeyValueScanner createScanner(Scan scan, ScanInfo scanInfo,<a name="line.2071"></a>
+<span class="sourceLineNo">2072</span>      NavigableSet&lt;byte[]&gt; targetCols, long readPt) throws IOException {<a name="line.2072"></a>
+<span class="sourceLineNo">2073</span>    return scan.isReversed() ? new ReversedStoreScanner(this, scanInfo, scan, targetCols, readPt)<a name="line.2073"></a>
+<span class="sourceLineNo">2074</span>        : new StoreScanner(this, scanInfo, scan, targetCols, readPt);<a name="line.2074"></a>
+<span class="sourceLineNo">2075</span>  }<a name="line.2075"></a>
+<span class="sourceLineNo">2076</span><a name="line.2076"></a>
+<span class="sourceLineNo">2077</span>  /**<a name="line.2077"></a>
+<span class="sourceLineNo">2078</span>   * Recreates the scanners on the current list of active store file scanners<a name="line.2078"></a>
+<span class="sourceLineNo">2079</span>   * @param currentFileScanners the current set of active store file scanners<a name="line.2079"></a>
+<span class="sourceLineNo">2080</span>   * @param cacheBlocks cache the blocks or not<a name="line.2080"></a>
+<span class="sourceLineNo">2081</span>   * @param usePread use pread or not<a name="line.2081"></a>
+<span class="sourceLineNo">2082</span>   * @param isCompaction is the scanner for compaction<a name="line.2082"></a>
+<span class="sourceLineNo">2083</span>   * @param matcher the scan query matcher<a name="line.2083"></a>
+<span class="sourceLineNo">2084</span>   * @param startRow the scan's start row<a name="line.2084"></a>
+<span class="sourceLineNo">2085</span>   * @param includeStartRow should the scan include the start row<a name="line.2085"></a>
+<span class="sourceLineNo">2086</span>   * @param stopRow the scan's stop row<a name="line.2086"></a>
+<span class="sourceLineNo">2087</span>   * @param includeStopRow should the scan include the stop row<a name="line.2087"></a>
+<span class="sourceLineNo">2088</span>   * @param readPt the read point of the current scane<a name="line.2088"></a>
+<span class="sourceLineNo">2089</span>   * @param includeMemstoreScanner whether the current scanner should include memstorescanner<a name="line.2089"></a>
+<span class="sourceLineNo">2090</span>   * @return list of scanners recreated on the current Scanners<a name="line.2090"></a>
+<span class="sourceLineNo">2091</span>   */<a name="line.2091"></a>
+<span class="sourceLineNo">2092</span>  public List&lt;KeyValueScanner&gt; recreateScanners(List&lt;KeyValueScanner&gt; currentFileScanners,<a name="line.2092"></a>
+<span class="sourceLineNo">2093</span>      boolean cacheBlocks, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.2093"></a>
+<span class="sourceLineNo">2094</span>      byte[] startRow, boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.2094"></a>
+<span class="sourceLineNo">2095</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.2095"></a>
+<span class="sourceLineNo">2096</span>    this.lock.readLock().lock();<a name="line.2096"></a>
+<span class="sourceLineNo">2097</span>    try {<a name="line.2097"></a>
+<span class="sourceLineNo">2098</span>      Map&lt;String, HStoreFile&gt; name2File =<a name="line.2098"></a>
+<span class="sourceLineNo">2099</span>          new HashMap&lt;&gt;(getStorefilesCount() + getCompactedFilesCount());<a name="line.2099"></a>
+<span class="sourceLineNo">2100</span>      for (HStoreFile file : getStorefiles()) {<a name="line.2100"></a>
+<span class="sourceLineNo">2101</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2101"></a>
+<span class="sourceLineNo">2102</span>      }<a name="line.2102"></a>
+<span class="sourceLineNo">2103</span>      Collection&lt;HStoreFile&gt; compactedFiles = getCompactedFiles();<a name="line.2103"></a>
+<span class="sourceLineNo">2104</span>      for (HStoreFile file : IterableUtils.emptyIfNull(compactedFiles)) {<a name="line.2104"></a>
+<span class="sourceLineNo">2105</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2105"></a>
+<span class="sourceLineNo">2106</span>      }<a name="line.2106"></a>
+<span class="sourceLineNo">2107</span>      List&lt;HStoreFile&gt; filesToReopen = new ArrayList&lt;&gt;();<a name="line.2107"></a>
+<span class="sourceLineNo">2108</span>      for (KeyValueScanner kvs : currentFileScanners) {<a name="line.2108"></a>
+<span class="sourceLineNo">2109</span>        assert kvs.isFileScanner();<a name="line.2109"></a>
+<span class="sourceLineNo">2110</span>        if (kvs.peek() == null) {<a name="line.2110"></a>
+<span class="sourceLineNo">2111</span>          continue;<a name="line.2111"></a>
+<span class="sourceLineNo">2112</span>        }<a name="line.2112"></a>
+<span class="sourceLineNo">2113</span>        filesToReopen.add(name2File.get(kvs.getFilePath().getName()));<a name="line.2113"></a>
+<span class="sourceLineNo">2114</span>      }<a name="line.2114"></a>
+<span class="sourceLineNo">2115</span>      if (filesToReopen.isEmpty()) {<a name="line.2115"></a>
+<span class="sourceLineNo">2116</span>        return null;<a name="line.2116"></a>
+<span class="sourceLineNo">2117</span>      }<a name="line.2117"></a>
+<span class="sourceLineNo">2118</span>      return getScanners(filesToReopen, cacheBlocks, false, false, matcher, startRow,<a name="line.2118"></a>
+<span class="sourceLineNo">2119</span>        includeStartRow, stopRow, includeStopRow, readPt, false);<a name="line.2119"></a>
+<span class="sourceLineNo">2120</span>    } finally {<a name="line.2120"></a>
+<span class="sourceLineNo">2121</span>      this.lock.readLock().unlock();<a name="line.2121"></a>
+<span class="sourceLineNo">2122</span>    }<a name="line.2122"></a>
+<span class="sourceLineNo">2123</span>  }<a name="line.2123"></a>
+<span class="sourceLineNo">2124</span><a name="line.2124"></a>
+<span class="sourceLineNo">2125</span>  @Override<a name="line.2125"></a>
+<span class="sourceLineNo">2126</span>  public String toString() {<a name="line.2126"></a>
+<span class="sourceLineNo">2127</span>    return this.getRegionInfo().getShortNameToLog()+ "/" + this.getColumnFamilyName();<a name="line.2127"></a>
+<span class="sourceLineNo">2128</span>  }<a name="line.2128"></a>
+<span class="sourceLineNo">2129</span><a name="line.2129"></a>
+<span class="sourceLineNo">2130</span>  @Override<a name="line.2130"></a>
+<span class="sourceLineNo">2131</span>  public int getStorefilesCount() {<a name="line.2131"></a>
+<span class="sourceLineNo">2132</span>    return this.storeEngine.getStoreFileManager().getStorefileCount();<a name="line.2132"></a>
+<span class="sourceLineNo">2133</span>  }<a name="line.2133"></a>
+<span class="sourceLineNo">2134</span><a name="line.2134"></a>
+<span class="sourceLineNo">2135</span>  @Override<a name="line.2135"></a>
+<span class="sourceLineNo">2136</span>  public int getCompactedFilesCount() {<a name="line.2136"></a>
+<span class="sourceLineNo">2137</span>    return this.storeEngine.getStoreFileManager().getCompactedFilesCount();<a name="line.2137"></a>
+<span class="sourceLineNo">2138</span>  }<a name="line.2138"></a>
+<span class="sourceLineNo">2139</span><a name="line.2139"></a>
+<span class="sourceLineNo">2140</span>  private LongStream getStoreFileAgeStream() {<a name="line.2140"></a>
+<span class="sourceLineNo">2141</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream().filter(sf -&gt; {<a name="line.2141"></a>
+<span class="sourceLineNo">2142</span>      if (sf.getReader() == null) {<a name="line.2142"></a>
+<span class="sourceLineNo">2143</span>        LOG.warn("StoreFile {} has a null Reader", sf);<a name="line.2143"></a>
+<span class="sourceLineNo">2144</span>        return false;<a name="line.2144"></a>
+<span class="sourceLineNo">2145</span>      } else {<a name="line.2145"></a>
+<span class="sourceLineNo">2146</span>        return true;<a name="line.2146"></a>
+<span class="sourceLineNo">2147</span>      }<a name="line.2147"></a>
+<span class="sourceLineNo">2148</span>    }).filter(HStoreFile::isHFile).mapToLong(sf -&gt; sf.getFileInfo().getCreatedTimestamp())<a name="line.2148"></a>
+<span class="sourceLineNo">2149</span>        .map(t -&gt; EnvironmentEdgeManager.currentTime() - t);<a name="line.2149"></a>
+<span class="sourceLineNo">2150</span>  }<a name="line.2150"></a>
+<span class="sourceLineNo">2151</span><a name="line.2151"></a>
+<span class="sourceLineNo">2152</span>  @Override<a name="line.2152"></a>
+<span class="sourceLineNo">2153</span>  public OptionalLong getMaxStoreFileAge() {<a name="line.2153"></a>
+<span class="sourceLineNo">2154</span>    return getStoreFileAgeStream().max();<a name="line.2154"></a>
+<span class="sourceLineNo">2155</span>  }<a name="line.2155"></a>
+<span class="sourceLineNo">2156</span><a name="line.2156"></a>
+<span class="sourceLineNo">2157</span>  @Override<a name="line.2157"></a>
+<span class="sourceLineNo">2158</span>  public OptionalLong getMinStoreFileAge() {<a name="line.2158"></a>
+<span class="sourceLineNo">2159</span>    return getStoreFileAgeStream().min();<a name="line.2159"></a>
+<span class="sourceLineNo">2160</span>  }<a name="line.2160"></a>
+<span class="sourceLineNo">2161</span><a name="line.2161"></a>
+<span class="sourceLineNo">2162</span>  @Override<a name="line.2162"></a>
+<span class="sourceLineNo">2163</span>  public OptionalDouble getAvgStoreFileAge() {<a name="line.2163"></a>
+<span class="sourceLineNo">2164</span>    return getStoreFileAgeStream().average();<a name="line.2164"></a>
+<span class="sourceLineNo">2165</span>  }<a name="line.2165"></a>
+<span class="sourceLineNo">2166</span><a name="line.2166"></a>
+<span class="sourceLineNo">2167</span>  @Override<a name="line.2167"></a>
+<span class="sourceLineNo">2168</span>  public long getNumReferenceFiles() {<a name="line.2168"></a>
+<span class="sourceLineNo">2169</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2169"></a>
+<span class="sourceLineNo">2170</span>        .filter(HStoreFile::isReference).count();<a name="line.2170"></a>
+<span class="sourceLineNo">2171</span>  }<a name="line.2171"></a>
+<span class="sourceLineNo">2172</span><a name="line.2172"></a>
+<span class="sourceLineNo">2173</span>  @Override<a name="line.2173"></a>
+<span class="sourceLineNo">2174</span>  public long getNumHFiles() {<a name="line.2174"></a>
+<span class="sourceLineNo">2175</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2175"></a>
+<span class="sourceLineNo">2176</span>        .filter(HStoreFile::isHFile).count();<a name="line.2176"></a>
+<span class="sourceLineNo">2177</span>  }<a name="line.2177"></a>
+<span class="sourceLineNo">2178</span><a name="line.2178"></a>
+<span class="sourceLineNo">2179</span>  @Override<a name="line.2179"></a>
+<span class="sourceLineNo">2180</span>  public long getStoreSizeUncompressed() {<a name="line.2180"></a>
+<span class="sourceLineNo">2181</span>    return this.totalUncompressedBytes.get();<a name="line.2181"></a>
+<span class="sourceLineNo">2182</span>  }<a name="line.2182"></a>
+<span class="sourceLineNo">2183</span><a name="line.2183"></a>
+<span class="sourceLineNo">2184</span>  @Override<a name="line.2184"></a>
+<span class="sourceLineNo">2185</span>  public long getStorefilesSize() {<a name="line.2185"></a>
+<span class="sourceLineNo">2186</span>    // Include all StoreFiles<a name="line.2186"></a>
+<span class="sourceLineNo">2187</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(), sf -&gt; true);<a name="line.2187"></a>
+<span class="sourceLineNo">2188</span>  }<a name="line.2188"></a>
+<span class="sourceLineNo">2189</span><a name="line.2189"></a>
+<span class="sourceLineNo">2190</span>  @Override<a name="line.2190"></a>
+<span class="sourceLineNo">2191</span>  public long getHFilesSize() {<a name="line.2191"></a>
+<span class="sourceLineNo">2192</span>    // Include only StoreFiles which are HFiles<a name="line.2192"></a>
+<span class="sourceLineNo">2193</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(),<a name="line.2193"></a>
+<span class="sourceLineNo">2194</span>      HStoreFile::isHFile);<a name="line.2194"></a>
+<span class="sourceLineNo">2195</span>  }<a name="line.2195"></a>
+<span class="sourceLineNo">2196</span><a name="line.2196"></a>
+<span class="sourceLineNo">2197</span>  private long getTotalUncompressedBytes(List&lt;HStoreFile&gt; files) {<a name="line.2197"></a>
+<span class="sourceLineNo">2198</span>    return files.stream()<a name="line.2198"></a>
+<span class="sourceLineNo">2199</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::getTotalUncompressedBytes))<a name="line.2199"></a>
+<span class="sourceLineNo">2200</span>      .sum();<a name="line.2200"></a>
+<span class="sourceLineNo">2201</span>  }<a name="line.2201"></a>
+<span class="sourceLineNo">2202</span><a name="line.2202"></a>
+<span class="sourceLineNo">2203</span>  private long getStorefilesSize(Collection&lt;HStoreFile&gt; files, Predicate&lt;HStoreFile&gt; predicate) {<a name="line.2203"></a>
+<span class="sourceLineNo">2204</span>    return files.stream().filter(predicate)<a name="line.2204"></a>
+<span class="sourceLineNo">2205</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::length)).sum();<a name="line.2205"></a>
+<span class="sourceLineNo">2206</span>  }<a name="line.2206"></a>
+<span class="sourceLineNo">2207</span><a name="line.2207"></a>
+<span class="sourceLineNo">2208</span>  private long getStorefileFieldSize(HStoreFile file, ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2208"></a>
+<span class="sourceLineNo">2209</span>    if (file == null) {<a name="line.2209"></a>
+<span class="sourceLineNo">2210</span>      return 0L;<a name="line.2210"></a>
+<span class="sourceLineNo">2211</span>    }<a name="line.2211"></a>
+<span class="sourceLineNo">2212</span>    StoreFileReader reader = file.getReader();<a name="line.2212"></a>
+<span class="sourceLineNo">2213</span>    if (reader == null) {<a name="line.2213"></a>
+<span class="sourceLineNo">2214</span>      return 0L;<a name="line.2214"></a>
+<span class="sourceLineNo">2215</span>    }<a name="line.2215"></a>
+<span class="sourceLineNo">2216</span>    return f.applyAsLong(reader);<a name="line.2216"></a>
+<span class="sourceLineNo">2217</span>  }<a name="line.2217"></a>
+<span class="sourceLineNo">2218</span><a name="line.2218"></a>
+<span class="sourceLineNo">2219</span>  private long getStorefilesFieldSize(ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2219"></a>
+<span class="sourceLineNo">2220</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2220"></a>
+<span class="sourceLineNo">2221</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, f)).sum();<a name="line.2221"></a>
+<span class="sourceLineNo">2222</span>  }<a name="line.2222"></a>
+<span class="sourceLineNo">2223</span><a name="line.2223"></a>
+<span class="sourceLineNo">2224</span>  @Override<a name="line.2224"></a>
+<span class="sourceLineNo">2225</span>  public long getStorefilesRootLevelIndexSize() {<a name="line.2225"></a>
+<span class="sourceLineNo">2226</span>    return getStorefilesFieldSize(StoreFileReader::indexSize);<a name="line.2226"></a>
+<span class="sourceLineNo">2227</span>  }<a name="line.2227"></a>
+<span class="sourceLineNo">2228</span><a name="line.2228"></a>
+<span class="sourceLineNo">2229</span>  @Override<a name="line.2229"></a>
+<span class="sourceLineNo">2230</span>  public long getTotalStaticIndexSize() {<a name="line.2230"></a>
+<span class="sourceLineNo">2231</span>    return getStorefilesFieldSize(StoreFileReader::getUncompressedDataIndexSize);<a name="line.2231"></a>
+<span class="sourceLineNo">2232</span>  }<a name="line.2232"></a>
+<span class="sourceLineNo">2233</span><a name="line.2233"></a>
+<span class="sourceLineNo">2234</span>  @Override<a name="line.2234"></a>
+<span class="sourceLineNo">2235</span>  public long getTotalStaticBloomSize() {<a name="line.2235"></a>
+<span class="sourceLineNo">2236</span>    return getStorefilesFieldSize(StoreFileReader::getTotalBloomSize);<a name="line.2236"></a>
+<span class="sourceLineNo">2237</span>  }<a name="line.2237"></a>
+<span class="sourceLineNo">2238</span><a name="line.2238"></a>
+<span class="sourceLineNo">2239</span>  @Override<a name="line.2239"></a>
+<span class="sourceLineNo">2240</span>  public MemStoreSize getMemStoreSize() {<a name="line.2240"></a>
+<span class="sourceLineNo">2241</span>    return this.memstore.size();<a name="line.2241"></a>
+<span class="sourceLineNo">2242</span>  }<a name="line.2242"></a>
+<span class="sourceLineNo">2243</span><a name="line.2243"></a>
+<span class="sourceLineNo">2244</span>  @Override<a name="line.2244"></a>
+<span class="sourceLineNo">2245</span>  public int getCompactPriority() {<a name="line.2245"></a>
+<span class="sourceLineNo">2246</span>    int priority = this.storeEngine.getStoreFileManager().getStoreCompactionPriority();<a name="line.2246"></a>
+<span class="sourceLineNo">2247</span>    if (priority == PRIORITY_USER) {<a name="line.2247"></a>
+<span class="sourceLineNo">2248</span>      LOG.warn("Compaction priority is USER despite there being no user compaction");<a name="line.2248"></a>
+<span class="sourceLineNo">2249</span>    }<a name="line.2249"></a>
+<span class="sourceLineNo">2250</span>    return priority;<a name="line.2250"></a>
+<span class="sourceLineNo">2251</span>  }<a name="line.2251"></a>
+<span class="sourceLineNo">2252</span><a name="line.2252"></a>
+<span class="sourceLineNo">2253</span>  public boolean throttleCompaction(long compactionSize) {<a name="line.2253"></a>
+<span class="sourceLineNo">2254</span>    return storeEngine.getCompactionPolicy().throttleCompaction(compactionSize);<a name="line.2254"></a>
+<span class="sourceLineNo">2255</span>  }<a name="line.2255"></a>
+<span class="sourceLineNo">2256</span><a name="line.2256"></a>
+<span class="sourceLineNo">2257</span>  public HRegion getHRegion() {<a name="line.2257"></a>
+<span class="sourceLineNo">2258</span>    return this.region;<a name="line.2258"></a>
+<span class="sourceLineNo">2259</span>  }<a name="line.2259"></a>
+<span class="sourceLineNo">2260</span><a name="line.2260"></a>
+<span class="sourceLineNo">2261</span>  public RegionCoprocessorHost getCoprocessorHost() {<a name="line.2261"></a>
+<span class="sourceLineNo">2262</span>    return this.region.getCoprocessorHost();<a name="line.2262"></a>
+<span class="sourceLineNo">2263</span>  }<a name="line.2263"></a>
+<span class="sourceLineNo">2264</span><a name="line.2264"></a>
+<span class="sourceLineNo">2265</span>  @Override<a name="line.2265"></a>
+<span class="sourceLineNo">2266</span>  public RegionInfo getRegionInfo() {<a name="line.2266"></a>
+<span class="sourceLineNo">2267</span>    return getRegionFileSystem().getRegionInfo();<a name="line.2267"></a>
+<span class="sourceLineNo">2268</span>  }<a name="line.2268"></a>
+<span class="sourceLineNo">2269</span><a name="line.2269"></a>
+<span class="sourceLineNo">2270</span>  @Override<a name="line.2270"></a>
+<span class="sourceLineNo">2271</span>  public boolean areWritesEnabled() {<a name="line.2271"></a>
+<span class="sourceLineNo">2272</span>    return this.region.areWritesEnabled();<a name="line.2272"></a>
+<span class="sourceLineNo">2273</span>  }<a name="line.2273"></a>
+<span class="sourceLineNo">2274</span><a name="line.2274"></a>
+<span class="sourceLineNo">2275</span>  @Override<a name="line.2275"></a>
+<span class="sourceLineNo">2276</span>  public long getSmallestReadPoint() {<a name="line.2276"></a>
+<span class="sourceLineNo">2277</span>    return this.region.getSmallestReadPoint();<a name="line.2277"></a>
+<span class="sourceLineNo">2278</span>  }<a name="line.2278"></a>
+<span class="sourceLineNo">2279</span><a name="line.2279"></a>
+<span class="sourceLineNo">2280</span>  /**<a name="line.2280"></a>
+<span class="sourceLineNo">2281</span>   * Adds or replaces the specified KeyValues.<a name="line.2281"></a>
+<span class="sourceLineNo">2282</span>   * &lt;p&gt;<a name="line.2282"></a>
+<span class="sourceLineNo">2283</span>   * For each KeyValue specified, if a cell with the same row, family, and qualifier exists in<a name="line.2283"></a>
+<span class="sourceLineNo">2284</span>   * MemStore, it will be replaced. Otherwise, it will just be inserted to MemStore.<a name="line.2284"></a>
+<span class="sourceLineNo">2285</span>   * &lt;p&gt;<a name="line.2285"></a>
+<span class="sourceLineNo">2286</span>   * This operation is atomic on each KeyValue (row/family/qualifier) but not necessarily atomic<a name="line.2286"></a>
+<span class="sourceLineNo">2287</span>   * across all of them.<a name="line.2287"></a>
+<span class="sourceLineNo">2288</span>   * @param readpoint readpoint below which we can safely remove duplicate KVs<a name="line.2288"></a>
+<span class="sourceLineNo">2289</span>   */<a name="line.2289"></a>
+<span class="sourceLineNo">2290</span>  public void upsert(Iterable&lt;Cell&gt; cells, long readpoint, MemStoreSizing memstoreSizing)<a name="line.2290"></a>
+<span class="sourceLineNo">2291</span>      throws IOException {<a name="line.2291"></a>
+<span class="sourceLineNo">2292</span>    this.lock.readLock().lock();<a name="line.2292"></a>
+<span class="sourceLineNo">2293</span>    try {<a name="line.2293"></a>
+<span class="sourceLineNo">2294</span>      this.memstore.upsert(cells, readpoint, memstoreSizing);<a name="line.2294"></a>
+<span class="sourceLineNo">2295</span>    } finally {<a name="line.2295"></a>
+<span class="sourceLineNo">2296</span>      this.lock.readLock().unlock();<a name="line.2296"></a>
+<span class="sourceLineNo">2297</span>    }<a name="line.2297"></a>
+<span class="sourceLineNo">2298</span>  }<a name="line.2298"></a>
+<span class="sourceLineNo">2299</span><a name="line.2299"></a>
+<span class="sourceLineNo">2300</span>  public StoreFlushContext createFlushContext(long cacheFlushId, FlushLifeCycleTracker tracker) {<a name="line.2300"></a>
+<span class="sourceLineNo">2301</span>    return new StoreFlusherImpl(cacheFlushId, tracker);<a name="line.2301"></a>
+<span class="sourceLineNo">2302</span>  }<a name="line.2302"></a>
+<span class="sourceLineNo">2303</span><a name="line.2303"></a>
+<span class="sourceLineNo">2304</span>  private final class StoreFlusherImpl implements StoreFlushContext {<a name="line.2304"></a>
+<span class="sourceLineNo">2305</span><a name="line.2305"></a>
+<span class="sourceLineNo">2306</span>    private final FlushLifeCycleTracker tracker;<a name="line.2306"></a>
+<span class="sourceLineNo">2307</span>    private final long cacheFlushSeqNum;<a name="line.2307"></a>
+<span class="sourceLineNo">2308</span>    private MemStoreSnapshot snapshot;<a name="line.2308"></a>
+<span class="sourceLineNo">2309</span>    private List&lt;Path&gt; tempFiles;<a name="line.2309"></a>
+<span class="sourceLineNo">2310</span>    private List&lt;Path&gt; committedFiles;<a name="line.2310"></a>
+<span class="sourceLineNo">2311</span>    private long cacheFlushCount;<a name="line.2311"></a>
+<span class="sourceLineNo">2312</span>    private long cacheFlushSize;<a name="line.2312"></a>
+<span class="sourceLineNo">2313</span>    private long outputFileSize;<a name="line.2313"></a>
+<span class="sourceLineNo">2314</span><a name="line.2314"></a>
+<span class="sourceLineNo">2315</span>    private StoreFlusherImpl(long cacheFlushSeqNum, FlushLifeCycleTracker tracker) {<a name="line.2315"></a>
+<span class="sourceLineNo">2316</span>      this.cacheFlushSeqNum = cacheFlushSeqNum;<a name="line.2316"></a>
+<span class="sourceLineNo">2317</span>      this.tracker = tracker;<a name="line.2317"></a>
+<span class="sourceLineNo">2318</span>    }<a name="line.2318"></a>
+<span class="sourceLineNo">2319</span><a name="line.2319"></a>
+<span class="sourceLineNo">2320</span>    /**<a name="line.2320"></a>
+<span class="sourceLineNo">2321</span>     * This is not thread safe. The caller should have a lock on the region or the store.<a name="line.2321"></a>
+<span class="sourceLineNo">2322</span>     * If necessary, the lock can be added with the patch provided in HBASE-10087<a name="line.2322"></a>
+<span class="sourceLineNo">2323</span>     */<a name="line.2323"></a>
+<span class="sourceLineNo">2324</span>    @Override<a name="line.2324"></a>
+<span class="sourceLineNo">2325</span>    public MemStoreSize prepare() {<a name="line.2325"></a>
+<span class="sourceLineNo">2326</span>      // passing the current sequence number of the wal - to allow bookkeeping in the memstore<a name="line.2326"></a>
+<span class="sourceLineNo">2327</span>      this.snapshot = memstore.snapshot();<a name="line.2327"></a>
+<span class="sourceLineNo">2328</span>      this.cacheFlushCount = snapshot.getCellsCount();<a name="line.2328"></a>
+<span class="sourceLineNo">2329</span>      this.cacheFlushSize = snapshot.getDataSize();<a name="line.2329"></a>
+<span class="sourceLineNo">2330</span>      committedFiles = new ArrayList&lt;&gt;(1);<a name="line.2330"></a>
+<span class="sourceLineNo">2331</span>      return snapshot.getMemStoreSize();<a name="line.2331"></a>
+<span class="sourceLineNo">2332</span>    }<a name="line.2332"></a>
+<span class="sourceLineNo">2333</span><a name="line.2333"></a>
+<span class="sourceLineNo">2334</span>    @Override<a name="line.2334"></a>
+<span class="sourceLineNo">2335</span>    public void flushCache(MonitoredTask status) throws IOException {<a name="line.2335"></a>
+<span class="sourceLineNo">2336</span>      RegionServerServices rsService = region.getRegionServerServices();<a name="line.2336"></a>
+<span class="sourceLineNo">2337</span>      ThroughputController throughputController =<a name="line.2337"></a>
+<span class="sourceLineNo">2338</span>          rsService == null ? null : rsService.getFlushThroughputController();<a name="line.2338"></a>
+<span class="sourceLineNo">2339</span>      tempFiles =<a name="line.2339"></a>
+<span class="sourceLineNo">2340</span>          HStore.this.flushCache(cacheFlushSeqNum, snapshot, status, throughputController, tracker);<a name="line.2340"></a>
+<span class="sourceLineNo">2341</span>    }<a name="line.2341"></a>
+<span class="sourceLineNo">2342</span><a name="line.2342"></a>
+<span class="sourceLineNo">2343</span>    @Override<a name="line.2343"></a>
+<span class="sourceLineNo">2344</span>    public boolean commit(MonitoredTask status) throws IOException {<a name="line.2344"></a>
+<span class="sourceLineNo">2345</span>      if (CollectionUtils.isEmpty(this.tempFiles)) {<a name="line.2345"></a>
+<span class="sourceLineNo">2346</span>        return false;<a name="line.2346"></a>
+<span class="sourceLineNo">2347</span>      }<a name="line.2347"></a>
+<span class="sourceLineNo">2348</span>      status.setStatus("Flushing " + this + ": reopening flushed file");<a name="line.2348"></a>
+<span class="sourceLineNo">2349</span>      List&lt;HStoreFile&gt; storeFiles = commitStoreFiles(tempFiles, false);<a name="line.2349"></a>
+<span class="sourceLineNo">2350</span>      for (HStoreFile sf : storeFiles) {<a name="line.2350"></a>
+<span class="sourceLineNo">2351</span>        StoreFileReader r = sf.getReader();<a name="line.2351"></a>
+<span class="sourceLineNo">2352</span>        if (LOG.isInfoEnabled()) {<a name="line.2352"></a>
+<span class="sourceLineNo">2353</span>          LOG.info("Added {}, entries={}, sequenceid={}, filesize={}", sf, r.getEntries(),<a name="line.2353"></a>
+<span class="sourceLineNo">2354</span>            cacheFlushSeqNum, TraditionalBinaryPrefix.long2String(r.length(), "", 1));<a name="line.2354"></a>
+<span class="sourceLineNo">2355</span>        }<a name="line.2355"></a>
+<span class="sourceLineNo">2356</span>        outputFileSize += r.length();<a name="line.2356"></a>
+<span class="sourceLineNo">2357</span>        storeSize.addAndGet(r.length());<a name="line.2357"></a>
+<span class="sourceLineNo">2358</span>        totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.2358"></a>
+<span class="sourceLineNo">2359</span>        committedFiles.add(sf.getPath());<a name="line.2359"></a>
+<span class="sourceLineNo">2360</span>      }<a name="line.2360"></a>
+<span class="sourceLineNo">2361</span><a name="line.2361"></a>
+<span class="sourceLineNo">2362</span>      flushedCellsCount.addAndGet(cacheFlushCount);<a name="line.2362"></a>
+<span class="sourceLineNo">2363</span>      flushedCellsSize.addAndGet(cacheFlushSize);<a name="line.2363"></a>
+<span class="sourceLineNo">2364</span>      flushedOutputFileSize.addAndGet(outputFileSize);<a name="line.2364"></a>
+<span class="sourceLineNo">2365</span>      // call coprocessor after we have done all the accounting above<a name="line.2365"></a>
+<span class="sourceLineNo">2366</span>      for (HStoreFile sf : storeFiles) {<a name="line.2366"></a>
+<span class="sourceLineNo">2367</span>        if (getCoprocessorHost() != null) {<a name="line.2367"></a>
+<span class="sourceLineNo">2368</span>          getCoprocessorHost().postFlush(HStore.this, sf, tracker);<a name="line.2368"></a>
 <span class="sourceLineNo">2369</span>        }<a name="line.2369"></a>
 <span class="sourceLineNo">2370</span>      }<a name="line.2370"></a>
-<span class="sourceLineNo">2371</span><a name="line.2371"></a>
-<span class="sourceLineNo">2372</span>      for (HStoreFile sf : storeFiles) {<a name="line.2372"></a>
-<span class="sourceLineNo">2373</span>        if (HStore.this.getCoprocessorHost() != null) {<a name="line.2373"></a>
-<span class="sourceLineNo">2374</span>          HStore.this.getCoprocessorHost().postFlush(HStore.this, sf, tracker);<a name="line.2374"></a>
-<span class="sourceLineNo">2375</span>        }<a name="line.2375"></a>
-<span class="sourceLineNo">2376</span>        committedFiles.add(sf.getPath());<a name="line.2376"></a>
-<span class="sourceLineNo">2377</span>      }<a name="line.2377"></a>
-<span class="sourceLineNo">2378</span><a name="line.2378"></a>
-<span class="sourceLineNo">2379</span>      HStore.this.flushedCellsCount.addAndGet(cacheFlushCount);<a name="line.2379"></a>
-<span class="sourceLineNo">2380</span>      HStore.this.flushedCellsSize.addAndGet(cacheFlushSize);<a name="line.2380"></a>
-<span class="sourceLineNo">2381</span>      HStore.this.flushedOutputFileSize.addAndGet(outputFileSize);<a name="line.2381"></a>
-<span class="sourceLineNo">2382</span><a name="line.2382"></a>
-<span class="sourceLineNo">2383</span>      // Add new file to store files.  Clear snapshot too while we have the Store write lock.<a name="line.2383"></a>
-<span class="sourceLineNo">2384</span>      return HStore.this.updateStorefiles(storeFiles, snapshot.getId());<a name="line.2384"></a>
-<span class="sourceLineNo">2385</span>    }<a name="line.2385"></a>
-<span class="sourceLineNo">2386</span><a name="line.2386"></a>
-<span class="sourceLineNo">2387</span>    @Override<a name="line.2387"></a>
-<span class="sourceLineNo">2388</span>    public long getOutputFileSize() {<a name="line.2388"></a>
-<span class="sourceLineNo">2389</span>      return outputFileSize;<a name="line.2389"></a>
-<span class="sourceLineNo">2390</span>    }<a name="line.2390"></a>
-<span class="sourceLineNo">2391</span><a name="line.2391"></a>
+<span class="sourceLineNo">2371</span>      // Add new file to store files. Clear snapshot too while we have the Store write lock.<a name="line.2371"></a>
+<span class="sourceLineNo">2372</span>      return updateStorefiles(storeFiles, snapshot.getId());<a name="line.2372"></a>
+<span class="sourceLineNo">2373</span>    }<a name="line.2373"></a>
+<span class="sourceLineNo">2374</span><a name="line.2374"></a>
+<span class="sourceLineNo">2375</span>    @Override<a name="line.2375"></a>
+<span class="sourceLineNo">2376</span>    public long getOutputFileSize() {<a name="line.2376"></a>
+<span class="sourceLineNo">2377</span>      return outputFileSize;<a name="line.2377"></a>
+<span class="sourceLineNo">2378</span>    }<a name="line.2378"></a>
+<span class="sourceLineNo">2379</span><a name="line.2379"></a>
+<span class="sourceLineNo">2380</span>    @Override<a name="line.2380"></a>
+<span class="sourceLineNo">2381</span>    public List&lt;Path&gt; getCommittedFiles() {<a name="line.2381"></a>
+<span class="sourceLineNo">2382</span>      return committedFiles;<a name="line.2382"></a>
+<span class="sourceLineNo">2383</span>    }<a name="line.2383"></a>
+<span class="sourceLineNo">2384</span><a name="line.2384"></a>
+<span class="sourceLineNo">2385</span>    /**<a name="line.2385"></a>
+<span class="sourceLineNo">2386</span>     * Similar to commit, but called in secondary region replicas for replaying the<a name="line.2386"></a>
+<span class="sourceLineNo">2387</span>     * flush cache from primary region. Adds the new files to the store, and drops the<a name="line.2387"></a>
+<span class="sourceLineNo">2388</span>     * snapshot depending on dropMemstoreSnapshot argument.<a name="line.2388"></a>
+<span class="sourceLineNo">2389</span>     * @param fileNames names of the flushed files<a name="line.2389"></a>
+<span class="sourceLineNo">2390</span>     * @param dropMemstoreSnapshot whether to drop the prepared memstore snapshot<a name="line.2390"></a>
+<span class="sourceLineNo">2391</span>     */<a name="line.2391"></a>
 <span class="sourceLineNo">2392</span>    @Override<a name="line.2392"></a>
-<span class="sourceLineNo">2393</span>    public List&lt;Path&gt; getCommittedFiles() {<a name="line.2393"></a>
-<span class="sourceLineNo">2394</span>      return committedFiles;<a name="line.2394"></a>
-<span class="sourceLineNo">2395</span>    }<a name="line.2395"></a>
-<span class="sourceLineNo">2396</span><a name="line.2396"></a>
-<span class="sourceLineNo">2397</span>    /**<a name="line.2397"></a>
-<span class="sourceLineNo">2398</span>     * Similar to commit, but called in secondary region replicas for replaying the<a name="line.2398"></a>
-<span class="sourceLineNo">2399</span>     * flush cache from primary region. Adds the new files to the store, and drops the<a name="line.2399"></a>
-<span class="sourceLineNo">2400</span>     * snapshot depending on dropMemstoreSnapshot argument.<a name="line.2400"></a>
-<span class="sourceLineNo">2401</span>     * @param fileNames names of the flushed files<a name="line.2401"></a>
-<span class="sourceLineNo">2402</span>     * @param dropMemstoreSnapshot whether to drop the prepared memstore snapshot<a name="line.2402"></a>
-<span class="sourceLineNo">2403</span>     */<a name="line.2403"></a>
-<span class="sourceLineNo">2404</span>    @Override<a name="line.2404"></a>
-<span class="sourceLineNo">2405</span>    public void replayFlush(List&lt;String&gt; fileNames, boolean dropMemstoreSnapshot)<a name="line.2405"></a>
-<span class="sourceLineNo">2406</span>        throws IOException {<a name="line.2406"></a>
-<span class="sourceLineNo">2407</span>      List&lt;HStoreFile&gt; storeFiles = new ArrayList&lt;&gt;(fileNames.size());<a name="line.2407"></a>
-<span class="sourceLineNo">2408</span>      for (String file : fileNames) {<a name="line.2408"></a>
-<span class="sourceLineNo">2409</span>        // open the file as a store file (hfile link, etc)<a name="line.2409"></a>
-<span class="sourceLineNo">2410</span>        StoreFileInfo storeFileInfo =<a name="line.2410"></a>
-<span class="sourceLineNo">2411</span>          getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), file);<a name="line.2411"></a>
-<span class="sourceLineNo">2412</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.2412"></a>
-<span class="sourceLineNo">2413</span>        storeFiles.add(storeFile);<a name="line.2413"></a>
-<span class="sourceLineNo">2414</span>        HStore.this.storeSize.addAndGet(storeFile.getReader().length());<a name="line.2414"></a>
-<span class="sourceLineNo">2415</span>        HStore.this.totalUncompressedBytes<a name="line.2415"></a>
-<span class="sourceLineNo">2416</span>            .addAndGet(storeFile.getReader().getTotalUncompressedBytes());<a name="line.2416"></a>
-<span class="sourceLineNo">2417</span>        if (LOG.isInfoEnabled()) {<a name="line.2417"></a>
-<span class="sourceLineNo">2418</span>          LOG.info(this + " added " + storeFile + ", entries=" + storeFile.getReader().getEntries() +<a name="line.2418"></a>
-<span class="sourceLineNo">2419</span>              ", sequenceid=" + storeFile.getReader().getSequenceID() + ", filesize="<a name="line.2419"></a>
-<span class="sourceLineNo">2420</span>              + TraditionalBinaryPrefix.long2String(storeFile.getReader().length(), "", 1));<a name="line.2420"></a>
-<span class="sourceLineNo">2421</span>        }<a name="line.2421"></a>
-<span class="sourceLineNo">2422</span>      }<a name="line.2422"></a>
-<span class="sourceLineNo">2423</span><a name="line.2423"></a>
-<span class="sourceLineNo">2424</span>      long snapshotId = -1; // -1 means do not drop<a name="line.2424"></a>
-<span class="sourceLineNo">2425</span>      if (dropMemstoreSnapshot &amp;&amp; snapshot != null) {<a name="line.2425"></a>
-<span class="sourceLineNo">2426</span>        snapshotId = snapshot.getId();<a name="line.2426"></a>
-<span class="sourceLineNo">2427</span>        snapshot.close();<a name="line.2427"></a>
-<span class="sourceLineNo">2428</span>      }<a name="line.2428"></a>
-<span class="sourceLineNo">2429</span>      HStore.this.updateStorefiles(storeFiles, snapshotId);<a name="line.2429"></a>
-<span class="sourceLineNo">2430</span>    }<a name="line.2430"></a>
-<span class="sourceLineNo">2431</span><a name="line.2431"></a>
-<span class="sourceLineNo">2432</span>    /**<a name="line.2432"></a>
-<span class="sourceLineNo">2433</span>     * Abort the snapshot preparation. Drops the snapshot if any.<a name="line.2433"></a>
-<span class="sourceLineNo">2434</span>     */<a name="line.2434"></a>
-<span class="sourceLineNo">2435</span>    @Override<a name="line.2435"></a>
-<span class="sourceLineNo">2436</span>    public void abort() throws IOException {<a name="line.2436"></a>
-<span class="sourceLineNo">2437</span>      if (snapshot != null) {<a name="line.2437"></a>
-<span class="sourceLineNo">2438</span>        //We need to close the snapshot when aborting, otherwise, the segment scanner<a name="line.2438"></a>
-<span class="sourceLineNo">2439</span>        //won't be closed. If we are using MSLAB, the chunk referenced by those scanners<a name="line.2439"></a>
-<span class="sourceLineNo">2440</span>        //can't be released, thus memory leak<a name="line.2440"></a>
-<span class="sourceLineNo">2441</span>        snapshot.close();<a name="line.2441"></a>
-<span class="sourceLineNo">2442</span>        HStore.this.updateStorefiles(Collections.emptyList(), snapshot.getId());<a name="line.2442"></a>
-<span class="sourceLineNo">2443</span>      }<a name="line.2443"></a>
-<span class="sourceLineNo">2444</span>    }<a name="line.2444"></a>
-<span class="sourceLineNo">2445</span>  }<a name="line.2445"></a>
-<span class="sourceLineNo">2446</span><a name="line.2446"></a>
-<span class="sourceLineNo">2447</span>  @Override<a name="line.2447"></a>
-<span class="sourceLineNo">2448</span>  public boolean needsCompaction() {<a name="line.2448"></a>
-<span class="sourceLineNo">2449</span>    List&lt;HStoreFile&gt; filesCompactingClone = null;<a name="line.2449"></a>
-<span class="sourceLineNo">2450</span>    synchronized (filesCompacting) {<a name="line.2450"></a>
-<span class="sourceLineNo">2451</span>      filesCompactingClone = Lists.newArrayList(filesCompacting);<a name="line.2451"></a>
-<span class="sourceLineNo">2452</span>    }<a name="line.2452"></a>
-<span class="sourceLineNo">2453</span>    return this.storeEngine.needsCompaction(filesCompactingClone);<a name="line.2453"></a>
-<span class="sourceLineNo">2454</span>  }<a name="line.2454"></a>
-<span class="sourceLineNo">2455</span><a name="line.2455"></a>
-<span class="sourceLineNo">2456</span>  /**<a name="line.2456"></a>
-<span class="sourceLineNo">2457</span>   * Used for tests.<a name="line.2457"></a>
-<span class="sourceLineNo">2458</span>   * @return cache configuration for this Store.<a name="line.2458"></a>
-<span class="sourceLineNo">2459</span>   */<a name="line.2459"></a>
-<span class="sourceLineNo">2460</span>  public CacheConfig getCacheConfig() {<a name="line.2460"></a>
-<span class="sourceLineNo">2461</span>    return storeContext.getCacheConf();<a name="line.2461"></a>
-<span class="sourceLineNo">2462</span>  }<a name="line.2462"></a>
-<span class="sourceLineNo">2463</span><a name="line.2463"></a>
-<span class="sourceLineNo">2464</span>  public static final long FIXED_OVERHEAD = ClassSize.estimateBase(HStore.class, false);<a name="line.2464"></a>
+<span class="sourceLineNo">2393</span>    public void replayFlush(List&lt;String&gt; fileNames, boolean dropMemstoreSnapshot)<a name="line.2393"></a>
+<span class="sourceLineNo">2394</span>        throws IOException {<a name="line.2394"></a>
+<span class="sourceLineNo">2395</span>      List&lt;HStoreFile&gt; storeFiles = new ArrayList&lt;&gt;(fileNames.size());<a name="line.2395"></a>
+<span class="sourceLineNo">2396</span>      for (String file : fileNames) {<a name="line.2396"></a>
+<span class="sourceLineNo">2397</span>        // open the file as a store file (hfile link, etc)<a name="line.2397"></a>
+<span class="sourceLineNo">2398</span>        StoreFileInfo storeFileInfo =<a name="line.2398"></a>
+<span class="sourceLineNo">2399</span>          getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), file);<a name="line.2399"></a>
+<span class="sourceLineNo">2400</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.2400"></a>
+<span class="sourceLineNo">2401</span>        storeFiles.add(storeFile);<a name="line.2401"></a>
+<span class="sourceLineNo">2402</span>        HStore.this.storeSize.addAndGet(storeFile.getReader().length());<a name="line.2402"></a>
+<span class="sourceLineNo">2403</span>        HStore.this.totalUncompressedBytes<a name="line.2403"></a>
+<span class="sourceLineNo">2404</span>            .addAndGet(storeFile.getReader().getTotalUncompressedBytes());<a name="line.2404"></a>
+<span class="sourceLineNo">2405</span>        if (LOG.isInfoEnabled()) {<a name="line.2405"></a>
+<span class="sourceLineNo">2406</span>          LOG.info(this + " added " + storeFile + ", entries=" + storeFile.getReader().getEntries() +<a name="line.2406"></a>
+<span class="sourceLineNo">2407</span>              ", sequenceid=" + storeFile.getReader().getSequenceID() + ", filesize="<a name="line.2407"></a>
+<span class="sourceLineNo">2408</span>              + TraditionalBinaryPrefix.long2String(storeFile.getReader().length(), "", 1));<a name="line.2408"></a>
+<span class="sourceLineNo">2409</span>        }<a name="line.2409"></a>
+<span class="sourceLineNo">2410</span>      }<a name="line.2410"></a>
+<span class="sourceLineNo">2411</span><a name="line.2411"></a>
+<span class="sourceLineNo">2412</span>      long snapshotId = -1; // -1 means do not drop<a name="line.2412"></a>
+<span class="sourceLineNo">2413</span>      if (dropMemstoreSnapshot &amp;&amp; snapshot != null) {<a name="line.2413"></a>
+<span class="sourceLineNo">2414</span>        snapshotId = snapshot.getId();<a name="line.2414"></a>
+<span class="sourceLineNo">2415</span>        snapshot.close();<a name="line.2415"></a>
+<span class="sourceLineNo">2416</span>      }<a name="line.2416"></a>
+<span class="sourceLineNo">2417</span>      HStore.this.updateStorefiles(storeFiles, snapshotId);<a name="line.2417"></a>
+<span class="sourceLineNo">2418</span>    }<a name="line.2418"></a>
+<span class="sourceLineNo">2419</span><a name="line.2419"></a>
+<span class="sourceLineNo">2420</span>    /**<a name="line.2420"></a>
+<span class="sourceLineNo">2421</span>     * Abort the snapshot preparation. Drops the snapshot if any.<a name="line.2421"></a>
+<span class="sourceLineNo">2422</span>     */<a name="line.2422"></a>
+<span class="sourceLineNo">2423</span>    @Override<a name="line.2423"></a>
+<span class="sourceLineNo">2424</span>    public void abort() throws IOException {<a name="line.2424"></a>
+<span class="sourceLineNo">2425</span>      if (snapshot != null) {<a name="line.2425"></a>
+<span class="sourceLineNo">2426</span>        //We need to close the snapshot when aborting, otherwise, the segment scanner<a name="line.2426"></a>
+<span class="sourceLineNo">2427</span>        //won't be closed. If we are using MSLAB, the chunk referenced by those scanners<a name="line.2427"></a>
+<span class="sourceLineNo">2428</span>        //can't be released, thus memory leak<a name="line.2428"></a>
+<span class="sourceLineNo">2429</span>        snapshot.close();<a name="line.2429"></a>
+<span class="sourceLineNo">2430</span>        HStore.this.updateStorefiles(Collections.emptyList(), snapshot.getId());<a name="line.2430"></a>
+<span class="sourceLineNo">2431</span>      }<a name="line.2431"></a>
+<span class="sourceLineNo">2432</span>    }<a name="line.2432"></a>
+<span class="sourceLineNo">2433</span>  }<a name="line.2433"></a>
+<span class="sourceLineNo">2434</span><a name="line.2434"></a>
+<span class="sourceLineNo">2435</span>  @Override<a name="line.2435"></a>
+<span class="sourceLineNo">2436</span>  public boolean needsCompaction() {<a name="line.2436"></a>
+<span class="sourceLineNo">2437</span>    List&lt;HStoreFile&gt; filesCompactingClone = null;<a name="line.2437"></a>
+<span class="sourceLineNo">2438</span>    synchronized (filesCompacting) {<a name="line.2438"></a>
+<span class="sourceLineNo">2439</span>      filesCompactingClone = Lists.newArrayList(filesCompacting);<a name="line.2439"></a>
+<span class="sourceLineNo">2440</span>    }<a name="line.2440"></a>
+<span class="sourceLineNo">2441</span>    return this.storeEngine.needsCompaction(filesCompactingClone);<a name="line.2441"></a>
+<span class="sourceLineNo">2442</span>  }<a name="line.2442"></a>
+<span class="sourceLineNo">2443</span><a name="line.2443"></a>
+<span class="sourceLineNo">2444</span>  /**<a name="line.2444"></a>
+<span class="sourceLineNo">2445</span>   * Used for tests.<a name="line.2445"></a>
+<span class="sourceLineNo">2446</span>   * @return cache configuration for this Store.<a name="line.2446"></a>
+<span class="sourceLineNo">2447</span>   */<a name="line.2447"></a>
+<span class="sourceLineNo">2448</span>  public CacheConfig getCacheConfig() {<a name="line.2448"></a>
+<span class="sourceLineNo">2449</span>    return storeContext.getCacheConf();<a name="line.2449"></a>
+<span class="sourceLineNo">2450</span>  }<a name="line.2450"></a>
+<span class="sourceLineNo">2451</span><a name="line.2451"></a>
+<span class="sourceLineNo">2452</span>  public static final long FIXED_OVERHEAD = ClassSize.estimateBase(HStore.class, false);<a name="line.2452"></a>
+<span class="sourceLineNo">2453</span><a name="line.2453"></a>
+<span class="sourceLineNo">2454</span>  public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD<a name="line.2454"></a>
+<span class="sourceLineNo">2455</span>      + ClassSize.OBJECT + ClassSize.REENTRANT_LOCK<a name="line.2455"></a>
+<span class="sourceLineNo">2456</span>      + ClassSize.CONCURRENT_SKIPLISTMAP<a name="line.2456"></a>
+<span class="sourceLineNo">2457</span>      + ClassSize.CONCURRENT_SKIPLISTMAP_ENTRY + ClassSize.OBJECT<a name="line.2457"></a>
+<span class="sourceLineNo">2458</span>      + ScanInfo.FIXED_OVERHEAD);<a name="line.2458"></a>
+<span class="sourceLineNo">2459</span><a name="line.2459"></a>
+<span class="sourceLineNo">2460</span>  @Override<a name="line.2460"></a>
+<span class="sourceLineNo">2461</span>  public long heapSize() {<a name="line.2461"></a>
+<span class="sourceLineNo">2462</span>    MemStoreSize memstoreSize = this.memstore.size();<a name="line.2462"></a>
+<span class="sourceLineNo">2463</span>    return DEEP_OVERHEAD + memstoreSize.getHeapSize() + storeContext.heapSize();<a name="line.2463"></a>
+<span class="sourceLineNo">2464</span>  }<a name="line.2464"></a>
 <span class="sourceLineNo">2465</span><a name="line.2465"></a>
-<span class="sourceLineNo">2466</span>  public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD<a name="line.2466"></a>
-<span class="sourceLineNo">2467</span>      + ClassSize.OBJECT + ClassSize.REENTRANT_LOCK<a name="line.2467"></a>
-<span class="sourceLineNo">2468</span>      + ClassSize.CONCURRENT_SKIPLISTMAP<a name="line.2468"></a>
-<span class="sourceLineNo">2469</span>      + ClassSize.CONCURRENT_SKIPLISTMAP_ENTRY + ClassSize.OBJECT<a name="line.2469"></a>
-<span class="sourceLineNo">2470</span>      + ScanInfo.FIXED_OVERHEAD);<a name="line.2470"></a>
-<span class="sourceLineNo">2471</span><a name="line.2471"></a>
-<span class="sourceLineNo">2472</span>  @Override<a name="line.2472"></a>
-<span class="sourceLineNo">2473</span>  public long heapSize() {<a name="line.2473"></a>
-<span class="sourceLineNo">2474</span>    MemStoreSize memstoreSize = this.memstore.size();<a name="line.2474"></a>
-<span class="sourceLineNo">2475</span>    return DEEP_OVERHEAD + memstoreSize.getHeapSize() + storeContext.heapSize();<a name="line.2475"></a>
-<span class="sourceLineNo">2476</span>  }<a name="line.2476"></a>
-<span class="sourceLineNo">2477</span><a name="line.2477"></a>
-<span class="sourceLineNo">2478</span>  @Override<a name="line.2478"></a>
-<span class="sourceLineNo">2479</span>  public CellComparator getComparator() {<a name="line.2479"></a>
-<span class="sourceLineNo">2480</span>    return storeContext.getComparator();<a name="line.2480"></a>
+<span class="sourceLineNo">2466</span>  @Override<a name="line.2466"></a>
+<span class="sourceLineNo">2467</span>  public CellComparator getComparator() {<a name="line.2467"></a>
+<span class="sourceLineNo">2468</span>    return storeContext.getComparator();<a name="line.2468"></a>
+<span class="sourceLineNo">2469</span>  }<a name="line.2469"></a>
+<span class="sourceLineNo">2470</span><a name="line.2470"></a>
+<span class="sourceLineNo">2471</span>  public ScanInfo getScanInfo() {<a name="line.2471"></a>
+<span class="sourceLineNo">2472</span>    return scanInfo;<a name="line.2472"></a>
+<span class="sourceLineNo">2473</span>  }<a name="line.2473"></a>
+<span class="sourceLineNo">2474</span><a name="line.2474"></a>
+<span class="sourceLineNo">2475</span>  /**<a name="line.2475"></a>
+<span class="sourceLineNo">2476</span>   * Set scan info, used by test<a name="line.2476"></a>
+<span class="sourceLineNo">2477</span>   * @param scanInfo new scan info to use for test<a name="line.2477"></a>
+<span class="sourceLineNo">2478</span>   */<a name="line.2478"></a>
+<span class="sourceLineNo">2479</span>  void setScanInfo(ScanInfo scanInfo) {<a name="line.2479"></a>
+<span class="sourceLineNo">2480</span>    this.scanInfo = scanInfo;<a name="line.2480"></a>
 <span class="sourceLineNo">2481</span>  }<a name="line.2481"></a>
 <span class="sourceLineNo">2482</span><a name="line.2482"></a>
-<span class="sourceLineNo">2483</span>  public ScanInfo getScanInfo() {<a name="line.2483"></a>
-<span class="sourceLineNo">2484</span>    return scanInfo;<a name="line.2484"></a>
-<span class="sourceLineNo">2485</span>  }<a name="line.2485"></a>
-<span class="sourceLineNo">2486</span><a name="line.2486"></a>
-<span class="sourceLineNo">2487</span>  /**<a name="line.2487"></a>
-<span class="sourceLineNo">2488</span>   * Set scan info, used by test<a name="line.2488"></a>
-<span class="sourceLineNo">2489</span>   * @param scanInfo new scan info to use for test<a name="line.2489"></a>
-<span class="sourceLineNo">2490</span>   */<a name="line.2490"></a>
-<span class="sourceLineNo">2491</span>  void setScanInfo(ScanInfo scanInfo) {<a name="line.2491"></a>
-<span class="sourceLineNo">2492</span>    this.scanInfo = scanInfo;<a name="line.2492"></a>
-<span class="sourceLineNo">2493</span>  }<a name="line.2493"></a>
-<span class="sourceLineNo">2494</span><a name="line.2494"></a>
-<span class="sourceLineNo">2495</span>  @Override<a name="line.2495"></a>
-<span class="sourceLineNo">2496</span>  public boolean hasTooManyStoreFiles() {<a name="line.2496"></a>
-<span class="sourceLineNo">2497</span>    return getStorefilesCount() &gt; this.blockingFileCount;<a name="line.2497"></a>
-<span class="sourceLineNo">2498</span>  }<a name="line.2498"></a>
-<span class="sourceLineNo">2499</span><a name="line.2499"></a>
-<span class="sourceLineNo">2500</span>  @Override<a name="line.2500"></a>
-<span class="sourceLineNo">2501</span>  public long getFlushedCellsCount() {<a name="line.2501"></a>
-<span class="sourceLineNo">2502</span>    return flushedCellsCount.get();<a name="line.2502"></a>
-<span class="sourceLineNo">2503</span>  }<a name="line.2503"></a>
-<span class="sourceLineNo">2504</span><a name="line.2504"></a>
-<span class="sourceLineNo">2505</span>  @Override<a name="line.2505"></a>
-<span class="sourceLineNo">2506</span>  public long getFlushedCellsSize() {<a name="line.2506"></a>
-<span class="sourceLineNo">2507</span>    return flushedCellsSize.get();<a name="line.2507"></a>
-<span class="sourceLineNo">2508</span>  }<a name="line.2508"></a>
-<span class="sourceLineNo">2509</span><a name="line.2509"></a>
-<span class="sourceLineNo">2510</span>  @Override<a name="line.2510"></a>
-<span class="sourceLineNo">2511</span>  public long getFlushedOutputFileSize() {<a name="line.2511"></a>
-<span class="sourceLineNo">2512</span>    return flushedOutputFileSize.get();<a name="line.2512"></a>
-<span class="sourceLineNo">2513</span>  }<a name="line.2513"></a>
-<span class="sourceLineNo">2514</span><a name="line.2514"></a>
-<span class="sourceLineNo">2515</span>  @Override<a name="line.2515"></a>
-<span class="sourceLineNo">2516</span>  public long getCompactedCellsCount() {<a name="line.2516"></a>
-<span class="sourceLineNo">2517</span>    return compactedCellsCount.get();<a name="line.2517"></a>
-<span class="sourceLineNo">2518</span>  }<a name="line.2518"></a>
-<span class="sourceLineNo">2519</span><a name="line.2519"></a>
-<span class="sourceLineNo">2520</span>  @Override<a name="line.2520"></a>
-<span class="sourceLineNo">2521</span>  public long getCompactedCellsSize() {<a name="line.2521"></a>
-<span class="sourceLineNo">2522</span>    return compactedCellsSize.get();<a name="line.2522"></a>
-<span class="sourceLineNo">2523</span>  }<a name="line.2523"></a>
-<span class="sourceLineNo">2524</span><a name="line.2524"></a>
-<span class="sourceLineNo">2525</span>  @Override<a name="line.2525"></a>
-<span class="sourceLineNo">2526</span>  public long getMajorCompactedCellsCount() {<a name="line.2526"></a>
-<span class="sourceLineNo">2527</span>    return majorCompactedCellsCount.get();<a name="line.2527"></a>
-<span class="sourceLineNo">2528</span>  }<a name="line.2528"></a>
-<span class="sourceLineNo">2529</span><a name="line.2529"></a>
-<span class="sourceLineNo">2530</span>  @Override<a name="line.2530"></a>
-<span class="sourceLineNo">2531</span>  public long getMajorCompactedCellsSize() {<a name="line.2531"></a>
-<span class="sourceLineNo">2532</span>    return majorCompactedCellsSize.get();<a name="line.2532"></a>
+<span class="sourceLineNo">2483</span>  @Override<a name="line.2483"></a>
+<span class="sourceLineNo">2484</span>  public boolean hasTooManyStoreFiles() {<a name="line.2484"></a>
+<span class="sourceLineNo">2485</span>    return getStorefilesCount() &gt; this.blockingFileCount;<a name="line.2485"></a>
+<span class="sourceLineNo">2486</span>  }<a name="line.2486"></a>
+<span class="sourceLineNo">2487</span><a name="line.2487"></a>
+<span class="sourceLineNo">2488</span>  @Override<a name="line.2488"></a>
+<span class="sourceLineNo">2489</span>  public long getFlushedCellsCount() {<a name="line.2489"></a>
+<span class="sourceLineNo">2490</span>    return flushedCellsCount.get();<a name="line.2490"></a>
+<span class="sourceLineNo">2491</span>  }<a name="line.2491"></a>
+<span class="sourceLineNo">2492</span><a name="line.2492"></a>
+<span class="sourceLineNo">2493</span>  @Override<a name="line.2493"></a>
+<span class="sourceLineNo">2494</span>  public long getFlushedCellsSize() {<a name="line.2494"></a>
+<span class="sourceLineNo">2495</span>    return flushedCellsSize.get();<a name="line.2495"></a>
+<span class="sourceLineNo">2496</span>  }<a name="line.2496"></a>
+<span class="sourceLineNo">2497</span><a name="line.2497"></a>
+<span class="sourceLineNo">2498</span>  @Override<a name="line.2498"></a>
+<span class="sourceLineNo">2499</span>  public long getFlushedOutputFileSize() {<a name="line.2499"></a>
+<span class="sourceLineNo">2500</span>    return flushedOutputFileSize.get();<a name="line.2500"></a>
+<span class="sourceLineNo">2501</span>  }<a name="line.2501"></a>
+<span class="sourceLineNo">2502</span><a name="line.2502"></a>
+<span class="sourceLineNo">2503</span>  @Override<a name="line.2503"></a>
+<span class="sourceLineNo">2504</span>  public long getCompactedCellsCount() {<a name="line.2504"></a>
+<span class="sourceLineNo">2505</span>    return compactedCellsCount.get();<a name="line.2505"></a>
+<span class="sourceLineNo">2506</span>  }<a name="line.2506"></a>
+<span class="sourceLineNo">2507</span><a name="line.2507"></a>
+<span class="sourceLineNo">2508</span>  @Override<a name="line.2508"></a>
+<span class="sourceLineNo">2509</span>  public long getCompactedCellsSize() {<a name="line.2509"></a>
+<span class="sourceLineNo">2510</span>    return compactedCellsSize.get();<a name="line.2510"></a>
+<span class="sourceLineNo">2511</span>  }<a name="line.2511"></a>
+<span class="sourceLineNo">2512</span><a name="line.2512"></a>
+<span class="sourceLineNo">2513</span>  @Override<a name="line.2513"></a>
+<span class="sourceLineNo">2514</span>  public long getMajorCompactedCellsCount() {<a name="line.2514"></a>
+<span class="sourceLineNo">2515</span>    return majorCompactedCellsCount.get();<a name="line.2515"></a>
+<span class="sourceLineNo">2516</span>  }<a name="line.2516"></a>
+<span class="sourceLineNo">2517</span><a name="line.2517"></a>
+<span class="sourceLineNo">2518</span>  @Override<a name="line.2518"></a>
+<span class="sourceLineNo">2519</span>  public long getMajorCompactedCellsSize() {<a name="line.2519"></a>
+<span class="sourceLineNo">2520</span>    return majorCompactedCellsSize.get();<a name="line.2520"></a>
+<span class="sourceLineNo">2521</span>  }<a name="line.2521"></a>
+<span class="sourceLineNo">2522</span><a name="line.2522"></a>
+<span class="sourceLineNo">2523</span>  /**<a name="line.2523"></a>
+<span class="sourceLineNo">2524</span>   * Returns the StoreEngine that is backing this concrete implementation of Store.<a name="line.2524"></a>
+<span class="sourceLineNo">2525</span>   * @return Returns the {@link StoreEngine} object used internally inside this HStore object.<a name="line.2525"></a>
+<span class="sourceLineNo">2526</span>   */<a name="line.2526"></a>
+<span class="sourceLineNo">2527</span>  public StoreEngine&lt;?, ?, ?, ?&gt; getStoreEngine() {<a name="line.2527"></a>
+<span class="sourceLineNo">2528</span>    return this.storeEngine;<a name="line.2528"></a>
+<span class="sourceLineNo">2529</span>  }<a name="line.2529"></a>
+<span class="sourceLineNo">2530</span><a name="line.2530"></a>
+<span class="sourceLineNo">2531</span>  protected OffPeakHours getOffPeakHours() {<a name="line.2531"></a>
+<span class="sourceLineNo">2532</span>    return this.offPeakHours;<a name="line.2532"></a>
 <span class="sourceLineNo">2533</span>  }<a name="line.2533"></a>
 <span class="sourceLineNo">2534</span><a name="line.2534"></a>
 <span class="sourceLineNo">2535</span>  /**<a name="line.2535"></a>
-<span class="sourceLineNo">2536</span>   * Returns the StoreEngine that is backing this concrete implementation of Store.<a name="line.2536"></a>
-<span class="sourceLineNo">2537</span>   * @return Returns the {@link StoreEngine} object used internally inside this HStore object.<a name="line.2537"></a>
-<span class="sourceLineNo">2538</span>   */<a name="line.2538"></a>
-<span class="sourceLineNo">2539</span>  public StoreEngine&lt;?, ?, ?, ?&gt; getStoreEngine() {<a name="line.2539"></a>
-<span class="sourceLineNo">2540</span>    return this.storeEngine;<a name="line.2540"></a>
-<span class="sourceLineNo">2541</span>  }<a name="line.2541"></a>
-<span class="sourceLineNo">2542</span><a name="line.2542"></a>
-<span class="sourceLineNo">2543</span>  protected OffPeakHours getOffPeakHours() {<a name="line.2543"></a>
-<span class="sourceLineNo">2544</span>    return this.offPeakHours;<a name="line.2544"></a>
+<span class="sourceLineNo">2536</span>   * {@inheritDoc}<a name="line.2536"></a>
+<span class="sourceLineNo">2537</span>   */<a name="line.2537"></a>
+<span class="sourceLineNo">2538</span>  @Override<a name="line.2538"></a>
+<span class="sourceLineNo">2539</span>  public void onConfigurationChange(Configuration conf) {<a name="line.2539"></a>
+<span class="sourceLineNo">2540</span>    this.conf = new CompoundConfiguration()<a name="line.2540"></a>
+<span class="sourceLineNo">2541</span>            .add(conf)<a name="line.2541"></a>
+<span class="sourceLineNo">2542</span>            .addBytesMap(getColumnFamilyDescriptor().getValues());<a name="line.2542"></a>
+<span class="sourceLineNo">2543</span>    this.storeEngine.compactionPolicy.setConf(conf);<a name="line.2543"></a>
+<span class="sourceLineNo">2544</span>    this.offPeakHours = OffPeakHours.getInstance(conf);<a name="line.2544"></a>
 <span class="sourceLineNo">2545</span>  }<a name="line.2545"></a>
 <span class="sourceLineNo">2546</span><a name="line.2546"></a>
 <span class="sourceLineNo">2547</span>  /**<a name="line.2547"></a>
 <span class="sourceLineNo">2548</span>   * {@inheritDoc}<a name="line.2548"></a>
 <span class="sourceLineNo">2549</span>   */<a name="line.2549"></a>
 <span class="sourceLineNo">2550</span>  @Override<a name="line.2550"></a>
-<span class="sourceLineNo">2551</span>  public void onConfigurationChange(Configuration conf) {<a name="line.2551"></a>
-<span class="sourceLineNo">2552</span>    this.conf = new CompoundConfiguration()<a name="line.2552"></a>
-<span class="sourceLineNo">2553</span>            .add(conf)<a name="line.2553"></a>
-<span class="sourceLineNo">2554</span>            .addBytesMap(getColumnFamilyDescriptor().getValues());<a name="line.2554"></a>
-<span class="sourceLineNo">2555</span>    this.storeEngine.compactionPolicy.setConf(conf);<a name="line.2555"></a>
-<span class="sourceLineNo">2556</span>    this.offPeakHours = OffPeakHours.getInstance(conf);<a name="line.2556"></a>
-<span class="sourceLineNo">2557</span>  }<a name="line.2557"></a>
-<span class="sourceLineNo">2558</span><a name="line.2558"></a>
-<span class="sourceLineNo">2559</span>  /**<a name="line.2559"></a>
-<span class="sourceLineNo">2560</span>   * {@inheritDoc}<a name="line.2560"></a>
-<span class="sourceLineNo">2561</span>   */<a name="line.2561"></a>
-<span class="sourceLineNo">2562</span>  @Override<a name="line.2562"></a>
-<span class="sourceLineNo">2563</span>  public void registerChildren(ConfigurationManager manager) {<a name="line.2563"></a>
-<span class="sourceLineNo">2564</span>    // No children to register<a name="line.2564"></a>
-<span class="sourceLineNo">2565</span>  }<a name="line.2565"></a>
-<span class="sourceLineNo">2566</span><a name="line.2566"></a>
-<span class="sourceLineNo">2567</span>  /**<a name="line.2567"></a>
-<span class="sourceLineNo">2568</span>   * {@inheritDoc}<a name="line.2568"></a>
-<span class="sourceLineNo">2569</span>   */<a name="line.2569"></a>
-<span class="sourceLineNo">2570</span>  @Override<a name="line.2570"></a>
-<span class="sourceLineNo">2571</span>  public void deregisterChildren(ConfigurationManager manager) {<a name="line.2571"></a>
-<span class="sourceLineNo">2572</span>    // No children to deregister<a name="line.2572"></a>
-<span class="sourceLineNo">2573</span>  }<a name="line.2573"></a>
-<span class="sourceLineNo">2574</span><a name="line.2574"></a>
-<span class="sourceLineNo">2575</span>  @Override<a name="line.2575"></a>
-<span class="sourceLineNo">2576</span>  public double getCompactionPressure() {<a name="line.2576"></a>
-<span class="sourceLineNo">2577</span>    return storeEngine.getStoreFileManager().getCompactionPressure();<a name="line.2577"></a>
-<span class="sourceLineNo">2578</span>  }<a name="line.2578"></a>
-<span class="sourceLineNo">2579</span><a name="line.2579"></a>
-<span class="sourceLineNo">2580</span>  @Override<a name="line.2580"></a>
-<span class="sourceLineNo">2581</span>  public boolean isPrimaryReplicaStore() {<a name="line.2581"></a>
-<span class="sourceLineNo">2582</span>    return getRegionInfo().getReplicaId() == RegionInfo.DEFAULT_REPLICA_ID;<a name="line.2582"></a>
-<span class="sourceLineNo">2583</span>  }<a name="line.2583"></a>
-<span class="sourceLineNo">2584</span><a name="line.2584"></a>
-<span class="sourceLineNo">2585</span>  /**<a name="line.2585"></a>
-<span class="sourceLineNo">2586</span>   * Sets the store up for a region level snapshot operation.<a name="line.2586"></a>
-<span class="sourceLineNo">2587</span>   * @see #postSnapshotOperation()<a name="line.2587"></a>
-<span class="sourceLineNo">2588</span>   */<a name="line.2588"></a>
-<span class="sourceLineNo">2589</span>  public void preSnapshotOperation() {<a name="line.2589"></a>
-<span class="sourceLineNo">2590</span>    archiveLock.lock();<a name="line.2590"></a>
-<span class="sourceLineNo">2591</span>  }<a name="line.2591"></a>
-<span class="sourceLineNo">2592</span><a name="line.2592"></a>
-<span class="sourceLineNo">2593</span>  /**<a name="line.2593"></a>
-<span class="sourceLineNo">2594</span>   * Perform tasks needed after the completion of snapshot operation.<a name="line.2594"></a>
-<span class="sourceLineNo">2595</span>   * @see #preSnapshotOperation()<a name="line.2595"></a>
-<span class="sourceLineNo">2596</span>   */<a name="line.2596"></a>
-<span class="sourceLineNo">2597</span>  public void postSnapshotOperation() {<a name="line.2597"></a>
-<span class="sourceLineNo">2598</span>    archiveLock.unlock();<a name="line.2598"></a>
-<span class="sourceLineNo">2599</span>  }<a name="line.2599"></a>
-<span class="sourceLineNo">2600</span><a name="line.2600"></a>
-<span class="sourceLineNo">2601</span>  /**<a name="line.2601"></a>
-<span class="sourceLineNo">2602</span>   * Closes and archives the compacted files under this store<a name="line.2602"></a>
-<span class="sourceLineNo">2603</span>   */<a name="line.2603"></a>
-<span class="sourceLineNo">2604</span>  public synchronized void closeAndArchiveCompactedFiles() throws IOException {<a name="line.2604"></a>
-<span class="sourceLineNo">2605</span>    // ensure other threads do not attempt to archive the same files on close()<a name="line.2605"></a>
-<span class="sourceLineNo">2606</span>    archiveLock.lock();<a name="line.2606"></a>
-<span class="sourceLineNo">2607</span>    try {<a name="line.2607"></a>
-<span class="sourceLineNo">2608</span>      lock.readLock().lock();<a name="line.2608"></a>
-<span class="sourceLineNo">2609</span>      Collection&lt;HStoreFile&gt; copyCompactedfiles = null;<a name="line.2609"></a>
-<span class="sourceLineNo">2610</span>      try {<a name="line.2610"></a>
-<span class="sourceLineNo">2611</span>        Collection&lt;HStoreFile&gt; compactedfiles =<a name="line.2611"></a>
-<span class="sourceLineNo">2612</span>            this.getStoreEngine().getStoreFileManager().getCompactedfiles();<a name="line.2612"></a>
-<span class="sourceLineNo">2613</span>        if (CollectionUtils.isNotEmpty(compactedfiles)) {<a name="line.2613"></a>
-<span class="sourceLineNo">2614</span>          // Do a copy under read lock<a name="line.2614"></a>
-<span class="sourceLineNo">2615</span>          copyCompactedfiles = new ArrayList&lt;&gt;(compactedfiles);<a name="line.2615"></a>
-<span class="sourceLineNo">2616</span>        } else {<a name="line.2616"></a>
-<span class="sourceLineNo">2617</span>          LOG.trace("No compacted files to archive");<a name="line.2617"></a>
-<span class="sourceLineNo">2618</span>        }<a name="line.2618"></a>
-<span class="sourceLineNo">2619</span>      } finally {<a name="line.2619"></a>
-<span class="sourceLineNo">2620</span>        lock.readLock().unlock();<a name="line.2620"></a>
-<span class="sourceLineNo">2621</span>      }<a name="line.2621"></a>
-<span class="sourceLineNo">2622</span>      if (CollectionUtils.isNotEmpty(copyCompactedfiles)) {<a name="line.2622"></a>
-<span class="sourceLineNo">2623</span>        removeCompactedfiles(copyCompactedfiles, true);<a name="line.2623"></a>
-<span class="sourceLineNo">2624</span>      }<a name="line.2624"></a>
-<span class="sourceLineNo">2625</span>    } finally {<a name="line.2625"></a>
-<span class="sourceLineNo">2626</span>      archiveLock.unlock();<a name="line.2626"></a>
-<span class="sourceLineNo">2627</span>    }<a name="line.2627"></a>
-<span class="sourceLineNo">2628</span>  }<a name="line.2628"></a>
-<span class="sourceLineNo">2629</span><a name="line.2629"></a>
-<span class="sourceLineNo">2630</span>  /**<a name="line.2630"></a>
-<span class="sourceLineNo">2631</span>   * Archives and removes the compacted files<a name="line.2631"></a>
-<span class="sourceLineNo">2632</span>   * @param compactedfiles The compacted files in this store that are not active in reads<a name="line.2632"></a>
-<span class="sourceLineNo">2633</span>   * @param evictOnClose true if blocks should be evicted from the cache when an HFile reader is<a name="line.2633"></a>
-<span class="sourceLineNo">2634</span>   *   closed, false if not<a name="line.2634"></a>
-<span class="sourceLineNo">2635</span>   */<a name="line.2635"></a>
-<span class="sourceLineNo">2636</span>  private void removeCompactedfiles(Collection&lt;HStoreFile&gt; compactedfiles, boolean evictOnClose)<a name="line.2636"></a>
-<span class="sourceLineNo">2637</span>      throws IOException {<a name="line.2637"></a>
-<span class="sourceLineNo">2638</span>    final List&lt;HStoreFile&gt; filesToRemove = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2638"></a>
-<span class="sourceLineNo">2639</span>    final List&lt;Long&gt; storeFileSizes = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2639"></a>
-<span class="sourceLineNo">2640</span>    for (final HStoreFile file : compactedfiles) {<a name="line.2640"></a>
-<span class="sourceLineNo">2641</span>      synchronized (file) {<a name="line.2641"></a>
-<span class="sourceLineNo">2642</span>        try {<a name="line.2642"></a>
-<span class="sourceLineNo">2643</span>          StoreFileReader r = file.getReader();<a name="line.2643"></a>
-<span class="sourceLineNo">2644</span>          if (r == null) {<a name="line.2644"></a>
-<span class="sourceLineNo">2645</span>            LOG.debug("The file {} was closed but still not archived", file);<a name="line.2645"></a>
-<span class="sourceLineNo">2646</span>            // HACK: Temporarily re-open the reader so we can get the size of the file. Ideally,<a name="line.2646"></a>
-<span class="sourceLineNo">2647</span>            // we should know the size of an HStoreFile without having to ask the HStoreFileReader<a name="line.2647"></a>
-<span class="sourceLineNo">2648</span>            // for that.<a name="line.2648"></a>
-<span class="sourceLineNo">2649</span>            long length = getStoreFileSize(file);<a name="line.2649"></a>
-<span class="sourceLineNo">2650</span>            filesToRemove.add(file);<a name="line.2650"></a>
-<span class="sourceLineNo">2651</span>            storeFileSizes.add(length);<a name="line.2651"></a>
-<span class="sourceLineNo">2652</span>            continue;<a name="line.2652"></a>
-<span class="sourceLineNo">2653</span>          }<a name="line.2653"></a>
-<span class="sourceLineNo">2654</span><a name="line.2654"></a>
-<span class="sourceLineNo">2655</span>          if (file.isCompactedAway() &amp;&amp; !file.isReferencedInReads()) {<a name="line.2655"></a>
-<span class="sourceLineNo">2656</span>            // Even if deleting fails we need not bother as any new scanners won't be<a name="line.2656"></a>
-<span class="sourceLineNo">2657</span>            // able to use the compacted file as the status is already compactedAway<a name="line.2657"></a>
-<span class="sourceLineNo">2658</span>            LOG.trace("Closing and archiving the file {}", file);<a name="line.2658"></a>
-<span class="sourceLineNo">2659</span>            // Copy the file size before closing the reader<a name="line.2659"></a>
-<span class="sourceLineNo">2660</span>            final long length = r.length();<a name="line.2660"></a>
-<span class="sourceLineNo">2661</span>            r.close(evictOnClose);<a name="line.2661"></a>
-<span class="sourceLineNo">2662</span>            // Just close and return<a name="line.2662"></a>
-<span class="sourceLineNo">2663</span>            filesToRemove.add(file);<a name="line.2663"></a>
-<span class="sourceLineNo">2664</span>            // Only add the length if we successfully added the file to `filesToRemove`<a name="line.2664"></a>
-<span class="sourceLineNo">2665</span>            storeFileSizes.add(length);<a name="line.2665"></a>
-<span class="sourceLineNo">2666</span>          } else {<a name="line.2666"></a>
-<span class="sourceLineNo">2667</span>            LOG.info("Can't archive compacted file " + file.getPath()<a name="line.2667"></a>
-<span class="sourceLineNo">2668</span>                + " because of either isCompactedAway=" + file.isCompactedAway()<a name="line.2668"></a>
-<span class="sourceLineNo">2669</span>                + " or file has reference, isReferencedInReads=" + file.isReferencedInReads()<a name="line.2669"></a>
-<span class="sourceLineNo">2670</span>                + ", refCount=" + r.getRefCount() + ", skipping for now.");<a name="line.2670"></a>
-<span class="sourceLineNo">2671</span>          }<a name="line.2671"></a>
-<span class="sourceLineNo">2672</span>        } catch (Exception e) {<a name="line.2672"></a>
-<span class="sourceLineNo">2673</span>          LOG.error("Exception while trying to close the compacted store file {}", file.getPath(),<a name="line.2673"></a>
-<span class="sourceLineNo">2674</span>              e);<a name="line.2674"></a>
-<span class="sourceLineNo">2675</span>        }<a name="line.2675"></a>
-<span class="sourceLineNo">2676</span>      }<a name="line.2676"></a>
-<span class="sourceLineNo">2677</span>    }<a name="line.2677"></a>
-<span class="sourceLineNo">2678</span>    if (this.isPrimaryReplicaStore()) {<a name="line.2678"></a>
-<span class="sourceLineNo">2679</span>      // Only the primary region is allowed to move the file to archive.<a name="line.2679"></a>
-<span class="sourceLineNo">2680</span>      // The secondary region does not move the files to archive. Any active reads from<a name="line.2680"></a>
-<span class="sourceLineNo">2681</span>      // the secondary region will still work because the file as such has active readers on it.<a name="line.2681"></a>
-<span class="sourceLineNo">2682</span>      if (!filesToRemove.isEmpty()) {<a name="line.2682"></a>
-<span class="sourceLineNo">2683</span>        LOG.debug("Moving the files {} to archive", filesToRemove);<a name="line.2683"></a>
-<span class="sourceLineNo">2684</span>        // Only if this is successful it has to be removed<a name="line.2684"></a>
-<span class="sourceLineNo">2685</span>        try {<a name="line.2685"></a>
-<span class="sourceLineNo">2686</span>          getRegionFileSystem()<a name="line.2686"></a>
-<span class="sourceLineNo">2687</span>            .removeStoreFiles(this.getColumnFamilyDescriptor().getNameAsString(), filesToRemove);<a name="line.2687"></a>
-<span class="sourceLineNo">2688</span>        } catch (FailedArchiveException fae) {<a name="line.2688"></a>
-<span class="sourceLineNo">2689</span>          // Even if archiving some files failed, we still need to clear out any of the<a name="line.2689"></a>
-<span class="sourceLineNo">2690</span>          // files which were successfully archived.  Otherwise we will receive a<a name="line.2690"></a>
-<span class="sourceLineNo">2691</span>          // FileNotFoundException when we attempt to re-archive them in the next go around.<a name="line.2691"></a>
-<span class="sourceLineNo">2692</span>          Collection&lt;Path&gt; failedFiles = fae.getFailedFiles();<a name="line.2692"></a>
-<span class="sourceLineNo">2693</span>          Iterator&lt;HStoreFile&gt; iter = filesToRemove.iterator();<a name="line.2693"></a>
-<span class="sourceLineNo">2694</span>          Iterator&lt;Long&gt; sizeIter = storeFileSizes.iterator();<a name="line.2694"></a>
-<span class="sourceLineNo">2695</span>          while (iter.hasNext()) {<a name="line.2695"></a>
-<span class="sourceLineNo">2696</span>            sizeIter.next();<a name="line.2696"></a>
-<span class="sourceLineNo">2697</span>            if (failedFiles.contains(iter.next().getPath())) {<a name="line.2697"></a>
-<span class="sourceLineNo">2698</span>              iter.remove();<a name="line.2698"></a>
-<span class="sourceLineNo">2699</span>              sizeIter.remove();<a name="line.2699"></a>
-<span class="sourceLineNo">2700</span>            }<a name="line.2700"></a>
-<span class="sourceLineNo">2701</span>          }<a name="line.2701"></a>
-<span class="sourceLineNo">2702</span>          if (!filesToRemove.isEmpty()) {<a name="line.2702"></a>
-<span class="sourceLineNo">2703</span>            clearCompactedfiles(filesToRemove);<a name="line.2703"></a>
-<span class="sourceLineNo">2704</span>          }<a name="line.2704"></a>
-<span class="sourceLineNo">2705</span>          throw fae;<a name="line.2705"></a>
-<span class="sourceLineNo">2706</span>        }<a name="line.2706"></a>
-<span class="sourceLineNo">2707</span>      }<a name="line.2707"></a>
-<span class="sourceLineNo">2708</span>    }<a name="line.2708"></a>
-<span class="sourceLineNo">2709</span>    if (!filesToRemove.isEmpty()) {<a name="line.2709"></a>
-<span class="sourceLineNo">2710</span>      // Clear the compactedfiles from the store file manager<a name="line.2710"></a>
-<span class="sourceLineNo">2711</span>      clearCompactedfiles(filesToRemove);<a name="line.2711"></a>
-<span class="sourceLineNo">2712</span>      // Try to send report of this archival to the Master for updating quota usage faster<a name="line.2712"></a>
-<span class="sourceLineNo">2713</span>      reportArchivedFilesForQuota(filesToRemove, storeFileSizes);<a name="line.2713"></a>
-<span class="sourceLineNo">2714</span>    }<a name="line.2714"></a>
-<span class="sourceLineNo">2715</span>  }<a name="line.2715"></a>
-<span class="sourceLineNo">2716</span><a name="line.2716"></a>
-<span class="sourceLineNo">2717</span>  /**<a name="line.2717"></a>
-<span class="sourceLineNo">2718</span>   * Computes the length of a store file without succumbing to any errors along the way. If an<a name="line.2718"></a>
-<span class="sourceLineNo">2719</span>   * error is encountered, the implementation returns {@code 0} instead of the actual size.<a name="line.2719"></a>
-<span class="sourceLineNo">2720</span>   *<a name="line.2720"></a>
-<span class="sourceLineNo">2721</span>   * @param file The file to compute the size of.<a name="line.2721"></a>
-<span class="sourceLineNo">2722</span>   * @return The size in bytes of the provided {@code file}.<a name="line.2722"></a>
-<span class="sourceLineNo">2723</span>   */<a name="line.2723"></a>
-<span class="sourceLineNo">2724</span>  long getStoreFileSize(HStoreFile file) {<a name="line.2724"></a>
-<span class="sourceLineNo">2725</span>    long length = 0;<a name="line.2725"></a>
-<span class="sourceLineNo">2726</span>    try {<a name="line.2726"></a>
-<span class="sourceLineNo">2727</span>      file.initReader();<a name="line.2727"></a>
-<span class="sourceLineNo">2728</span>      length = file.getReader().length();<a name="line.2728"></a>
-<span class="sourceLineNo">2729</span>    } catch (IOException e) {<a name="line.2729"></a>
-<span class="sourceLineNo">2730</span>      LOG.trace("Failed to open reader when trying to compute store file size for {}, ignoring",<a name="line.2730"></a>
-<span class="sourceLineNo">2731</span>        file, e);<a name="line.2731"></a>
-<span class="sourceLineNo">2732</span>    } finally {<a name="line.2732"></a>
-<span class="sourceLineNo">2733</span>      try {<a name="line.2733"></a>
-<span class="sourceLineNo">2734</span>        file.closeStoreFile(<a name="line.2734"></a>
-<span class="sourceLineNo">2735</span>            file.getCacheConf() != null ? file.getCacheConf().shouldEvictOnClose() : true);<a name="line.2735"></a>
-<span class="sourceLineNo">2736</span>      } catch (IOException e) {<a name="line.2736"></a>
-<span class="sourceLineNo">2737</span>        LOG.trace("Failed to close reader after computing store file size for {}, ignoring",<a name="line.2737"></a>
-<span class="sourceLineNo">2738</span>          file, e);<a name="line.2738"></a>
-<span class="sourceLineNo">2739</span>      }<a name="line.2739"></a>
-<span class="sourceLineNo">2740</span>    }<a name="line.2740"></a>
-<span class="sourceLineNo">2741</span>    return length;<a name="line.2741"></a>
-<span class="sourceLineNo">2742</span>  }<a name="line.2742"></a>
-<span class="sourceLineNo">2743</span><a name="line.2743"></a>
-<span class="sourceLineNo">2744</span>  public Long preFlushSeqIDEstimation() {<a name="line.2744"></a>
-<span class="sourceLineNo">2745</span>    return memstore.preFlushSeqIDEstimation();<a name="line.2745"></a>
-<span class="sourceLineNo">2746</span>  }<a name="line.2746"></a>
-<span class="sourceLineNo">2747</span><a name="line.2747"></a>
-<span class="sourceLineNo">2748</span>  @Override<a name="line.2748"></a>
-<span class="sourceLineNo">2749</span>  public boolean isSloppyMemStore() {<a name="line.2749"></a>
-<span class="sourceLineNo">2750</span>    return this.memstore.isSloppy();<a name="line.2750"></a>
-<span class="sourceLineNo">2751</span>  }<a name="line.2751"></a>
-<span class="sourceLineNo">2752</span><a name="line.2752"></a>
-<span class="sourceLineNo">2753</span>  private void clearCompactedfiles(List&lt;HStoreFile&gt; filesToRemove) throws IOException {<a name="line.2753"></a>
-<span class="sourceLineNo">2754</span>    LOG.trace("Clearing the compacted file {} from this store", filesToRemove);<a name="line.2754"></a>
-<span class="sourceLineNo">2755</span>    try {<a name="line.2755"></a>
-<span class="sourceLineNo">2756</span>      lock.writeLock().lock();<a name="line.2756"></a>
-<span class="sourceLineNo">2757</span>      this.getStoreEngine().getStoreFileManager().removeCompactedFiles(filesToRemove);<a name="line.2757"></a>
-<span class="sourceLineNo">2758</span>    } finally {<a name="line.2758"></a>
-<span class="sourceLineNo">2759</span>      lock.writeLock().unlock();<a name="line.2759"></a>
-<span class="sourceLineNo">2760</span>    }<a name="line.2760"></a>
-<span class="sourceLineNo">2761</span>  }<a name="line.2761"></a>
-<span class="sourceLineNo">2762</span><a name="line.2762"></a>
-<span class="sourceLineNo">2763</span>  void reportArchivedFilesForQuota(List&lt;? extends StoreFile&gt; archivedFiles, List&lt;Long&gt; fileSizes) {<a name="line.2763"></a>
-<span class="sourceLineNo">2764</span>    // Sanity check from the caller<a name="line.2764"></a>
-<span class="sourceLineNo">2765</span>    if (archivedFiles.size() != fileSizes.size()) {<a name="line.2765"></a>
-<span class="sourceLineNo">2766</span>      throw new RuntimeException("Coding error: should never see lists of varying size");<a name="line.2766"></a>
+<span class="sourceLineNo">2551</span>  public void registerChildren(ConfigurationManager manager) {<a name="line.2551"></a>
+<span class="sourceLineNo">2552</span>    // No children to register<a name="line.2552"></a>
+<span class="sourceLineNo">2553</span>  }<a name="line.2553"></a>
+<span class="sourceLineNo">2554</span><a name="line.2554"></a>
+<span class="sourceLineNo">2555</span>  /**<a name="line.2555"></a>
+<span class="sourceLineNo">2556</span>   * {@inheritDoc}<a name="line.2556"></a>
+<span class="sourceLineNo">2557</span>   */<a name="line.2557"></a>
+<span class="sourceLineNo">2558</span>  @Override<a name="line.2558"></a>
+<span class="sourceLineNo">2559</span>  public void deregisterChildren(ConfigurationManager manager) {<a name="line.2559"></a>
+<span class="sourceLineNo">2560</span>    // No children to deregister<a name="line.2560"></a>
+<span class="sourceLineNo">2561</span>  }<a name="line.2561"></a>
+<span class="sourceLineNo">2562</span><a name="line.2562"></a>
+<span class="sourceLineNo">2563</span>  @Override<a name="line.2563"></a>
+<span class="sourceLineNo">2564</span>  public double getCompactionPressure() {<a name="line.2564"></a>
+<span class="sourceLineNo">2565</span>    return storeEngine.getStoreFileManager().getCompactionPressure();<a name="line.2565"></a>
+<span class="sourceLineNo">2566</span>  }<a name="line.2566"></a>
+<span class="sourceLineNo">2567</span><a name="line.2567"></a>
+<span class="sourceLineNo">2568</span>  @Override<a name="line.2568"></a>
+<span class="sourceLineNo">2569</span>  public boolean isPrimaryReplicaStore() {<a name="line.2569"></a>
+<span class="sourceLineNo">2570</span>    return getRegionInfo().getReplicaId() == RegionInfo.DEFAULT_REPLICA_ID;<a name="line.2570"></a>
+<span class="sourceLineNo">2571</span>  }<a name="line.2571"></a>
+<span class="sourceLineNo">2572</span><a name="line.2572"></a>
+<span class="sourceLineNo">2573</span>  /**<a name="line.2573"></a>
+<span class="sourceLineNo">2574</span>   * Sets the store up for a region level snapshot operation.<a name="line.2574"></a>
+<span class="sourceLineNo">2575</span>   * @see #postSnapshotOperation()<a name="line.2575"></a>
+<span class="sourceLineNo">2576</span>   */<a name="line.2576"></a>
+<span class="sourceLineNo">2577</span>  public void preSnapshotOperation() {<a name="line.2577"></a>
+<span class="sourceLineNo">2578</span>    archiveLock.lock();<a name="line.2578"></a>
+<span class="sourceLineNo">2579</span>  }<a name="line.2579"></a>
+<span class="sourceLineNo">2580</span><a name="line.2580"></a>
+<span class="sourceLineNo">2581</span>  /**<a name="line.2581"></a>
+<span class="sourceLineNo">2582</span>   * Perform tasks needed after the completion of snapshot operation.<a name="line.2582"></a>
+<span class="sourceLineNo">2583</span>   * @see #preSnapshotOperation()<a name="line.2583"></a>
+<span class="sourceLineNo">2584</span>   */<a name="line.2584"></a>
+<span class="sourceLineNo">2585</span>  public void postSnapshotOperation() {<a name="line.2585"></a>
+<span class="sourceLineNo">2586</span>    archiveLock.unlock();<a name="line.2586"></a>
+<span class="sourceLineNo">2587</span>  }<a name="line.2587"></a>
+<span class="sourceLineNo">2588</span><a name="line.2588"></a>
+<span class="sourceLineNo">2589</span>  /**<a name="line.2589"></a>
+<span class="sourceLineNo">2590</span>   * Closes and archives the compacted files under this store<a name="line.2590"></a>
+<span class="sourceLineNo">2591</span>   */<a name="line.2591"></a>
+<span class="sourceLineNo">2592</span>  public synchronized void closeAndArchiveCompactedFiles() throws IOException {<a name="line.2592"></a>
+<span class="sourceLineNo">2593</span>    // ensure other threads do not attempt to archive the same files on close()<a name="line.2593"></a>
+<span class="sourceLineNo">2594</span>    archiveLock.lock();<a name="line.2594"></a>
+<span class="sourceLineNo">2595</span>    try {<a name="line.2595"></a>
+<span class="sourceLineNo">2596</span>      lock.readLock().lock();<a name="line.2596"></a>
+<span class="sourceLineNo">2597</span>      Collection&lt;HStoreFile&gt; copyCompactedfiles = null;<a name="line.2597"></a>
+<span class="sourceLineNo">2598</span>      try {<a name="line.2598"></a>
+<span class="sourceLineNo">2599</span>        Collection&lt;HStoreFile&gt; compactedfiles =<a name="line.2599"></a>
+<span class="sourceLineNo">2600</span>            this.getStoreEngine().getStoreFileManager().getCompactedfiles();<a name="line.2600"></a>
+<span class="sourceLineNo">2601</span>        if (CollectionUtils.isNotEmpty(compactedfiles)) {<a name="line.2601"></a>
+<span class="sourceLineNo">2602</span>          // Do a copy under read lock<a name="line.2602"></a>
+<span class="sourceLineNo">2603</span>          copyCompactedfiles = new ArrayList&lt;&gt;(compactedfiles);<a name="line.2603"></a>
+<span class="sourceLineNo">2604</span>        } else {<a name="line.2604"></a>
+<span class="sourceLineNo">2605</span>          LOG.trace("No compacted files to archive");<a name="line.2605"></a>
+<span class="sourceLineNo">2606</span>        }<a name="line.2606"></a>
+<span class="sourceLineNo">2607</span>      } finally {<a name="line.2607"></a>
+<span class="sourceLineNo">2608</span>        lock.readLock().unlock();<a name="line.2608"></a>
+<span class="sourceLineNo">2609</span>      }<a name="line.2609"></a>
+<span class="sourceLineNo">2610</span>      if (CollectionUtils.isNotEmpty(copyCompactedfiles)) {<a name="line.2610"></a>
+<span class="sourceLineNo">2611</span>        removeCompactedfiles(copyCompactedfiles, true);<a name="line.2611"></a>
+<span class="sourceLineNo">2612</span>      }<a name="line.2612"></a>
+<span class="sourceLineNo">2613</span>    } finally {<a name="line.2613"></a>
+<span class="sourceLineNo">2614</span>      archiveLock.unlock();<a name="line.2614"></a>
+<span class="sourceLineNo">2615</span>    }<a name="line.2615"></a>
+<span class="sourceLineNo">2616</span>  }<a name="line.2616"></a>
+<span class="sourceLineNo">2617</span><a name="line.2617"></a>
+<span class="sourceLineNo">2618</span>  /**<a name="line.2618"></a>
+<span class="sourceLineNo">2619</span>   * Archives and removes the compacted files<a name="line.2619"></a>
+<span class="sourceLineNo">2620</span>   * @param compactedfiles The compacted files in this store that are not active in reads<a name="line.2620"></a>
+<span class="sourceLineNo">2621</span>   * @param evictOnClose true if blocks should be evicted from the cache when an HFile reader is<a name="line.2621"></a>
+<span class="sourceLineNo">2622</span>   *   closed, false if not<a name="line.2622"></a>
+<span class="sourceLineNo">2623</span>   */<a name="line.2623"></a>
+<span class="sourceLineNo">2624</span>  private void removeCompactedfiles(Collection&lt;HStoreFile&gt; compactedfiles, boolean evictOnClose)<a name="line.2624"></a>
+<span class="sourceLineNo">2625</span>      throws IOException {<a name="line.2625"></a>
+<span class="sourceLineNo">2626</span>    final List&lt;HStoreFile&gt; filesToRemove = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2626"></a>
+<span class="sourceLineNo">2627</span>    final List&lt;Long&gt; storeFileSizes = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2627"></a>
+<span class="sourceLineNo">2628</span>    for (final HStoreFile file : compactedfiles) {<a name="line.2628"></a>
+<span class="sourceLineNo">2629</span>      synchronized (file) {<a name="line.2629"></a>
+<span class="sourceLineNo">2630</span>        try {<a name="line.2630"></a>
+<span class="sourceLineNo">2631</span>          StoreFileReader r = file.getReader();<a name="line.2631"></a>
+<span class="sourceLineNo">2632</span>          if (r == null) {<a name="line.2632"></a>
+<span class="sourceLineNo">2633</span>            LOG.debug("The file {} was closed but still not archived", file);<a name="line.2633"></a>
+<span class="sourceLineNo">2634</span>            // HACK: Temporarily re-open the reader so we can get the size of the file. Ideally,<a name="line.2634"></a>
+<span class="sourceLineNo">2635</span>            // we should know the size of an HStoreFile without having to ask the HStoreFileReader<a name="line.2635"></a>
+<span class="sourceLineNo">2636</span>            // for that.<a name="line.2636"></a>
+<span class="sourceLineNo">2637</span>            long length = getStoreFileSize(file);<a name="line.2637"></a>
+<span class="sourceLineNo">2638</span>            filesToRemove.add(file);<a name="line.2638"></a>
+<span class="sourceLineNo">2639</span>            storeFileSizes.add(length);<a name="line.2639"></a>
+<span class="sourceLineNo">2640</span>            continue;<a name="line.2640"></a>
+<span class="sourceLineNo">2641</span>          }<a name="line.2641"></a>
+<span class="sourceLineNo">2642</span><a name="line.2642"></a>
+<span class="sourceLineNo">2643</span>          if (file.isCompactedAway() &amp;&amp; !file.isReferencedInReads()) {<a name="line.2643"></a>
+<span class="sourceLineNo">2644</span>            // Even if deleting fails we need not bother as any new scanners won't be<a name="line.2644"></a>
+<span class="sourceLineNo">2645</span>            // able to use the compacted file as the status is already compactedAway<a name="line.2645"></a>
+<span class="sourceLineNo">2646</span>            LOG.trace("Closing and archiving the file {}", file);<a name="line.2646"></a>
+<span class="sourceLineNo">2647</span>            // Copy the file size before closing the reader<a name="line.2647"></a>
+<span class="sourceLineNo">2648</span>            final long length = r.length();<a name="line.2648"></a>
+<span class="sourceLineNo">2649</span>            r.close(evictOnClose);<a name="line.2649"></a>
+<span class="sourceLineNo">2650</span>            // Just close and return<a name="line.2650"></a>
+<span class="sourceLineNo">2651</span>            filesToRemove.add(file);<a name="line.2651"></a>
+<span class="sourceLineNo">2652</span>            // Only add the length if we successfully added the file to `filesToRemove`<a name="line.2652"></a>
+<span class="sourceLineNo">2653</span>            storeFileSizes.add(length);<a name="line.2653"></a>
+<span class="sourceLineNo">2654</span>          } else {<a name="line.2654"></a>
+<span class="sourceLineNo">2655</span>            LOG.info("Can't archive compacted file " + file.getPath()<a name="line.2655"></a>
+<span class="sourceLineNo">2656</span>                + " because of either isCompactedAway=" + file.isCompactedAway()<a name="line.2656"></a>
+<span class="sourceLineNo">2657</span>                + " or file has reference, isReferencedInReads=" + file.isReferencedInReads()<a name="line.2657"></a>
+<span class="sourceLineNo">2658</span>                + ", refCount=" + r.getRefCount() + ", skipping for now.");<a name="line.2658"></a>
+<span class="sourceLineNo">2659</span>          }<a name="line.2659"></a>
+<span class="sourceLineNo">2660</span>        } catch (Exception e) {<a name="line.2660"></a>
+<span class="sourceLineNo">2661</span>          LOG.error("Exception while trying to close the compacted store file {}", file.getPath(),<a name="line.2661"></a>
+<span class="sourceLineNo">2662</span>              e);<a name="line.2662"></a>
+<span class="sourceLineNo">2663</span>        }<a name="line.2663"></a>
+<span class="sourceLineNo">2664</span>      }<a name="line.2664"></a>
+<span class="sourceLineNo">2665</span>    }<a name="line.2665"></a>
+<span class="sourceLineNo">2666</span>    if (this.isPrimaryReplicaStore()) {<a name="line.2666"></a>
+<span class="sourceLineNo">2667</span>      // Only the primary region is allowed to move the file to archive.<a name="line.2667"></a>
+<span class="sourceLineNo">2668</span>      // The secondary region does not move the files to archive. Any active reads from<a name="line.2668"></a>
+<span class="sourceLineNo">2669</span>      // the secondary region will still work because the file as such has active readers on it.<a name="line.2669"></a>
+<span class="sourceLineNo">2670</span>      if (!filesToRemove.isEmpty()) {<a name="line.2670"></a>
+<span class="sourceLineNo">2671</span>        LOG.debug("Moving the files {} to archive", filesToRemove);<a name="line.2671"></a>
+<span class="sourceLineNo">2672</span>        // Only if this is successful it has to be removed<a name="line.2672"></a>
+<span class="sourceLineNo">2673</span>        try {<a name="line.2673"></a>
+<span class="sourceLineNo">2674</span>          getRegionFileSystem()<a name="line.2674"></a>
+<span class="sourceLineNo">2675</span>            .removeStoreFiles(this.getColumnFamilyDescriptor().getNameAsString(), filesToRemove);<a name="line.2675"></a>
+<span class="sourceLineNo">2676</span>        } catch (FailedArchiveException fae) {<a name="line.2676"></a>
+<span class="sourceLineNo">2677</span>          // Even if archiving some files failed, we still need to clear out any of the<a name="line.2677"></a>
+<span class="sourceLineNo">2678</span>          // files which were successfully archived.  Otherwise we will receive a<a name="line.2678"></a>
+<span class="sourceLineNo">2679</span>          // FileNotFoundException when we attempt to re-archive them in the next go around.<a name="line.2679"></a>
+<span class="sourceLineNo">2680</span>          Collection&lt;Path&gt; failedFiles = fae.getFailedFiles();<a name="line.2680"></a>
+<span class="sourceLineNo">2681</span>          Iterator&lt;HStoreFile&gt; iter = filesToRemove.iterator();<a name="line.2681"></a>
+<span class="sourceLineNo">2682</span>          Iterator&lt;Long&gt; sizeIter = storeFileSizes.iterator();<a name="line.2682"></a>
+<span class="sourceLineNo">2683</span>          while (iter.hasNext()) {<a name="line.2683"></a>
+<span class="sourceLineNo">2684</span>            sizeIter.next();<a name="line.2684"></a>
+<span class="sourceLineNo">2685</span>            if (failedFiles.contains(iter.next().getPath())) {<a name="line.2685"></a>
+<span class="sourceLineNo">2686</span>              iter.remove();<a name="line.2686"></a>
+<span class="sourceLineNo">2687</span>              sizeIter.remove();<a name="line.2687"></a>
+<span class="sourceLineNo">2688</span>            }<a name="line.2688"></a>
+<span class="sourceLineNo">2689</span>          }<a name="line.2689"></a>
+<span class="sourceLineNo">2690</span>          if (!filesToRemove.isEmpty()) {<a name="line.2690"></a>
+<span class="sourceLineNo">2691</span>            clearCompactedfiles(filesToRemove);<a name="line.2691"></a>
+<span class="sourceLineNo">2692</span>          }<a name="line.2692"></a>
+<span class="sourceLineNo">2693</span>          throw fae;<a name="line.2693"></a>
+<span class="sourceLineNo">2694</span>        }<a name="line.2694"></a>
+<span class="sourceLineNo">2695</span>      }<a name="line.2695"></a>
+<span class="sourceLineNo">2696</span>    }<a name="line.2696"></a>
+<span class="sourceLineNo">2697</span>    if (!filesToRemove.isEmpty()) {<a name="line.2697"></a>
+<span class="sourceLineNo">2698</span>      // Clear the compactedfiles from the store file manager<a name="line.2698"></a>
+<span class="sourceLineNo">2699</span>      clearCompactedfiles(filesToRemove);<a name="line.2699"></a>
+<span class="sourceLineNo">2700</span>      // Try to send report of this archival to the Master for updating quota usage faster<a name="line.2700"></a>
+<span class="sourceLineNo">2701</span>      reportArchivedFilesForQuota(filesToRemove, storeFileSizes);<a name="line.2701"></a>
+<span class="sourceLineNo">2702</span>    }<a name="line.2702"></a>
+<span class="sourceLineNo">2703</span>  }<a name="line.2703"></a>
+<span class="sourceLineNo">2704</span><a name="line.2704"></a>
+<span class="sourceLineNo">2705</span>  /**<a name="line.2705"></a>
+<span class="sourceLineNo">2706</span>   * Computes the length of a store file without succumbing to any errors along the way. If an<a name="line.2706"></a>
+<span class="sourceLineNo">2707</span>   * error is encountered, the implementation returns {@code 0} instead of the actual size.<a name="line.2707"></a>
+<span class="sourceLineNo">2708</span>   *<a name="line.2708"></a>
+<span class="sourceLineNo">2709</span>   * @param file The file to compute the size of.<a name="line.2709"></a>
+<span class="sourceLineNo">2710</span>   * @return The size in bytes of the provided {@code file}.<a name="line.2710"></a>
+<span class="sourceLineNo">2711</span>   */<a name="line.2711"></a>
+<span class="sourceLineNo">2712</span>  long getStoreFileSize(HStoreFile file) {<a name="line.2712"></a>
+<span class="sourceLineNo">2713</span>    long length = 0;<a name="line.2713"></a>
+<span class="sourceLineNo">2714</span>    try {<a name="line.2714"></a>
+<span class="sourceLineNo">2715</span>      file.initReader();<a name="line.2715"></a>
+<span class="sourceLineNo">2716</span>      length = file.getReader().length();<a name="line.2716"></a>
+<span class="sourceLineNo">2717</span>    } catch (IOException e) {<a name="line.2717"></a>
+<span class="sourceLineNo">2718</span>      LOG.trace("Failed to open reader when trying to compute store file size for {}, ignoring",<a name="line.2718"></a>
+<span class="sourceLineNo">2719</span>        file, e);<a name="line.2719"></a>
+<span class="sourceLineNo">2720</span>    } finally {<a name="line.2720"></a>
+<span class="sourceLineNo">2721</span>      try {<a name="line.2721"></a>
+<span class="sourceLineNo">2722</span>        file.closeStoreFile(<a name="line.2722"></a>
+<span class="sourceLineNo">2723</span>            file.getCacheConf() != null ? file.getCacheConf().shouldEvictOnClose() : true);<a name="line.2723"></a>
+<span class="sourceLineNo">2724</span>      } catch (IOException e) {<a name="line.2724"></a>
+<span class="sourceLineNo">2725</span>        LOG.trace("Failed to close reader after computing store file size for {}, ignoring",<a name="line.2725"></a>
+<span class="sourceLineNo">2726</span>          file, e);<a name="line.2726"></a>
+<span class="sourceLineNo">2727</span>      }<a name="line.2727"></a>
+<span class="sourceLineNo">2728</span>    }<a name="line.2728"></a>
+<span class="sourceLineNo">2729</span>    return length;<a name="line.2729"></a>
+<span class="sourceLineNo">2730</span>  }<a name="line.2730"></a>
+<span class="sourceLineNo">2731</span><a name="line.2731"></a>
+<span class="sourceLineNo">2732</span>  public Long preFlushSeqIDEstimation() {<a name="line.2732"></a>
+<span class="sourceLineNo">2733</span>    return memstore.preFlushSeqIDEstimation();<a name="line.2733"></a>
+<span class="sourceLineNo">2734</span>  }<a name="line.2734"></a>
+<span class="sourceLineNo">2735</span><a name="line.2735"></a>
+<span class="sourceLineNo">2736</span>  @Override<a name="line.2736"></a>
+<span class="sourceLineNo">2737</span>  public boolean isSloppyMemStore() {<a name="line.2737"></a>
+<span class="sourceLineNo">2738</span>    return this.memstore.isSloppy();<a name="line.2738"></a>
+<span class="sourceLineNo">2739</span>  }<a name="line.2739"></a>
+<span class="sourceLineNo">2740</span><a name="line.2740"></a>
+<span class="sourceLineNo">2741</span>  private void clearCompactedfiles(List&lt;HStoreFile&gt; filesToRemove) throws IOException {<a name="line.2741"></a>
+<span class="sourceLineNo">2742</span>    LOG.trace("Clearing the compacted file {} from this store", filesToRemove);<a name="line.2742"></a>
+<span class="sourceLineNo">2743</span>    try {<a name="line.2743"></a>
+<span class="sourceLineNo">2744</span>      lock.writeLock().lock();<a name="line.2744"></a>
+<span class="sourceLineNo">2745</span>      this.getStoreEngine().getStoreFileManager().removeCompactedFiles(filesToRemove);<a name="line.2745"></a>
+<span class="sourceLineNo">2746</span>    } finally {<a name="line.2746"></a>
+<span class="sourceLineNo">2747</span>      lock.writeLock().unlock();<a name="line.2747"></a>
+<span class="sourceLineNo">2748</span>    }<a name="line.2748"></a>
+<span class="sourceLineNo">2749</span>  }<a name="line.2749"></a>
+<span class="sourceLineNo">2750</span><a name="line.2750"></a>
+<span class="sourceLineNo">2751</span>  void reportArchivedFilesForQuota(List&lt;? extends StoreFile&gt; archivedFiles, List&lt;Long&gt; fileSizes) {<a name="line.2751"></a>
+<span class="sourceLineNo">2752</span>    // Sanity check from the caller<a name="line.2752"></a>
+<span class="sourceLineNo">2753</span>    if (archivedFiles.size() != fileSizes.size()) {<a name="line.2753"></a>
+<span class="sourceLineNo">2754</span>      throw new RuntimeException("Coding error: should never see lists of varying size");<a name="line.2754"></a>
+<span class="sourceLineNo">2755</span>    }<a name="line.2755"></a>
+<span class="sourceLineNo">2756</span>    RegionServerServices rss = this.region.getRegionServerServices();<a name="line.2756"></a>
+<span class="sourceLineNo">2757</span>    if (rss == null) {<a name="line.2757"></a>
+<span class="sourceLineNo">2758</span>      return;<a name="line.2758"></a>
+<span class="sourceLineNo">2759</span>    }<a name="line.2759"></a>
+<span class="sourceLineNo">2760</span>    List&lt;Entry&lt;String,Long&gt;&gt; filesWithSizes = new ArrayList&lt;&gt;(archivedFiles.size());<a name="line.2760"></a>
+<span class="sourceLineNo">2761</span>    Iterator&lt;Long&gt; fileSizeIter = fileSizes.iterator();<a name="line.2761"></a>
+<span class="sourceLineNo">2762</span>    for (StoreFile storeFile : archivedFiles) {<a name="line.2762"></a>
+<span class="sourceLineNo">2763</span>      final long fileSize = fileSizeIter.next();<a name="line.2763"></a>
+<span class="sourceLineNo">2764</span>      if (storeFile.isHFile() &amp;&amp; fileSize != 0) {<a name="line.2764"></a>
+<span class="sourceLineNo">2765</span>        filesWithSizes.add(Maps.immutableEntry(storeFile.getPath().getName(), fileSize));<a name="line.2765"></a>
+<span class="sourceLineNo">2766</span>      }<a name="line.2766"></a>
 <span class="sourceLineNo">2767</span>    }<a name="line.2767"></a>
-<span class="sourceLineNo">2768</span>    RegionServerServices rss = this.region.getRegionServerServices();<a name="line.2768"></a>
-<span class="sourceLineNo">2769</span>    if (rss == null) {<a name="line.2769"></a>
-<span class="sourceLineNo">2770</span>      return;<a name="line.2770"></a>
+<span class="sourceLineNo">2768</span>    if (LOG.isTraceEnabled()) {<a name="line.2768"></a>
+<span class="sourceLineNo">2769</span>      LOG.trace("Files archived: " + archivedFiles + ", reporting the following to the Master: "<a name="line.2769"></a>
+<span class="sourceLineNo">2770</span>          + filesWithSizes);<a name="line.2770"></a>
 <span class="sourceLineNo">2771</span>    }<a name="line.2771"></a>
-<span class="sourceLineNo">2772</span>    List&lt;Entry&lt;String,Long&gt;&gt; filesWithSizes = new ArrayList&lt;&gt;(archivedFiles.size());<a name="line.2772"></a>
-<span class="sourceLineNo">2773</span>    Iterator&lt;Long&gt; fileSizeIter = fileSizes.iterator();<a name="line.2773"></a>
-<span class="sourceLineNo">2774</span>    for (StoreFile storeFile : archivedFiles) {<a name="line.2774"></a>
-<span class="sourceLineNo">2775</span>      final long fileSize = fileSizeIter.next();<a name="line.2775"></a>
-<span class="sourceLineNo">2776</span>      if (storeFile.isHFile() &amp;&amp; fileSize != 0) {<a name="line.2776"></a>
-<span class="sourceLineNo">2777</span>        filesWithSizes.add(Maps.immutableEntry(storeFile.getPath().getName(), fileSize));<a name="line.2777"></a>
-<span class="sourceLineNo">2778</span>      }<a name="line.2778"></a>
-<span class="sourceLineNo">2779</span>    }<a name="line.2779"></a>
-<span class="sourceLineNo">2780</span>    if (LOG.isTraceEnabled()) {<a name="line.2780"></a>
-<span class="sourceLineNo">2781</span>      LOG.trace("Files archived: " + archivedFiles + ", reporting the following to the Master: "<a name="line.2781"></a>
-<span class="sourceLineNo">2782</span>          + filesWithSizes);<a name="line.2782"></a>
-<span class="sourceLineNo">2783</span>    }<a name="line.2783"></a>
-<span class="sourceLineNo">2784</span>    boolean success = rss.reportFileArchivalForQuotas(getTableName(), filesWithSizes);<a name="line.2784"></a>
-<span class="sourceLineNo">2785</span>    if (!success) {<a name="line.2785"></a>
-<span class="sourceLineNo">2786</span>      LOG.warn("Failed to report archival of files: " + filesWithSizes);<a name="line.2786"></a>
-<span class="sourceLineNo">2787</span>    }<a name="line.2787"></a>
-<span class="sourceLineNo">2788</span>  }<a name="line.2788"></a>
-<span class="sourceLineNo">2789</span><a name="line.2789"></a>
-<span class="sourceLineNo">2790</span>  @Override<a name="line.2790"></a>
-<span class="sourceLineNo">2791</span>  public int getCurrentParallelPutCount() {<a name="line.2791"></a>
-<span class="sourceLineNo">2792</span>    return currentParallelPutCount.get();<a name="line.2792"></a>
-<span class="sourceLineNo">2793</span>  }<a name="line.2793"></a>
-<span class="sourceLineNo">2794</span><a name="line.2794"></a>
-<span class="sourceLineNo">2795</span>  public int getStoreRefCount() {<a name="line.2795"></a>
-<span class="sourceLineNo">2796</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2796"></a>
-<span class="sourceLineNo">2797</span>      .filter(sf -&gt; sf.getReader() != null).filter(HStoreFile::isHFile)<a name="line.2797"></a>
-<span class="sourceLineNo">2798</span>      .mapToInt(HStoreFile::getRefCount).sum();<a name="line.2798"></a>
-<span class="sourceLineNo">2799</span>  }<a name="line.2799"></a>
-<span class="sourceLineNo">2800</span><a name="line.2800"></a>
-<span class="sourceLineNo">2801</span>  /**<a name="line.2801"></a>
-<span class="sourceLineNo">2802</span>   * @return get maximum ref count of storeFile among all compacted HStore Files for the HStore<a name="line.2802"></a>
-<span class="sourceLineNo">2803</span>   */<a name="line.2803"></a>
-<span class="sourceLineNo">2804</span>  public int getMaxCompactedStoreFileRefCount() {<a name="line.2804"></a>
-<span class="sourceLineNo">2805</span>    OptionalInt maxCompactedStoreFileRefCount = this.storeEngine.getStoreFileManager()<a name="line.2805"></a>
-<span class="sourceLineNo">2806</span>      .getCompactedfiles()<a name="line.2806"></a>
-<span class="sourceLineNo">2807</span>      .stream()<a name="line.2807"></a>
-<span class="sourceLineNo">2808</span>      .filter(sf -&gt; sf.getReader() != null)<a name="line.2808"></a>
-<span class="sourceLineNo">2809</span>      .filter(HStoreFile::isHFile)<a name="line.2809"></a>
-<span class="sourceLineNo">2810</span>      .mapToInt(HStoreFile::getRefCount)<a name="line.2810"></a>
-<span class="sourceLineNo">2811</span>      .max();<a name="line.2811"></a>
-<span class="sourceLineNo">2812</span>    return maxCompactedStoreFileRefCount.isPresent()<a name="line.2812"></a>
-<span class="sourceLineNo">2813</span>      ? maxCompactedStoreFileRefCount.getAsInt() : 0;<a name="line.2813"></a>
-<span class="sourceLineNo">2814</span>  }<a name="line.2814"></a>
-<span class="sourceLineNo">2815</span><a name="line.2815"></a>
-<span class="sourceLineNo">2816</span>  @Override<a name="line.2816"></a>
-<span class="sourceLineNo">2817</span>  public long getMemstoreOnlyRowReadsCount() {<a name="line.2817"></a>
-<span class="sourceLineNo">2818</span>    return memstoreOnlyRowReadsCount.sum();<a name="line.2818"></a>
-<span class="sourceLineNo">2819</span>  }<a name="line.2819"></a>
-<span class="sourceLineNo">2820</span><a name="line.2820"></a>
-<span class="sourceLineNo">2821</span>  @Override<a name="line.2821"></a>
-<span class="sourceLineNo">2822</span>  public long getMixedRowReadsCount() {<a name="line.2822"></a>
-<span class="sourceLineNo">2823</span>    return mixedRowReadsCount.sum();<a name="line.2823"></a>
-<span class="sourceLineNo">2824</span>  }<a name="line.2824"></a>
-<span class="sourceLineNo">2825</span><a name="line.2825"></a>
-<span class="sourceLineNo">2826</span>  void updateMetricsStore(boolean memstoreRead) {<a name="line.2826"></a>
-<span class="sourceLineNo">2827</span>    if (memstoreRead) {<a name="line.2827"></a>
-<span class="sourceLineNo">2828</span>      memstoreOnlyRowReadsCount.increment();<a name="line.2828"></a>
-<span class="sourceLineNo">2829</span>    } else {<a name="line.2829"></a>
-<span class="sourceLineNo">2830</span>      mixedRowReadsCount.increment();<a name="line.2830"></a>
-<span class="sourceLineNo">2831</span>    }<a name="line.2831"></a>
-<span class="sourceLineNo">2832</span>  }<a name="line.2832"></a>
-<span class="sourceLineNo">2833</span>}<a name="line.2833"></a>
+<span class="sourceLineNo">2772</span>    boolean success = rss.reportFileArchivalForQuotas(getTableName(), filesWithSizes);<a name="line.2772"></a>
+<span class="sourceLineNo">2773</span>    if (!success) {<a name="line.2773"></a>
+<span class="sourceLineNo">2774</span>      LOG.warn("Failed to report archival of files: " + filesWithSizes);<a name="line.2774"></a>
+<span class="sourceLineNo">2775</span>    }<a name="line.2775"></a>
+<span class="sourceLineNo">2776</span>  }<a name="line.2776"></a>
+<span class="sourceLineNo">2777</span><a name="line.2777"></a>
+<span class="sourceLineNo">2778</span>  @Override<a name="line.2778"></a>
+<span class="sourceLineNo">2779</span>  public int getCurrentParallelPutCount() {<a name="line.2779"></a>
+<span class="sourceLineNo">2780</span>    return currentParallelPutCount.get();<a name="line.2780"></a>
+<span class="sourceLineNo">2781</span>  }<a name="line.2781"></a>
+<span class="sourceLineNo">2782</span><a name="line.2782"></a>
+<span class="sourceLineNo">2783</span>  public int getStoreRefCount() {<a name="line.2783"></a>
+<span class="sourceLineNo">2784</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2784"></a>
+<span class="sourceLineNo">2785</span>      .filter(sf -&gt; sf.getReader() != null).filter(HStoreFile::isHFile)<a name="line.2785"></a>
+<span class="sourceLineNo">2786</span>      .mapToInt(HStoreFile::getRefCount).sum();<a name="line.2786"></a>
+<span class="sourceLineNo">2787</span>  }<a name="line.2787"></a>
+<span class="sourceLineNo">2788</span><a name="line.2788"></a>
+<span class="sourceLineNo">2789</span>  /**<a name="line.2789"></a>
+<span class="sourceLineNo">2790</span>   * @return get maximum ref count of storeFile among all compacted HStore Files for the HStore<a name="line.2790"></a>
+<span class="sourceLineNo">2791</span>   */<a name="line.2791"></a>
+<span class="sourceLineNo">2792</span>  public int getMaxCompactedStoreFileRefCount() {<a name="line.2792"></a>
+<span class="sourceLineNo">2793</span>    OptionalInt maxCompactedStoreFileRefCount = this.storeEngine.getStoreFileManager()<a name="line.2793"></a>
+<span class="sourceLineNo">2794</span>      .getCompactedfiles()<a name="line.2794"></a>
+<span class="sourceLineNo">2795</span>      .stream()<a name="line.2795"></a>
+<span class="sourceLineNo">2796</span>      .filter(sf -&gt; sf.getReader() != null)<a name="line.2796"></a>
+<span class="sourceLineNo">2797</span>      .filter(HStoreFile::isHFile)<a name="line.2797"></a>
+<span class="sourceLineNo">2798</span>      .mapToInt(HStoreFile::getRefCount)<a name="line.2798"></a>
+<span class="sourceLineNo">2799</span>      .max();<a name="line.2799"></a>
+<span class="sourceLineNo">2800</span>    return maxCompactedStoreFileRefCount.isPresent()<a name="line.2800"></a>
+<span class="sourceLineNo">2801</span>      ? maxCompactedStoreFileRefCount.getAsInt() : 0;<a name="line.2801"></a>
+<span class="sourceLineNo">2802</span>  }<a name="line.2802"></a>
+<span class="sourceLineNo">2803</span><a name="line.2803"></a>
+<span class="sourceLineNo">2804</span>  @Override<a name="line.2804"></a>
+<span class="sourceLineNo">2805</span>  public long getMemstoreOnlyRowReadsCount() {<a name="line.2805"></a>
+<span class="sourceLineNo">2806</span>    return memstoreOnlyRowReadsCount.sum();<a name="line.2806"></a>
+<span class="sourceLineNo">2807</span>  }<a name="line.2807"></a>
+<span class="sourceLineNo">2808</span><a name="line.2808"></a>
+<span class="sourceLineNo">2809</span>  @Override<a name="line.2809"></a>
+<span class="sourceLineNo">2810</span>  public long getMixedRowReadsCount() {<a name="line.2810"></a>
+<span class="sourceLineNo">2811</span>    return mixedRowReadsCount.sum();<a name="line.2811"></a>
+<span class="sourceLineNo">2812</span>  }<a name="line.2812"></a>
+<span class="sourceLineNo">2813</span><a name="line.2813"></a>
+<span class="sourceLineNo">2814</span>  void updateMetricsStore(boolean memstoreRead) {<a name="line.2814"></a>
+<span class="sourceLineNo">2815</span>    if (memstoreRead) {<a name="line.2815"></a>
+<span class="sourceLineNo">2816</span>      memstoreOnlyRowReadsCount.increment();<a name="line.2816"></a>
+<span class="sourceLineNo">2817</span>    } else {<a name="line.2817"></a>
+<span class="sourceLineNo">2818</span>      mixedRowReadsCount.increment();<a name="line.2818"></a>
+<span class="sourceLineNo">2819</span>    }<a name="line.2819"></a>
+<span class="sourceLineNo">2820</span>  }<a name="line.2820"></a>
+<span class="sourceLineNo">2821</span>}<a name="line.2821"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.html b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.html
index 833f0a6..ab6a231 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HStore.html
@@ -1092,1753 +1092,1741 @@
 <span class="sourceLineNo">1084</span>  }<a name="line.1084"></a>
 <span class="sourceLineNo">1085</span><a name="line.1085"></a>
 <span class="sourceLineNo">1086</span>  /**<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>   * @param path The pathname of the tmp file into which the store was flushed<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span>   * @return store file created.<a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>   */<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span>  private HStoreFile commitFile(Path path, long logCacheFlushId, MonitoredTask status)<a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>      throws IOException {<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>    // Write-out finished successfully, move into the right spot<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>    Path dstPath = getRegionFileSystem().commitStoreFile(getColumnFamilyName(), path);<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span><a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>    status.setStatus("Flushing " + this + ": reopening flushed file");<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>    HStoreFile sf = createStoreFileAndReader(dstPath);<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span><a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>    StoreFileReader r = sf.getReader();<a name="line.1098"></a>
-<span class="sourceLineNo">1099</span>    this.storeSize.addAndGet(r.length());<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span>    this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.1100"></a>
-<span class="sourceLineNo">1101</span><a name="line.1101"></a>
-<span class="sourceLineNo">1102</span>    if (LOG.isInfoEnabled()) {<a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>      LOG.info("Added " + sf + ", entries=" + r.getEntries() +<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>        ", sequenceid=" + logCacheFlushId +<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span>        ", filesize=" + TraditionalBinaryPrefix.long2String(r.length(), "", 1));<a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>    }<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>    return sf;<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span>  }<a name="line.1108"></a>
-<span class="sourceLineNo">1109</span><a name="line.1109"></a>
-<span class="sourceLineNo">1110</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>    boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>    boolean shouldDropBehind) throws IOException {<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>    return createWriterInTmp(maxKeyCount, compression, isCompaction, includeMVCCReadpoint,<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>      includesTag, shouldDropBehind, -1, HConstants.EMPTY_STRING);<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>  }<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span><a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>  /**<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>   * @param compression Compression algorithm to use<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>   * @param isCompaction whether we are creating a new file in a compaction<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span>   * @param includeMVCCReadpoint - whether to include MVCC or not<a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>   * @param includesTag - includesTag or not<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>   * @return Writer for a new StoreFile in the tmp dir.<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>   */<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>  // TODO : allow the Writer factory to create Writers of ShipperListener type only in case of<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>  // compaction<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span>      boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>      boolean shouldDropBehind, long totalCompactedFilesSize, String fileStoragePolicy)<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span>        throws IOException {<a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    // creating new cache config for each new writer<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>    final CacheConfig cacheConf = getCacheConfig();<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span>    final CacheConfig writerCacheConf = new CacheConfig(cacheConf);<a name="line.1132"></a>
-<span class="sourceLineNo">1133</span>    if (isCompaction) {<a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>      // Don't cache data on write on compactions, unless specifically configured to do so<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>      // Cache only when total file size remains lower than configured threshold<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>      final boolean cacheCompactedBlocksOnWrite =<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>        getCacheConfig().shouldCacheCompactedBlocksOnWrite();<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span>      // if data blocks are to be cached on write<a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>      // during compaction, we should forcefully<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>      // cache index and bloom blocks as well<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>      if (cacheCompactedBlocksOnWrite &amp;&amp; totalCompactedFilesSize &lt;= cacheConf<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>        .getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>        if (!cacheOnWriteLogged) {<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>          LOG.info("For {} , cacheCompactedBlocksOnWrite is true, hence enabled " +<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>              "cacheOnWrite for Data blocks, Index blocks and Bloom filter blocks", this);<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>          cacheOnWriteLogged = true;<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>        }<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>      } else {<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>        writerCacheConf.setCacheDataOnWrite(false);<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>        if (totalCompactedFilesSize &gt; cacheConf.getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>          // checking condition once again for logging<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>          LOG.debug(<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>            "For {}, setting cacheCompactedBlocksOnWrite as false as total size of compacted "<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>              + "files - {}, is greater than cacheCompactedBlocksOnWriteThreshold - {}",<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>            this, totalCompactedFilesSize,<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>            cacheConf.getCacheCompactedBlocksOnWriteThreshold());<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>        }<a name="line.1158"></a>
-<span class="sourceLineNo">1159</span>      }<a name="line.1159"></a>
-<span class="sourceLineNo">1160</span>    } else {<a name="line.1160"></a>
-<span class="sourceLineNo">1161</span>      final boolean shouldCacheDataOnWrite = cacheConf.shouldCacheDataOnWrite();<a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>      if (shouldCacheDataOnWrite) {<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span>        if (!cacheOnWriteLogged) {<a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>          LOG.info("For {} , cacheDataOnWrite is true, hence enabled cacheOnWrite for " +<a name="line.1165"></a>
-<span class="sourceLineNo">1166</span>            "Index blocks and Bloom filter blocks", this);<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span>          cacheOnWriteLogged = true;<a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>        }<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>      }<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>    }<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>    Encryption.Context encryptionContext = storeContext.getEncryptionContext();<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>    HFileContext hFileContext = createFileContext(compression, includeMVCCReadpoint, includesTag,<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span>      encryptionContext);<a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>    Path familyTempDir = new Path(getRegionFileSystem().getTempDir(), getColumnFamilyName());<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span>    StoreFileWriter.Builder builder =<a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>      new StoreFileWriter.Builder(conf, writerCacheConf, getFileSystem())<a name="line.1176"></a>
-<span class="sourceLineNo">1177</span>        .withOutputDir(familyTempDir)<a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>        .withBloomType(storeContext.getBloomFilterType())<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>        .withMaxKeyCount(maxKeyCount)<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span>        .withFavoredNodes(storeContext.getFavoredNodes())<a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>        .withFileContext(hFileContext)<a name="line.1181"></a>
-<span class="sourceLineNo">1182</span>        .withShouldDropCacheBehind(shouldDropBehind)<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>        .withCompactedFilesSupplier(storeContext.getCompactedFilesSupplier())<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span>        .withFileStoragePolicy(fileStoragePolicy);<a name="line.1184"></a>
-<span class="sourceLineNo">1185</span>    return builder.build();<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>  }<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span><a name="line.1187"></a>
-<span class="sourceLineNo">1188</span>  private HFileContext createFileContext(Compression.Algorithm compression,<a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>    boolean includeMVCCReadpoint, boolean includesTag, Encryption.Context encryptionContext) {<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span>    if (compression == null) {<a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>      compression = HFile.DEFAULT_COMPRESSION_ALGORITHM;<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>    }<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>    ColumnFamilyDescriptor family = getColumnFamilyDescriptor();<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>    HFileContext hFileContext = new HFileContextBuilder()<a name="line.1194"></a>
-<span class="sourceLineNo">1195</span>      .withIncludesMvcc(includeMVCCReadpoint)<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>      .withIncludesTags(includesTag)<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span>      .withCompression(compression)<a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>      .withCompressTags(family.isCompressTags())<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>      .withChecksumType(StoreUtils.getChecksumType(conf))<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span>      .withBytesPerCheckSum(StoreUtils.getBytesPerChecksum(conf))<a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>      .withBlockSize(family.getBlocksize())<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>      .withHBaseCheckSum(true)<a name="line.1202"></a>
-<span class="sourceLineNo">1203</span>      .withDataBlockEncoding(family.getDataBlockEncoding())<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>      .withEncryptionContext(encryptionContext)<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>      .withCreateTime(EnvironmentEdgeManager.currentTime())<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>      .withColumnFamily(getColumnFamilyDescriptor().getName())<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>      .withTableName(getTableName().getName())<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span>      .withCellComparator(getComparator())<a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>      .build();<a name="line.1209"></a>
-<span class="sourceLineNo">1210</span>    return hFileContext;<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span>  }<a name="line.1211"></a>
-<span class="sourceLineNo">1212</span><a name="line.1212"></a>
-<span class="sourceLineNo">1213</span>  private long getTotalSize(Collection&lt;HStoreFile&gt; sfs) {<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span>    return sfs.stream().mapToLong(sf -&gt; sf.getReader().length()).sum();<a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>  }<a name="line.1215"></a>
-<span class="sourceLineNo">1216</span><a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>  /**<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span>   * Change storeFiles adding into place the Reader produced by this new flush.<a name="line.1218"></a>
-<span class="sourceLineNo">1219</span>   * @param sfs Store files<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>   * @return Whether compaction is required.<a name="line.1220"></a>
-<span class="sourceLineNo">1221</span>   */<a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>  private boolean updateStorefiles(List&lt;HStoreFile&gt; sfs, long snapshotId) throws IOException {<a name="line.1222"></a>
-<span class="sourceLineNo">1223</span>    this.lock.writeLock().lock();<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>    try {<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span>      this.storeEngine.getStoreFileManager().insertNewFiles(sfs);<a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>      if (snapshotId &gt; 0) {<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>        this.memstore.clearSnapshot(snapshotId);<a name="line.1227"></a>
-<span class="sourceLineNo">1228</span>      }<a name="line.1228"></a>
-<span class="sourceLineNo">1229</span>    } finally {<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>      // We need the lock, as long as we are updating the storeFiles<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>      // or changing the memstore. Let us release it before calling<a name="line.1231"></a>
-<span class="sourceLineNo">1232</span>      // notifyChangeReadersObservers. See HBASE-4485 for a possible<a name="line.1232"></a>
-<span class="sourceLineNo">1233</span>      // deadlock scenario that could have happened if continue to hold<a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>      // the lock.<a name="line.1234"></a>
-<span class="sourceLineNo">1235</span>      this.lock.writeLock().unlock();<a name="line.1235"></a>
-<span class="sourceLineNo">1236</span>    }<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span>    // notify to be called here - only in case of flushes<a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>    notifyChangedReadersObservers(sfs);<a name="line.1238"></a>
-<span class="sourceLineNo">1239</span>    if (LOG.isTraceEnabled()) {<a name="line.1239"></a>
-<span class="sourceLineNo">1240</span>      long totalSize = getTotalSize(sfs);<a name="line.1240"></a>
-<span class="sourceLineNo">1241</span>      String traceMessage = "FLUSH time,count,size,store size,store files ["<a name="line.1241"></a>
-<span class="sourceLineNo">1242</span>          + EnvironmentEdgeManager.currentTime() + "," + sfs.size() + "," + totalSize<a name="line.1242"></a>
-<span class="sourceLineNo">1243</span>          + "," + storeSize + "," + storeEngine.getStoreFileManager().getStorefileCount() + "]";<a name="line.1243"></a>
-<span class="sourceLineNo">1244</span>      LOG.trace(traceMessage);<a name="line.1244"></a>
-<span class="sourceLineNo">1245</span>    }<a name="line.1245"></a>
-<span class="sourceLineNo">1246</span>    return needsCompaction();<a name="line.1246"></a>
-<span class="sourceLineNo">1247</span>  }<a name="line.1247"></a>
-<span class="sourceLineNo">1248</span><a name="line.1248"></a>
-<span class="sourceLineNo">1249</span>  /**<a name="line.1249"></a>
-<span class="sourceLineNo">1250</span>   * Notify all observers that set of Readers has changed.<a name="line.1250"></a>
-<span class="sourceLineNo">1251</span>   */<a name="line.1251"></a>
-<span class="sourceLineNo">1252</span>  private void notifyChangedReadersObservers(List&lt;HStoreFile&gt; sfs) throws IOException {<a name="line.1252"></a>
-<span class="sourceLineNo">1253</span>    for (ChangedReadersObserver o : this.changedReaderObservers) {<a name="line.1253"></a>
-<span class="sourceLineNo">1254</span>      List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1254"></a>
-<span class="sourceLineNo">1255</span>      this.lock.readLock().lock();<a name="line.1255"></a>
-<span class="sourceLineNo">1256</span>      try {<a name="line.1256"></a>
-<span class="sourceLineNo">1257</span>        memStoreScanners = this.memstore.getScanners(o.getReadPoint());<a name="line.1257"></a>
-<span class="sourceLineNo">1258</span>      } finally {<a name="line.1258"></a>
-<span class="sourceLineNo">1259</span>        this.lock.readLock().unlock();<a name="line.1259"></a>
-<span class="sourceLineNo">1260</span>      }<a name="line.1260"></a>
-<span class="sourceLineNo">1261</span>      o.updateReaders(sfs, memStoreScanners);<a name="line.1261"></a>
+<span class="sourceLineNo">1087</span>   * Commit the given {@code files}.<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>   * &lt;p/&gt;<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>   * We will move the file into data directory, and open it.<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>   * @param files the files want to commit<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span>   * @param validate whether to validate the store files<a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>   * @return the committed store files<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>   */<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>  private List&lt;HStoreFile&gt; commitStoreFiles(List&lt;Path&gt; files, boolean validate) throws IOException {<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>    List&lt;HStoreFile&gt; committedFiles = new ArrayList&lt;&gt;(files.size());<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span>    HRegionFileSystem hfs = getRegionFileSystem();<a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>    String familyName = getColumnFamilyName();<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span>    for (Path file : files) {<a name="line.1098"></a>
+<span class="sourceLineNo">1099</span>      try {<a name="line.1099"></a>
+<span class="sourceLineNo">1100</span>        if (validate) {<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>          validateStoreFile(file);<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span>        }<a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>        Path committedPath = hfs.commitStoreFile(familyName, file);<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>        HStoreFile sf = createStoreFileAndReader(committedPath);<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>        committedFiles.add(sf);<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span>      } catch (IOException e) {<a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>        LOG.error("Failed to commit store file {}", file, e);<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span>        // Try to delete the files we have committed before.<a name="line.1108"></a>
+<span class="sourceLineNo">1109</span>        // It is OK to fail when deleting as leaving the file there does not cause any data<a name="line.1109"></a>
+<span class="sourceLineNo">1110</span>        // corruption problem. It just introduces some duplicated data which may impact read<a name="line.1110"></a>
+<span class="sourceLineNo">1111</span>        // performance a little when reading before compaction.<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>        for (HStoreFile sf : committedFiles) {<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>          Path pathToDelete = sf.getPath();<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>          try {<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>            sf.deleteStoreFile();<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>          } catch (IOException deleteEx) {<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>            LOG.warn(HBaseMarkers.FATAL, "Failed to delete committed store file {}", pathToDelete,<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span>              deleteEx);<a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>          }<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>        }<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>        throw new IOException("Failed to commit the flush", e);<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>      }<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>    }<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span>    return committedFiles;<a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>  }<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span><a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>    boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>    boolean shouldDropBehind) throws IOException {<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>    return createWriterInTmp(maxKeyCount, compression, isCompaction, includeMVCCReadpoint,<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>      includesTag, shouldDropBehind, -1, HConstants.EMPTY_STRING);<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>  }<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span><a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>  /**<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span>   * @param compression Compression algorithm to use<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span>   * @param isCompaction whether we are creating a new file in a compaction<a name="line.1136"></a>
+<span class="sourceLineNo">1137</span>   * @param includeMVCCReadpoint - whether to include MVCC or not<a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>   * @param includesTag - includesTag or not<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>   * @return Writer for a new StoreFile in the tmp dir.<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>   */<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span>  // TODO : allow the Writer factory to create Writers of ShipperListener type only in case of<a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>  // compaction<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>  public StoreFileWriter createWriterInTmp(long maxKeyCount, Compression.Algorithm compression,<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      boolean isCompaction, boolean includeMVCCReadpoint, boolean includesTag,<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>      boolean shouldDropBehind, long totalCompactedFilesSize, String fileStoragePolicy)<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span>        throws IOException {<a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>    // creating new cache config for each new writer<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>    final CacheConfig cacheConf = getCacheConfig();<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>    final CacheConfig writerCacheConf = new CacheConfig(cacheConf);<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>    if (isCompaction) {<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>      // Don't cache data on write on compactions, unless specifically configured to do so<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>      // Cache only when total file size remains lower than configured threshold<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>      final boolean cacheCompactedBlocksOnWrite =<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>        getCacheConfig().shouldCacheCompactedBlocksOnWrite();<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>      // if data blocks are to be cached on write<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>      // during compaction, we should forcefully<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>      // cache index and bloom blocks as well<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      if (cacheCompactedBlocksOnWrite &amp;&amp; totalCompactedFilesSize &lt;= cacheConf<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>        .getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span>        if (!cacheOnWriteLogged) {<a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>          LOG.info("For {} , cacheCompactedBlocksOnWrite is true, hence enabled " +<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>              "cacheOnWrite for Data blocks, Index blocks and Bloom filter blocks", this);<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>          cacheOnWriteLogged = true;<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>        }<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span>      } else {<a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>        writerCacheConf.setCacheDataOnWrite(false);<a name="line.1167"></a>
+<span class="sourceLineNo">1168</span>        if (totalCompactedFilesSize &gt; cacheConf.getCacheCompactedBlocksOnWriteThreshold()) {<a name="line.1168"></a>
+<span class="sourceLineNo">1169</span>          // checking condition once again for logging<a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>          LOG.debug(<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>            "For {}, setting cacheCompactedBlocksOnWrite as false as total size of compacted "<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>              + "files - {}, is greater than cacheCompactedBlocksOnWriteThreshold - {}",<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>            this, totalCompactedFilesSize,<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>            cacheConf.getCacheCompactedBlocksOnWriteThreshold());<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>        }<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>      }<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span>    } else {<a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>      final boolean shouldCacheDataOnWrite = cacheConf.shouldCacheDataOnWrite();<a name="line.1178"></a>
+<span class="sourceLineNo">1179</span>      if (shouldCacheDataOnWrite) {<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>        writerCacheConf.enableCacheOnWrite();<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span>        if (!cacheOnWriteLogged) {<a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>          LOG.info("For {} , cacheDataOnWrite is true, hence enabled cacheOnWrite for " +<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>            "Index blocks and Bloom filter blocks", this);<a name="line.1183"></a>
+<span class="sourceLineNo">1184</span>          cacheOnWriteLogged = true;<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span>        }<a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>      }<a name="line.1186"></a>
+<span class="sourceLineNo">1187</span>    }<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>    Encryption.Context encryptionContext = storeContext.getEncryptionContext();<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>    HFileContext hFileContext = createFileContext(compression, includeMVCCReadpoint, includesTag,<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span>      encryptionContext);<a name="line.1190"></a>
+<span class="sourceLineNo">1191</span>    Path familyTempDir = new Path(getRegionFileSystem().getTempDir(), getColumnFamilyName());<a name="line.1191"></a>
+<span class="sourceLineNo">1192</span>    StoreFileWriter.Builder builder =<a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>      new StoreFileWriter.Builder(conf, writerCacheConf, getFileSystem())<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>        .withOutputDir(familyTempDir)<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>        .withBloomType(storeContext.getBloomFilterType())<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>        .withMaxKeyCount(maxKeyCount)<a name="line.1196"></a>
+<span class="sourceLineNo">1197</span>        .withFavoredNodes(storeContext.getFavoredNodes())<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>        .withFileContext(hFileContext)<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span>        .withShouldDropCacheBehind(shouldDropBehind)<a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>        .withCompactedFilesSupplier(storeContext.getCompactedFilesSupplier())<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span>        .withFileStoragePolicy(fileStoragePolicy);<a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>    return builder.build();<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>  }<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span><a name="line.1204"></a>
+<span class="sourceLineNo">1205</span>  private HFileContext createFileContext(Compression.Algorithm compression,<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>    boolean includeMVCCReadpoint, boolean includesTag, Encryption.Context encryptionContext) {<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>    if (compression == null) {<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>      compression = HFile.DEFAULT_COMPRESSION_ALGORITHM;<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>    }<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>    ColumnFamilyDescriptor family = getColumnFamilyDescriptor();<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>    HFileContext hFileContext = new HFileContextBuilder()<a name="line.1211"></a>
+<span class="sourceLineNo">1212</span>      .withIncludesMvcc(includeMVCCReadpoint)<a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>      .withIncludesTags(includesTag)<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>      .withCompression(compression)<a name="line.1214"></a>
+<span class="sourceLineNo">1215</span>      .withCompressTags(family.isCompressTags())<a name="line.1215"></a>
+<span class="sourceLineNo">1216</span>      .withChecksumType(StoreUtils.getChecksumType(conf))<a name="line.1216"></a>
+<span class="sourceLineNo">1217</span>      .withBytesPerCheckSum(StoreUtils.getBytesPerChecksum(conf))<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>      .withBlockSize(family.getBlocksize())<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>      .withHBaseCheckSum(true)<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>      .withDataBlockEncoding(family.getDataBlockEncoding())<a name="line.1220"></a>
+<span class="sourceLineNo">1221</span>      .withEncryptionContext(encryptionContext)<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span>      .withCreateTime(EnvironmentEdgeManager.currentTime())<a name="line.1222"></a>
+<span class="sourceLineNo">1223</span>      .withColumnFamily(getColumnFamilyDescriptor().getName())<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span>      .withTableName(getTableName().getName())<a name="line.1224"></a>
+<span class="sourceLineNo">1225</span>      .withCellComparator(getComparator())<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span>      .build();<a name="line.1226"></a>
+<span class="sourceLineNo">1227</span>    return hFileContext;<a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>  }<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span><a name="line.1229"></a>
+<span class="sourceLineNo">1230</span>  private long getTotalSize(Collection&lt;HStoreFile&gt; sfs) {<a name="line.1230"></a>
+<span class="sourceLineNo">1231</span>    return sfs.stream().mapToLong(sf -&gt; sf.getReader().length()).sum();<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>  }<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span><a name="line.1233"></a>
+<span class="sourceLineNo">1234</span>  /**<a name="line.1234"></a>
+<span class="sourceLineNo">1235</span>   * Change storeFiles adding into place the Reader produced by this new flush.<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span>   * @param sfs Store files<a name="line.1236"></a>
+<span class="sourceLineNo">1237</span>   * @return Whether compaction is required.<a name="line.1237"></a>
+<span class="sourceLineNo">1238</span>   */<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span>  private boolean updateStorefiles(List&lt;HStoreFile&gt; sfs, long snapshotId) throws IOException {<a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>    this.lock.writeLock().lock();<a name="line.1240"></a>
+<span class="sourceLineNo">1241</span>    try {<a name="line.1241"></a>
+<span class="sourceLineNo">1242</span>      this.storeEngine.getStoreFileManager().insertNewFiles(sfs);<a name="line.1242"></a>
+<span class="sourceLineNo">1243</span>      if (snapshotId &gt; 0) {<a name="line.1243"></a>
+<span class="sourceLineNo">1244</span>        this.memstore.clearSnapshot(snapshotId);<a name="line.1244"></a>
+<span class="sourceLineNo">1245</span>      }<a name="line.1245"></a>
+<span class="sourceLineNo">1246</span>    } finally {<a name="line.1246"></a>
+<span class="sourceLineNo">1247</span>      // We need the lock, as long as we are updating the storeFiles<a name="line.1247"></a>
+<span class="sourceLineNo">1248</span>      // or changing the memstore. Let us release it before calling<a name="line.1248"></a>
+<span class="sourceLineNo">1249</span>      // notifyChangeReadersObservers. See HBASE-4485 for a possible<a name="line.1249"></a>
+<span class="sourceLineNo">1250</span>      // deadlock scenario that could have happened if continue to hold<a name="line.1250"></a>
+<span class="sourceLineNo">1251</span>      // the lock.<a name="line.1251"></a>
+<span class="sourceLineNo">1252</span>      this.lock.writeLock().unlock();<a name="line.1252"></a>
+<span class="sourceLineNo">1253</span>    }<a name="line.1253"></a>
+<span class="sourceLineNo">1254</span>    // notify to be called here - only in case of flushes<a name="line.1254"></a>
+<span class="sourceLineNo">1255</span>    notifyChangedReadersObservers(sfs);<a name="line.1255"></a>
+<span class="sourceLineNo">1256</span>    if (LOG.isTraceEnabled()) {<a name="line.1256"></a>
+<span class="sourceLineNo">1257</span>      long totalSize = getTotalSize(sfs);<a name="line.1257"></a>
+<span class="sourceLineNo">1258</span>      String traceMessage = "FLUSH time,count,size,store size,store files ["<a name="line.1258"></a>
+<span class="sourceLineNo">1259</span>          + EnvironmentEdgeManager.currentTime() + "," + sfs.size() + "," + totalSize<a name="line.1259"></a>
+<span class="sourceLineNo">1260</span>          + "," + storeSize + "," + storeEngine.getStoreFileManager().getStorefileCount() + "]";<a name="line.1260"></a>
+<span class="sourceLineNo">1261</span>      LOG.trace(traceMessage);<a name="line.1261"></a>
 <span class="sourceLineNo">1262</span>    }<a name="line.1262"></a>
-<span class="sourceLineNo">1263</span>  }<a name="line.1263"></a>
-<span class="sourceLineNo">1264</span><a name="line.1264"></a>
-<span class="sourceLineNo">1265</span>  /**<a name="line.1265"></a>
-<span class="sourceLineNo">1266</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1266"></a>
-<span class="sourceLineNo">1267</span>   * @param cacheBlocks cache the blocks or not<a name="line.1267"></a>
-<span class="sourceLineNo">1268</span>   * @param usePread true to use pread, false if not<a name="line.1268"></a>
-<span class="sourceLineNo">1269</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1269"></a>
-<span class="sourceLineNo">1270</span>   * @param matcher the scan query matcher<a name="line.1270"></a>
-<span class="sourceLineNo">1271</span>   * @param startRow the start row<a name="line.1271"></a>
-<span class="sourceLineNo">1272</span>   * @param stopRow the stop row<a name="line.1272"></a>
-<span class="sourceLineNo">1273</span>   * @param readPt the read point of the current scan<a name="line.1273"></a>
-<span class="sourceLineNo">1274</span>   * @return all scanners for this store<a name="line.1274"></a>
-<span class="sourceLineNo">1275</span>   */<a name="line.1275"></a>
-<span class="sourceLineNo">1276</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean isGet, boolean usePread,<a name="line.1276"></a>
-<span class="sourceLineNo">1277</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, byte[] stopRow, long readPt)<a name="line.1277"></a>
-<span class="sourceLineNo">1278</span>      throws IOException {<a name="line.1278"></a>
-<span class="sourceLineNo">1279</span>    return getScanners(cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow, false,<a name="line.1279"></a>
-<span class="sourceLineNo">1280</span>      readPt);<a name="line.1280"></a>
-<span class="sourceLineNo">1281</span>  }<a name="line.1281"></a>
-<span class="sourceLineNo">1282</span><a name="line.1282"></a>
-<span class="sourceLineNo">1283</span>  /**<a name="line.1283"></a>
-<span class="sourceLineNo">1284</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1284"></a>
-<span class="sourceLineNo">1285</span>   * @param cacheBlocks cache the blocks or not<a name="line.1285"></a>
-<span class="sourceLineNo">1286</span>   * @param usePread true to use pread, false if not<a name="line.1286"></a>
-<span class="sourceLineNo">1287</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1287"></a>
-<span class="sourceLineNo">1288</span>   * @param matcher the scan query matcher<a name="line.1288"></a>
-<span class="sourceLineNo">1289</span>   * @param startRow the start row<a name="line.1289"></a>
-<span class="sourceLineNo">1290</span>   * @param includeStartRow true to include start row, false if not<a name="line.1290"></a>
-<span class="sourceLineNo">1291</span>   * @param stopRow the stop row<a name="line.1291"></a>
-<span class="sourceLineNo">1292</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1292"></a>
-<span class="sourceLineNo">1293</span>   * @param readPt the read point of the current scan<a name="line.1293"></a>
-<span class="sourceLineNo">1294</span>   * @return all scanners for this store<a name="line.1294"></a>
-<span class="sourceLineNo">1295</span>   */<a name="line.1295"></a>
-<span class="sourceLineNo">1296</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean usePread,<a name="line.1296"></a>
-<span class="sourceLineNo">1297</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, boolean includeStartRow,<a name="line.1297"></a>
-<span class="sourceLineNo">1298</span>      byte[] stopRow, boolean includeStopRow, long readPt) throws IOException {<a name="line.1298"></a>
-<span class="sourceLineNo">1299</span>    Collection&lt;HStoreFile&gt; storeFilesToScan;<a name="line.1299"></a>
-<span class="sourceLineNo">1300</span>    List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1300"></a>
-<span class="sourceLineNo">1301</span>    this.lock.readLock().lock();<a name="line.1301"></a>
-<span class="sourceLineNo">1302</span>    try {<a name="line.1302"></a>
-<span class="sourceLineNo">1303</span>      storeFilesToScan = this.storeEngine.getStoreFileManager().getFilesForScan(startRow,<a name="line.1303"></a>
-<span class="sourceLineNo">1304</span>        includeStartRow, stopRow, includeStopRow);<a name="line.1304"></a>
-<span class="sourceLineNo">1305</span>      memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1305"></a>
-<span class="sourceLineNo">1306</span>    } finally {<a name="line.1306"></a>
-<span class="sourceLineNo">1307</span>      this.lock.readLock().unlock();<a name="line.1307"></a>
-<span class="sourceLineNo">1308</span>    }<a name="line.1308"></a>
-<span class="sourceLineNo">1309</span><a name="line.1309"></a>
-<span class="sourceLineNo">1310</span>    try {<a name="line.1310"></a>
-<span class="sourceLineNo">1311</span>      // First the store file scanners<a name="line.1311"></a>
-<span class="sourceLineNo">1312</span><a name="line.1312"></a>
-<span class="sourceLineNo">1313</span>      // TODO this used to get the store files in descending order,<a name="line.1313"></a>
-<span class="sourceLineNo">1314</span>      // but now we get them in ascending order, which I think is<a name="line.1314"></a>
-<span class="sourceLineNo">1315</span>      // actually more correct, since memstore get put at the end.<a name="line.1315"></a>
-<span class="sourceLineNo">1316</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1316"></a>
-<span class="sourceLineNo">1317</span>        .getScannersForStoreFiles(storeFilesToScan, cacheBlocks, usePread, isCompaction, false,<a name="line.1317"></a>
-<span class="sourceLineNo">1318</span>          matcher, readPt);<a name="line.1318"></a>
-<span class="sourceLineNo">1319</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1319"></a>
-<span class="sourceLineNo">1320</span>      scanners.addAll(sfScanners);<a name="line.1320"></a>
-<span class="sourceLineNo">1321</span>      // Then the memstore scanners<a name="line.1321"></a>
-<span class="sourceLineNo">1322</span>      scanners.addAll(memStoreScanners);<a name="line.1322"></a>
-<span class="sourceLineNo">1323</span>      return scanners;<a name="line.1323"></a>
-<span class="sourceLineNo">1324</span>    } catch (Throwable t) {<a name="line.1324"></a>
-<span class="sourceLineNo">1325</span>      clearAndClose(memStoreScanners);<a name="line.1325"></a>
-<span class="sourceLineNo">1326</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1326"></a>
-<span class="sourceLineNo">1327</span>    }<a name="line.1327"></a>
-<span class="sourceLineNo">1328</span>  }<a name="line.1328"></a>
+<span class="sourceLineNo">1263</span>    return needsCompaction();<a name="line.1263"></a>
+<span class="sourceLineNo">1264</span>  }<a name="line.1264"></a>
+<span class="sourceLineNo">1265</span><a name="line.1265"></a>
+<span class="sourceLineNo">1266</span>  /**<a name="line.1266"></a>
+<span class="sourceLineNo">1267</span>   * Notify all observers that set of Readers has changed.<a name="line.1267"></a>
+<span class="sourceLineNo">1268</span>   */<a name="line.1268"></a>
+<span class="sourceLineNo">1269</span>  private void notifyChangedReadersObservers(List&lt;HStoreFile&gt; sfs) throws IOException {<a name="line.1269"></a>
+<span class="sourceLineNo">1270</span>    for (ChangedReadersObserver o : this.changedReaderObservers) {<a name="line.1270"></a>
+<span class="sourceLineNo">1271</span>      List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1271"></a>
+<span class="sourceLineNo">1272</span>      this.lock.readLock().lock();<a name="line.1272"></a>
+<span class="sourceLineNo">1273</span>      try {<a name="line.1273"></a>
+<span class="sourceLineNo">1274</span>        memStoreScanners = this.memstore.getScanners(o.getReadPoint());<a name="line.1274"></a>
+<span class="sourceLineNo">1275</span>      } finally {<a name="line.1275"></a>
+<span class="sourceLineNo">1276</span>        this.lock.readLock().unlock();<a name="line.1276"></a>
+<span class="sourceLineNo">1277</span>      }<a name="line.1277"></a>
+<span class="sourceLineNo">1278</span>      o.updateReaders(sfs, memStoreScanners);<a name="line.1278"></a>
+<span class="sourceLineNo">1279</span>    }<a name="line.1279"></a>
+<span class="sourceLineNo">1280</span>  }<a name="line.1280"></a>
+<span class="sourceLineNo">1281</span><a name="line.1281"></a>
+<span class="sourceLineNo">1282</span>  /**<a name="line.1282"></a>
+<span class="sourceLineNo">1283</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1283"></a>
+<span class="sourceLineNo">1284</span>   * @param cacheBlocks cache the blocks or not<a name="line.1284"></a>
+<span class="sourceLineNo">1285</span>   * @param usePread true to use pread, false if not<a name="line.1285"></a>
+<span class="sourceLineNo">1286</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1286"></a>
+<span class="sourceLineNo">1287</span>   * @param matcher the scan query matcher<a name="line.1287"></a>
+<span class="sourceLineNo">1288</span>   * @param startRow the start row<a name="line.1288"></a>
+<span class="sourceLineNo">1289</span>   * @param stopRow the stop row<a name="line.1289"></a>
+<span class="sourceLineNo">1290</span>   * @param readPt the read point of the current scan<a name="line.1290"></a>
+<span class="sourceLineNo">1291</span>   * @return all scanners for this store<a name="line.1291"></a>
+<span class="sourceLineNo">1292</span>   */<a name="line.1292"></a>
+<span class="sourceLineNo">1293</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean isGet, boolean usePread,<a name="line.1293"></a>
+<span class="sourceLineNo">1294</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, byte[] stopRow, long readPt)<a name="line.1294"></a>
+<span class="sourceLineNo">1295</span>      throws IOException {<a name="line.1295"></a>
+<span class="sourceLineNo">1296</span>    return getScanners(cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow, false,<a name="line.1296"></a>
+<span class="sourceLineNo">1297</span>      readPt);<a name="line.1297"></a>
+<span class="sourceLineNo">1298</span>  }<a name="line.1298"></a>
+<span class="sourceLineNo">1299</span><a name="line.1299"></a>
+<span class="sourceLineNo">1300</span>  /**<a name="line.1300"></a>
+<span class="sourceLineNo">1301</span>   * Get all scanners with no filtering based on TTL (that happens further down the line).<a name="line.1301"></a>
+<span class="sourceLineNo">1302</span>   * @param cacheBlocks cache the blocks or not<a name="line.1302"></a>
+<span class="sourceLineNo">1303</span>   * @param usePread true to use pread, false if not<a name="line.1303"></a>
+<span class="sourceLineNo">1304</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1304"></a>
+<span class="sourceLineNo">1305</span>   * @param matcher the scan query matcher<a name="line.1305"></a>
+<span class="sourceLineNo">1306</span>   * @param startRow the start row<a name="line.1306"></a>
+<span class="sourceLineNo">1307</span>   * @param includeStartRow true to include start row, false if not<a name="line.1307"></a>
+<span class="sourceLineNo">1308</span>   * @param stopRow the stop row<a name="line.1308"></a>
+<span class="sourceLineNo">1309</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1309"></a>
+<span class="sourceLineNo">1310</span>   * @param readPt the read point of the current scan<a name="line.1310"></a>
+<span class="sourceLineNo">1311</span>   * @return all scanners for this store<a name="line.1311"></a>
+<span class="sourceLineNo">1312</span>   */<a name="line.1312"></a>
+<span class="sourceLineNo">1313</span>  public List&lt;KeyValueScanner&gt; getScanners(boolean cacheBlocks, boolean usePread,<a name="line.1313"></a>
+<span class="sourceLineNo">1314</span>      boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow, boolean includeStartRow,<a name="line.1314"></a>
+<span class="sourceLineNo">1315</span>      byte[] stopRow, boolean includeStopRow, long readPt) throws IOException {<a name="line.1315"></a>
+<span class="sourceLineNo">1316</span>    Collection&lt;HStoreFile&gt; storeFilesToScan;<a name="line.1316"></a>
+<span class="sourceLineNo">1317</span>    List&lt;KeyValueScanner&gt; memStoreScanners;<a name="line.1317"></a>
+<span class="sourceLineNo">1318</span>    this.lock.readLock().lock();<a name="line.1318"></a>
+<span class="sourceLineNo">1319</span>    try {<a name="line.1319"></a>
+<span class="sourceLineNo">1320</span>      storeFilesToScan = this.storeEngine.getStoreFileManager().getFilesForScan(startRow,<a name="line.1320"></a>
+<span class="sourceLineNo">1321</span>        includeStartRow, stopRow, includeStopRow);<a name="line.1321"></a>
+<span class="sourceLineNo">1322</span>      memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1322"></a>
+<span class="sourceLineNo">1323</span>    } finally {<a name="line.1323"></a>
+<span class="sourceLineNo">1324</span>      this.lock.readLock().unlock();<a name="line.1324"></a>
+<span class="sourceLineNo">1325</span>    }<a name="line.1325"></a>
+<span class="sourceLineNo">1326</span><a name="line.1326"></a>
+<span class="sourceLineNo">1327</span>    try {<a name="line.1327"></a>
+<span class="sourceLineNo">1328</span>      // First the store file scanners<a name="line.1328"></a>
 <span class="sourceLineNo">1329</span><a name="line.1329"></a>
-<span class="sourceLineNo">1330</span>  private static void clearAndClose(List&lt;KeyValueScanner&gt; scanners) {<a name="line.1330"></a>
-<span class="sourceLineNo">1331</span>    if (scanners == null) {<a name="line.1331"></a>
-<span class="sourceLineNo">1332</span>      return;<a name="line.1332"></a>
-<span class="sourceLineNo">1333</span>    }<a name="line.1333"></a>
-<span class="sourceLineNo">1334</span>    for (KeyValueScanner s : scanners) {<a name="line.1334"></a>
-<span class="sourceLineNo">1335</span>      s.close();<a name="line.1335"></a>
-<span class="sourceLineNo">1336</span>    }<a name="line.1336"></a>
-<span class="sourceLineNo">1337</span>    scanners.clear();<a name="line.1337"></a>
-<span class="sourceLineNo">1338</span>  }<a name="line.1338"></a>
-<span class="sourceLineNo">1339</span><a name="line.1339"></a>
-<span class="sourceLineNo">1340</span>  /**<a name="line.1340"></a>
-<span class="sourceLineNo">1341</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1341"></a>
-<span class="sourceLineNo">1342</span>   * (that happens further down the line).<a name="line.1342"></a>
-<span class="sourceLineNo">1343</span>   * @param files the list of files on which the scanners has to be created<a name="line.1343"></a>
-<span class="sourceLineNo">1344</span>   * @param cacheBlocks cache the blocks or not<a name="line.1344"></a>
-<span class="sourceLineNo">1345</span>   * @param usePread true to use pread, false if not<a name="line.1345"></a>
-<span class="sourceLineNo">1346</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1346"></a>
-<span class="sourceLineNo">1347</span>   * @param matcher the scan query matcher<a name="line.1347"></a>
-<span class="sourceLineNo">1348</span>   * @param startRow the start row<a name="line.1348"></a>
-<span class="sourceLineNo">1349</span>   * @param stopRow the stop row<a name="line.1349"></a>
-<span class="sourceLineNo">1350</span>   * @param readPt the read point of the current scan<a name="line.1350"></a>
-<span class="sourceLineNo">1351</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1351"></a>
-<span class="sourceLineNo">1352</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1352"></a>
-<span class="sourceLineNo">1353</span>   */<a name="line.1353"></a>
-<span class="sourceLineNo">1354</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1354"></a>
-<span class="sourceLineNo">1355</span>      boolean isGet, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.1355"></a>
-<span class="sourceLineNo">1356</span>      byte[] startRow, byte[] stopRow, long readPt, boolean includeMemstoreScanner)<a name="line.1356"></a>
-<span class="sourceLineNo">1357</span>      throws IOException {<a name="line.1357"></a>
-<span class="sourceLineNo">1358</span>    return getScanners(files, cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow,<a name="line.1358"></a>
-<span class="sourceLineNo">1359</span>      false, readPt, includeMemstoreScanner);<a name="line.1359"></a>
-<span class="sourceLineNo">1360</span>  }<a name="line.1360"></a>
-<span class="sourceLineNo">1361</span><a name="line.1361"></a>
-<span class="sourceLineNo">1362</span>  /**<a name="line.1362"></a>
-<span class="sourceLineNo">1363</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1363"></a>
-<span class="sourceLineNo">1364</span>   * (that happens further down the line).<a name="line.1364"></a>
-<span class="sourceLineNo">1365</span>   * @param files the list of files on which the scanners has to be created<a name="line.1365"></a>
-<span class="sourceLineNo">1366</span>   * @param cacheBlocks ache the blocks or not<a name="line.1366"></a>
-<span class="sourceLineNo">1367</span>   * @param usePread true to use pread, false if not<a name="line.1367"></a>
-<span class="sourceLineNo">1368</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1368"></a>
-<span class="sourceLineNo">1369</span>   * @param matcher the scan query matcher<a name="line.1369"></a>
-<span class="sourceLineNo">1370</span>   * @param startRow the start row<a name="line.1370"></a>
-<span class="sourceLineNo">1371</span>   * @param includeStartRow true to include start row, false if not<a name="line.1371"></a>
-<span class="sourceLineNo">1372</span>   * @param stopRow the stop row<a name="line.1372"></a>
-<span class="sourceLineNo">1373</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1373"></a>
-<span class="sourceLineNo">1374</span>   * @param readPt the read point of the current scan<a name="line.1374"></a>
-<span class="sourceLineNo">1375</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1375"></a>
-<span class="sourceLineNo">1376</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1376"></a>
-<span class="sourceLineNo">1377</span>   */<a name="line.1377"></a>
-<span class="sourceLineNo">1378</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1378"></a>
-<span class="sourceLineNo">1379</span>      boolean usePread, boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow,<a name="line.1379"></a>
-<span class="sourceLineNo">1380</span>      boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.1380"></a>
-<span class="sourceLineNo">1381</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.1381"></a>
-<span class="sourceLineNo">1382</span>    List&lt;KeyValueScanner&gt; memStoreScanners = null;<a name="line.1382"></a>
-<span class="sourceLineNo">1383</span>    if (includeMemstoreScanner) {<a name="line.1383"></a>
-<span class="sourceLineNo">1384</span>      this.lock.readLock().lock();<a name="line.1384"></a>
-<span class="sourceLineNo">1385</span>      try {<a name="line.1385"></a>
-<span class="sourceLineNo">1386</span>        memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1386"></a>
-<span class="sourceLineNo">1387</span>      } finally {<a name="line.1387"></a>
-<span class="sourceLineNo">1388</span>        this.lock.readLock().unlock();<a name="line.1388"></a>
-<span class="sourceLineNo">1389</span>      }<a name="line.1389"></a>
-<span class="sourceLineNo">1390</span>    }<a name="line.1390"></a>
-<span class="sourceLineNo">1391</span>    try {<a name="line.1391"></a>
-<span class="sourceLineNo">1392</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1392"></a>
-<span class="sourceLineNo">1393</span>        .getScannersForStoreFiles(files, cacheBlocks, usePread, isCompaction, false, matcher,<a name="line.1393"></a>
-<span class="sourceLineNo">1394</span>          readPt);<a name="line.1394"></a>
-<span class="sourceLineNo">1395</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1395"></a>
-<span class="sourceLineNo">1396</span>      scanners.addAll(sfScanners);<a name="line.1396"></a>
-<span class="sourceLineNo">1397</span>      // Then the memstore scanners<a name="line.1397"></a>
-<span class="sourceLineNo">1398</span>      if (memStoreScanners != null) {<a name="line.1398"></a>
-<span class="sourceLineNo">1399</span>        scanners.addAll(memStoreScanners);<a name="line.1399"></a>
-<span class="sourceLineNo">1400</span>      }<a name="line.1400"></a>
-<span class="sourceLineNo">1401</span>      return scanners;<a name="line.1401"></a>
-<span class="sourceLineNo">1402</span>    } catch (Throwable t) {<a name="line.1402"></a>
-<span class="sourceLineNo">1403</span>      clearAndClose(memStoreScanners);<a name="line.1403"></a>
-<span class="sourceLineNo">1404</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1404"></a>
-<span class="sourceLineNo">1405</span>    }<a name="line.1405"></a>
-<span class="sourceLineNo">1406</span>  }<a name="line.1406"></a>
-<span class="sourceLineNo">1407</span><a name="line.1407"></a>
-<span class="sourceLineNo">1408</span>  /**<a name="line.1408"></a>
-<span class="sourceLineNo">1409</span>   * @param o Observer who wants to know about changes in set of Readers<a name="line.1409"></a>
-<span class="sourceLineNo">1410</span>   */<a name="line.1410"></a>
-<span class="sourceLineNo">1411</span>  public void addChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1411"></a>
-<span class="sourceLineNo">1412</span>    this.changedReaderObservers.add(o);<a name="line.1412"></a>
-<span class="sourceLineNo">1413</span>  }<a name="line.1413"></a>
-<span class="sourceLineNo">1414</span><a name="line.1414"></a>
-<span class="sourceLineNo">1415</span>  /**<a name="line.1415"></a>
-<span class="sourceLineNo">1416</span>   * @param o Observer no longer interested in changes in set of Readers.<a name="line.1416"></a>
-<span class="sourceLineNo">1417</span>   */<a name="line.1417"></a>
-<span class="sourceLineNo">1418</span>  public void deleteChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1418"></a>
-<span class="sourceLineNo">1419</span>    // We don't check if observer present; it may not be (legitimately)<a name="line.1419"></a>
-<span class="sourceLineNo">1420</span>    this.changedReaderObservers.remove(o);<a name="line.1420"></a>
-<span class="sourceLineNo">1421</span>  }<a name="line.1421"></a>
-<span class="sourceLineNo">1422</span><a name="line.1422"></a>
-<span class="sourceLineNo">1423</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1423"></a>
-<span class="sourceLineNo">1424</span>  // Compaction<a name="line.1424"></a>
-<span class="sourceLineNo">1425</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1425"></a>
-<span class="sourceLineNo">1426</span><a name="line.1426"></a>
-<span class="sourceLineNo">1427</span>  /**<a name="line.1427"></a>
-<span class="sourceLineNo">1428</span>   * Compact the StoreFiles.  This method may take some time, so the calling<a name="line.1428"></a>
-<span class="sourceLineNo">1429</span>   * thread must be able to block for long periods.<a name="line.1429"></a>
-<span class="sourceLineNo">1430</span>   *<a name="line.1430"></a>
-<span class="sourceLineNo">1431</span>   * &lt;p&gt;During this time, the Store can work as usual, getting values from<a name="line.1431"></a>
-<span class="sourceLineNo">1432</span>   * StoreFiles and writing new StoreFiles from the memstore.<a name="line.1432"></a>
-<span class="sourceLineNo">1433</span>   *<a name="line.1433"></a>
-<span class="sourceLineNo">1434</span>   * Existing StoreFiles are not destroyed until the new compacted StoreFile is<a name="line.1434"></a>
-<span class="sourceLineNo">1435</span>   * completely written-out to disk.<a name="line.1435"></a>
-<span class="sourceLineNo">1436</span>   *<a name="line.1436"></a>
-<span class="sourceLineNo">1437</span>   * &lt;p&gt;The compactLock prevents multiple simultaneous compactions.<a name="line.1437"></a>
-<span class="sourceLineNo">1438</span>   * The structureLock prevents us from interfering with other write operations.<a name="line.1438"></a>
-<span class="sourceLineNo">1439</span>   *<a name="line.1439"></a>
-<span class="sourceLineNo">1440</span>   * &lt;p&gt;We don't want to hold the structureLock for the whole time, as a compact()<a name="line.1440"></a>
-<span class="sourceLineNo">1441</span>   * can be lengthy and we want to allow cache-flushes during this period.<a name="line.1441"></a>
-<span class="sourceLineNo">1442</span>   *<a name="line.1442"></a>
-<span class="sourceLineNo">1443</span>   * &lt;p&gt; Compaction event should be idempotent, since there is no IO Fencing for<a name="line.1443"></a>
-<span class="sourceLineNo">1444</span>   * the region directory in hdfs. A region server might still try to complete the<a name="line.1444"></a>
-<span class="sourceLineNo">1445</span>   * compaction after it lost the region. That is why the following events are carefully<a name="line.1445"></a>
-<span class="sourceLineNo">1446</span>   * ordered for a compaction:<a name="line.1446"></a>
-<span class="sourceLineNo">1447</span>   *  1. Compaction writes new files under region/.tmp directory (compaction output)<a name="line.1447"></a>
-<span class="sourceLineNo">1448</span>   *  2. Compaction atomically moves the temporary file under region directory<a name="line.1448"></a>
-<span class="sourceLineNo">1449</span>   *  3. Compaction appends a WAL edit containing the compaction input and output files.<a name="line.1449"></a>
-<span class="sourceLineNo">1450</span>   *  Forces sync on WAL.<a name="line.1450"></a>
-<span class="sourceLineNo">1451</span>   *  4. Compaction deletes the input files from the region directory.<a name="line.1451"></a>
-<span class="sourceLineNo">1452</span>   *<a name="line.1452"></a>
-<span class="sourceLineNo">1453</span>   * Failure conditions are handled like this:<a name="line.1453"></a>
-<span class="sourceLineNo">1454</span>   *  - If RS fails before 2, compaction wont complete. Even if RS lives on and finishes<a name="line.1454"></a>
-<span class="sourceLineNo">1455</span>   *  the compaction later, it will only write the new data file to the region directory.<a name="line.1455"></a>
-<span class="sourceLineNo">1456</span>   *  Since we already have this data, this will be idempotent but we will have a redundant<a name="line.1456"></a>
-<span class="sourceLineNo">1457</span>   *  copy of the data.<a name="line.1457"></a>
-<span class="sourceLineNo">1458</span>   *  - If RS fails between 2 and 3, the region will have a redundant copy of the data. The<a name="line.1458"></a>
-<span class="sourceLineNo">1459</span>   *  RS that failed won't be able to finish sync() for WAL because of lease recovery in WAL.<a name="line.1459"></a>
-<span class="sourceLineNo">1460</span>   *  - If RS fails after 3, the region region server who opens the region will pick up the<a name="line.1460"></a>
-<span class="sourceLineNo">1461</span>   *  the compaction marker from the WAL and replay it by removing the compaction input files.<a name="line.1461"></a>
-<span class="sourceLineNo">1462</span>   *  Failed RS can also attempt to delete those files, but the operation will be idempotent<a name="line.1462"></a>
-<span class="sourceLineNo">1463</span>   *<a name="line.1463"></a>
-<span class="sourceLineNo">1464</span>   * See HBASE-2231 for details.<a name="line.1464"></a>
-<span class="sourceLineNo">1465</span>   *<a name="line.1465"></a>
-<span class="sourceLineNo">1466</span>   * @param compaction compaction details obtained from requestCompaction()<a name="line.1466"></a>
-<span class="sourceLineNo">1467</span>   * @return Storefile we compacted into or null if we failed or opted out early.<a name="line.1467"></a>
-<span class="sourceLineNo">1468</span>   */<a name="line.1468"></a>
-<span class="sourceLineNo">1469</span>  public List&lt;HStoreFile&gt; compact(CompactionContext compaction,<a name="line.1469"></a>
-<span class="sourceLineNo">1470</span>    ThroughputController throughputController, User user) throws IOException {<a name="line.1470"></a>
-<span class="sourceLineNo">1471</span>    assert compaction != null;<a name="line.1471"></a>
-<span class="sourceLineNo">1472</span>    CompactionRequestImpl cr = compaction.getRequest();<a name="line.1472"></a>
-<span class="sourceLineNo">1473</span>    try {<a name="line.1473"></a>
-<span class="sourceLineNo">1474</span>      // Do all sanity checking in here if we have a valid CompactionRequestImpl<a name="line.1474"></a>
-<span class="sourceLineNo">1475</span>      // because we need to clean up after it on the way out in a finally<a name="line.1475"></a>
-<span class="sourceLineNo">1476</span>      // block below<a name="line.1476"></a>
-<span class="sourceLineNo">1477</span>      long compactionStartTime = EnvironmentEdgeManager.currentTime();<a name="line.1477"></a>
-<span class="sourceLineNo">1478</span>      assert compaction.hasSelection();<a name="line.1478"></a>
-<span class="sourceLineNo">1479</span>      Collection&lt;HStoreFile&gt; filesToCompact = cr.getFiles();<a name="line.1479"></a>
-<span class="sourceLineNo">1480</span>      assert !filesToCompact.isEmpty();<a name="line.1480"></a>
-<span class="sourceLineNo">1481</span>      synchronized (filesCompacting) {<a name="line.1481"></a>
-<span class="sourceLineNo">1482</span>        // sanity check: we're compacting files that this store knows about<a name="line.1482"></a>
-<span class="sourceLineNo">1483</span>        // TODO: change this to LOG.error() after more debugging<a name="line.1483"></a>
-<span class="sourceLineNo">1484</span>        Preconditions.checkArgument(filesCompacting.containsAll(filesToCompact));<a name="line.1484"></a>
-<span class="sourceLineNo">1485</span>      }<a name="line.1485"></a>
-<span class="sourceLineNo">1486</span><a name="line.1486"></a>
-<span class="sourceLineNo">1487</span>      // Ready to go. Have list of files to compact.<a name="line.1487"></a>
-<span class="sourceLineNo">1488</span>      LOG.info("Starting compaction of " + filesToCompact +<a name="line.1488"></a>
-<span class="sourceLineNo">1489</span>        " into tmpdir=" + getRegionFileSystem().getTempDir() + ", totalSize=" +<a name="line.1489"></a>
-<span class="sourceLineNo">1490</span>          TraditionalBinaryPrefix.long2String(cr.getSize(), "", 1));<a name="line.1490"></a>
-<span class="sourceLineNo">1491</span><a name="line.1491"></a>
-<span class="sourceLineNo">1492</span>      return doCompaction(cr, filesToCompact, user, compactionStartTime,<a name="line.1492"></a>
-<span class="sourceLineNo">1493</span>          compaction.compact(throughputController, user));<a name="line.1493"></a>
-<span class="sourceLineNo">1494</span>    } finally {<a name="line.1494"></a>
-<span class="sourceLineNo">1495</span>      finishCompactionRequest(cr);<a name="line.1495"></a>
-<span class="sourceLineNo">1496</span>    }<a name="line.1496"></a>
-<span class="sourceLineNo">1497</span>  }<a name="line.1497"></a>
-<span class="sourceLineNo">1498</span><a name="line.1498"></a>
-<span class="sourceLineNo">1499</span>  protected List&lt;HStoreFile&gt; doCompaction(CompactionRequestImpl cr,<a name="line.1499"></a>
-<span class="sourceLineNo">1500</span>      Collection&lt;HStoreFile&gt; filesToCompact, User user, long compactionStartTime,<a name="line.1500"></a>
-<span class="sourceLineNo">1501</span>      List&lt;Path&gt; newFiles) throws IOException {<a name="line.1501"></a>
-<span class="sourceLineNo">1502</span>    // Do the steps necessary to complete the compaction.<a name="line.1502"></a>
-<span class="sourceLineNo">1503</span>    setStoragePolicyFromFileName(newFiles);<a name="line.1503"></a>
-<span class="sourceLineNo">1504</span>    List&lt;HStoreFile&gt; sfs = moveCompactedFilesIntoPlace(cr, newFiles, user);<a name="line.1504"></a>
-<span class="sourceLineNo">1505</span>    writeCompactionWalRecord(filesToCompact, sfs);<a name="line.1505"></a>
-<span class="sourceLineNo">1506</span>    replaceStoreFiles(filesToCompact, sfs);<a name="line.1506"></a>
-<span class="sourceLineNo">1507</span>    if (cr.isMajor()) {<a name="line.1507"></a>
-<span class="sourceLineNo">1508</span>      majorCompactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1508"></a>
-<span class="sourceLineNo">1509</span>      majorCompactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1509"></a>
-<span class="sourceLineNo">1510</span>    } else {<a name="line.1510"></a>
-<span class="sourceLineNo">1511</span>      compactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1511"></a>
-<span class="sourceLineNo">1512</span>      compactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1512"></a>
+<span class="sourceLineNo">1330</span>      // TODO this used to get the store files in descending order,<a name="line.1330"></a>
+<span class="sourceLineNo">1331</span>      // but now we get them in ascending order, which I think is<a name="line.1331"></a>
+<span class="sourceLineNo">1332</span>      // actually more correct, since memstore get put at the end.<a name="line.1332"></a>
+<span class="sourceLineNo">1333</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1333"></a>
+<span class="sourceLineNo">1334</span>        .getScannersForStoreFiles(storeFilesToScan, cacheBlocks, usePread, isCompaction, false,<a name="line.1334"></a>
+<span class="sourceLineNo">1335</span>          matcher, readPt);<a name="line.1335"></a>
+<span class="sourceLineNo">1336</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1336"></a>
+<span class="sourceLineNo">1337</span>      scanners.addAll(sfScanners);<a name="line.1337"></a>
+<span class="sourceLineNo">1338</span>      // Then the memstore scanners<a name="line.1338"></a>
+<span class="sourceLineNo">1339</span>      scanners.addAll(memStoreScanners);<a name="line.1339"></a>
+<span class="sourceLineNo">1340</span>      return scanners;<a name="line.1340"></a>
+<span class="sourceLineNo">1341</span>    } catch (Throwable t) {<a name="line.1341"></a>
+<span class="sourceLineNo">1342</span>      clearAndClose(memStoreScanners);<a name="line.1342"></a>
+<span class="sourceLineNo">1343</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1343"></a>
+<span class="sourceLineNo">1344</span>    }<a name="line.1344"></a>
+<span class="sourceLineNo">1345</span>  }<a name="line.1345"></a>
+<span class="sourceLineNo">1346</span><a name="line.1346"></a>
+<span class="sourceLineNo">1347</span>  private static void clearAndClose(List&lt;KeyValueScanner&gt; scanners) {<a name="line.1347"></a>
+<span class="sourceLineNo">1348</span>    if (scanners == null) {<a name="line.1348"></a>
+<span class="sourceLineNo">1349</span>      return;<a name="line.1349"></a>
+<span class="sourceLineNo">1350</span>    }<a name="line.1350"></a>
+<span class="sourceLineNo">1351</span>    for (KeyValueScanner s : scanners) {<a name="line.1351"></a>
+<span class="sourceLineNo">1352</span>      s.close();<a name="line.1352"></a>
+<span class="sourceLineNo">1353</span>    }<a name="line.1353"></a>
+<span class="sourceLineNo">1354</span>    scanners.clear();<a name="line.1354"></a>
+<span class="sourceLineNo">1355</span>  }<a name="line.1355"></a>
+<span class="sourceLineNo">1356</span><a name="line.1356"></a>
+<span class="sourceLineNo">1357</span>  /**<a name="line.1357"></a>
+<span class="sourceLineNo">1358</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1358"></a>
+<span class="sourceLineNo">1359</span>   * (that happens further down the line).<a name="line.1359"></a>
+<span class="sourceLineNo">1360</span>   * @param files the list of files on which the scanners has to be created<a name="line.1360"></a>
+<span class="sourceLineNo">1361</span>   * @param cacheBlocks cache the blocks or not<a name="line.1361"></a>
+<span class="sourceLineNo">1362</span>   * @param usePread true to use pread, false if not<a name="line.1362"></a>
+<span class="sourceLineNo">1363</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1363"></a>
+<span class="sourceLineNo">1364</span>   * @param matcher the scan query matcher<a name="line.1364"></a>
+<span class="sourceLineNo">1365</span>   * @param startRow the start row<a name="line.1365"></a>
+<span class="sourceLineNo">1366</span>   * @param stopRow the stop row<a name="line.1366"></a>
+<span class="sourceLineNo">1367</span>   * @param readPt the read point of the current scan<a name="line.1367"></a>
+<span class="sourceLineNo">1368</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1368"></a>
+<span class="sourceLineNo">1369</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1369"></a>
+<span class="sourceLineNo">1370</span>   */<a name="line.1370"></a>
+<span class="sourceLineNo">1371</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1371"></a>
+<span class="sourceLineNo">1372</span>      boolean isGet, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.1372"></a>
+<span class="sourceLineNo">1373</span>      byte[] startRow, byte[] stopRow, long readPt, boolean includeMemstoreScanner)<a name="line.1373"></a>
+<span class="sourceLineNo">1374</span>      throws IOException {<a name="line.1374"></a>
+<span class="sourceLineNo">1375</span>    return getScanners(files, cacheBlocks, usePread, isCompaction, matcher, startRow, true, stopRow,<a name="line.1375"></a>
+<span class="sourceLineNo">1376</span>      false, readPt, includeMemstoreScanner);<a name="line.1376"></a>
+<span class="sourceLineNo">1377</span>  }<a name="line.1377"></a>
+<span class="sourceLineNo">1378</span><a name="line.1378"></a>
+<span class="sourceLineNo">1379</span>  /**<a name="line.1379"></a>
+<span class="sourceLineNo">1380</span>   * Create scanners on the given files and if needed on the memstore with no filtering based on TTL<a name="line.1380"></a>
+<span class="sourceLineNo">1381</span>   * (that happens further down the line).<a name="line.1381"></a>
+<span class="sourceLineNo">1382</span>   * @param files the list of files on which the scanners has to be created<a name="line.1382"></a>
+<span class="sourceLineNo">1383</span>   * @param cacheBlocks ache the blocks or not<a name="line.1383"></a>
+<span class="sourceLineNo">1384</span>   * @param usePread true to use pread, false if not<a name="line.1384"></a>
+<span class="sourceLineNo">1385</span>   * @param isCompaction true if the scanner is created for compaction<a name="line.1385"></a>
+<span class="sourceLineNo">1386</span>   * @param matcher the scan query matcher<a name="line.1386"></a>
+<span class="sourceLineNo">1387</span>   * @param startRow the start row<a name="line.1387"></a>
+<span class="sourceLineNo">1388</span>   * @param includeStartRow true to include start row, false if not<a name="line.1388"></a>
+<span class="sourceLineNo">1389</span>   * @param stopRow the stop row<a name="line.1389"></a>
+<span class="sourceLineNo">1390</span>   * @param includeStopRow true to include stop row, false if not<a name="line.1390"></a>
+<span class="sourceLineNo">1391</span>   * @param readPt the read point of the current scan<a name="line.1391"></a>
+<span class="sourceLineNo">1392</span>   * @param includeMemstoreScanner true if memstore has to be included<a name="line.1392"></a>
+<span class="sourceLineNo">1393</span>   * @return scanners on the given files and on the memstore if specified<a name="line.1393"></a>
+<span class="sourceLineNo">1394</span>   */<a name="line.1394"></a>
+<span class="sourceLineNo">1395</span>  public List&lt;KeyValueScanner&gt; getScanners(List&lt;HStoreFile&gt; files, boolean cacheBlocks,<a name="line.1395"></a>
+<span class="sourceLineNo">1396</span>      boolean usePread, boolean isCompaction, ScanQueryMatcher matcher, byte[] startRow,<a name="line.1396"></a>
+<span class="sourceLineNo">1397</span>      boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.1397"></a>
+<span class="sourceLineNo">1398</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.1398"></a>
+<span class="sourceLineNo">1399</span>    List&lt;KeyValueScanner&gt; memStoreScanners = null;<a name="line.1399"></a>
+<span class="sourceLineNo">1400</span>    if (includeMemstoreScanner) {<a name="line.1400"></a>
+<span class="sourceLineNo">1401</span>      this.lock.readLock().lock();<a name="line.1401"></a>
+<span class="sourceLineNo">1402</span>      try {<a name="line.1402"></a>
+<span class="sourceLineNo">1403</span>        memStoreScanners = this.memstore.getScanners(readPt);<a name="line.1403"></a>
+<span class="sourceLineNo">1404</span>      } finally {<a name="line.1404"></a>
+<span class="sourceLineNo">1405</span>        this.lock.readLock().unlock();<a name="line.1405"></a>
+<span class="sourceLineNo">1406</span>      }<a name="line.1406"></a>
+<span class="sourceLineNo">1407</span>    }<a name="line.1407"></a>
+<span class="sourceLineNo">1408</span>    try {<a name="line.1408"></a>
+<span class="sourceLineNo">1409</span>      List&lt;StoreFileScanner&gt; sfScanners = StoreFileScanner<a name="line.1409"></a>
+<span class="sourceLineNo">1410</span>        .getScannersForStoreFiles(files, cacheBlocks, usePread, isCompaction, false, matcher,<a name="line.1410"></a>
+<span class="sourceLineNo">1411</span>          readPt);<a name="line.1411"></a>
+<span class="sourceLineNo">1412</span>      List&lt;KeyValueScanner&gt; scanners = new ArrayList&lt;&gt;(sfScanners.size() + 1);<a name="line.1412"></a>
+<span class="sourceLineNo">1413</span>      scanners.addAll(sfScanners);<a name="line.1413"></a>
+<span class="sourceLineNo">1414</span>      // Then the memstore scanners<a name="line.1414"></a>
+<span class="sourceLineNo">1415</span>      if (memStoreScanners != null) {<a name="line.1415"></a>
+<span class="sourceLineNo">1416</span>        scanners.addAll(memStoreScanners);<a name="line.1416"></a>
+<span class="sourceLineNo">1417</span>      }<a name="line.1417"></a>
+<span class="sourceLineNo">1418</span>      return scanners;<a name="line.1418"></a>
+<span class="sourceLineNo">1419</span>    } catch (Throwable t) {<a name="line.1419"></a>
+<span class="sourceLineNo">1420</span>      clearAndClose(memStoreScanners);<a name="line.1420"></a>
+<span class="sourceLineNo">1421</span>      throw t instanceof IOException ? (IOException) t : new IOException(t);<a name="line.1421"></a>
+<span class="sourceLineNo">1422</span>    }<a name="line.1422"></a>
+<span class="sourceLineNo">1423</span>  }<a name="line.1423"></a>
+<span class="sourceLineNo">1424</span><a name="line.1424"></a>
+<span class="sourceLineNo">1425</span>  /**<a name="line.1425"></a>
+<span class="sourceLineNo">1426</span>   * @param o Observer who wants to know about changes in set of Readers<a name="line.1426"></a>
+<span class="sourceLineNo">1427</span>   */<a name="line.1427"></a>
+<span class="sourceLineNo">1428</span>  public void addChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1428"></a>
+<span class="sourceLineNo">1429</span>    this.changedReaderObservers.add(o);<a name="line.1429"></a>
+<span class="sourceLineNo">1430</span>  }<a name="line.1430"></a>
+<span class="sourceLineNo">1431</span><a name="line.1431"></a>
+<span class="sourceLineNo">1432</span>  /**<a name="line.1432"></a>
+<span class="sourceLineNo">1433</span>   * @param o Observer no longer interested in changes in set of Readers.<a name="line.1433"></a>
+<span class="sourceLineNo">1434</span>   */<a name="line.1434"></a>
+<span class="sourceLineNo">1435</span>  public void deleteChangedReaderObserver(ChangedReadersObserver o) {<a name="line.1435"></a>
+<span class="sourceLineNo">1436</span>    // We don't check if observer present; it may not be (legitimately)<a name="line.1436"></a>
+<span class="sourceLineNo">1437</span>    this.changedReaderObservers.remove(o);<a name="line.1437"></a>
+<span class="sourceLineNo">1438</span>  }<a name="line.1438"></a>
+<span class="sourceLineNo">1439</span><a name="line.1439"></a>
+<span class="sourceLineNo">1440</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1440"></a>
+<span class="sourceLineNo">1441</span>  // Compaction<a name="line.1441"></a>
+<span class="sourceLineNo">1442</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.1442"></a>
+<span class="sourceLineNo">1443</span><a name="line.1443"></a>
+<span class="sourceLineNo">1444</span>  /**<a name="line.1444"></a>
+<span class="sourceLineNo">1445</span>   * Compact the StoreFiles.  This method may take some time, so the calling<a name="line.1445"></a>
+<span class="sourceLineNo">1446</span>   * thread must be able to block for long periods.<a name="line.1446"></a>
+<span class="sourceLineNo">1447</span>   *<a name="line.1447"></a>
+<span class="sourceLineNo">1448</span>   * &lt;p&gt;During this time, the Store can work as usual, getting values from<a name="line.1448"></a>
+<span class="sourceLineNo">1449</span>   * StoreFiles and writing new StoreFiles from the memstore.<a name="line.1449"></a>
+<span class="sourceLineNo">1450</span>   *<a name="line.1450"></a>
+<span class="sourceLineNo">1451</span>   * Existing StoreFiles are not destroyed until the new compacted StoreFile is<a name="line.1451"></a>
+<span class="sourceLineNo">1452</span>   * completely written-out to disk.<a name="line.1452"></a>
+<span class="sourceLineNo">1453</span>   *<a name="line.1453"></a>
+<span class="sourceLineNo">1454</span>   * &lt;p&gt;The compactLock prevents multiple simultaneous compactions.<a name="line.1454"></a>
+<span class="sourceLineNo">1455</span>   * The structureLock prevents us from interfering with other write operations.<a name="line.1455"></a>
+<span class="sourceLineNo">1456</span>   *<a name="line.1456"></a>
+<span class="sourceLineNo">1457</span>   * &lt;p&gt;We don't want to hold the structureLock for the whole time, as a compact()<a name="line.1457"></a>
+<span class="sourceLineNo">1458</span>   * can be lengthy and we want to allow cache-flushes during this period.<a name="line.1458"></a>
+<span class="sourceLineNo">1459</span>   *<a name="line.1459"></a>
+<span class="sourceLineNo">1460</span>   * &lt;p&gt; Compaction event should be idempotent, since there is no IO Fencing for<a name="line.1460"></a>
+<span class="sourceLineNo">1461</span>   * the region directory in hdfs. A region server might still try to complete the<a name="line.1461"></a>
+<span class="sourceLineNo">1462</span>   * compaction after it lost the region. That is why the following events are carefully<a name="line.1462"></a>
+<span class="sourceLineNo">1463</span>   * ordered for a compaction:<a name="line.1463"></a>
+<span class="sourceLineNo">1464</span>   *  1. Compaction writes new files under region/.tmp directory (compaction output)<a name="line.1464"></a>
+<span class="sourceLineNo">1465</span>   *  2. Compaction atomically moves the temporary file under region directory<a name="line.1465"></a>
+<span class="sourceLineNo">1466</span>   *  3. Compaction appends a WAL edit containing the compaction input and output files.<a name="line.1466"></a>
+<span class="sourceLineNo">1467</span>   *  Forces sync on WAL.<a name="line.1467"></a>
+<span class="sourceLineNo">1468</span>   *  4. Compaction deletes the input files from the region directory.<a name="line.1468"></a>
+<span class="sourceLineNo">1469</span>   *<a name="line.1469"></a>
+<span class="sourceLineNo">1470</span>   * Failure conditions are handled like this:<a name="line.1470"></a>
+<span class="sourceLineNo">1471</span>   *  - If RS fails before 2, compaction wont complete. Even if RS lives on and finishes<a name="line.1471"></a>
+<span class="sourceLineNo">1472</span>   *  the compaction later, it will only write the new data file to the region directory.<a name="line.1472"></a>
+<span class="sourceLineNo">1473</span>   *  Since we already have this data, this will be idempotent but we will have a redundant<a name="line.1473"></a>
+<span class="sourceLineNo">1474</span>   *  copy of the data.<a name="line.1474"></a>
+<span class="sourceLineNo">1475</span>   *  - If RS fails between 2 and 3, the region will have a redundant copy of the data. The<a name="line.1475"></a>
+<span class="sourceLineNo">1476</span>   *  RS that failed won't be able to finish sync() for WAL because of lease recovery in WAL.<a name="line.1476"></a>
+<span class="sourceLineNo">1477</span>   *  - If RS fails after 3, the region region server who opens the region will pick up the<a name="line.1477"></a>
+<span class="sourceLineNo">1478</span>   *  the compaction marker from the WAL and replay it by removing the compaction input files.<a name="line.1478"></a>
+<span class="sourceLineNo">1479</span>   *  Failed RS can also attempt to delete those files, but the operation will be idempotent<a name="line.1479"></a>
+<span class="sourceLineNo">1480</span>   *<a name="line.1480"></a>
+<span class="sourceLineNo">1481</span>   * See HBASE-2231 for details.<a name="line.1481"></a>
+<span class="sourceLineNo">1482</span>   *<a name="line.1482"></a>
+<span class="sourceLineNo">1483</span>   * @param compaction compaction details obtained from requestCompaction()<a name="line.1483"></a>
+<span class="sourceLineNo">1484</span>   * @return Storefile we compacted into or null if we failed or opted out early.<a name="line.1484"></a>
+<span class="sourceLineNo">1485</span>   */<a name="line.1485"></a>
+<span class="sourceLineNo">1486</span>  public List&lt;HStoreFile&gt; compact(CompactionContext compaction,<a name="line.1486"></a>
+<span class="sourceLineNo">1487</span>    ThroughputController throughputController, User user) throws IOException {<a name="line.1487"></a>
+<span class="sourceLineNo">1488</span>    assert compaction != null;<a name="line.1488"></a>
+<span class="sourceLineNo">1489</span>    CompactionRequestImpl cr = compaction.getRequest();<a name="line.1489"></a>
+<span class="sourceLineNo">1490</span>    try {<a name="line.1490"></a>
+<span class="sourceLineNo">1491</span>      // Do all sanity checking in here if we have a valid CompactionRequestImpl<a name="line.1491"></a>
+<span class="sourceLineNo">1492</span>      // because we need to clean up after it on the way out in a finally<a name="line.1492"></a>
+<span class="sourceLineNo">1493</span>      // block below<a name="line.1493"></a>
+<span class="sourceLineNo">1494</span>      long compactionStartTime = EnvironmentEdgeManager.currentTime();<a name="line.1494"></a>
+<span class="sourceLineNo">1495</span>      assert compaction.hasSelection();<a name="line.1495"></a>
+<span class="sourceLineNo">1496</span>      Collection&lt;HStoreFile&gt; filesToCompact = cr.getFiles();<a name="line.1496"></a>
+<span class="sourceLineNo">1497</span>      assert !filesToCompact.isEmpty();<a name="line.1497"></a>
+<span class="sourceLineNo">1498</span>      synchronized (filesCompacting) {<a name="line.1498"></a>
+<span class="sourceLineNo">1499</span>        // sanity check: we're compacting files that this store knows about<a name="line.1499"></a>
+<span class="sourceLineNo">1500</span>        // TODO: change this to LOG.error() after more debugging<a name="line.1500"></a>
+<span class="sourceLineNo">1501</span>        Preconditions.checkArgument(filesCompacting.containsAll(filesToCompact));<a name="line.1501"></a>
+<span class="sourceLineNo">1502</span>      }<a name="line.1502"></a>
+<span class="sourceLineNo">1503</span><a name="line.1503"></a>
+<span class="sourceLineNo">1504</span>      // Ready to go. Have list of files to compact.<a name="line.1504"></a>
+<span class="sourceLineNo">1505</span>      LOG.info("Starting compaction of " + filesToCompact +<a name="line.1505"></a>
+<span class="sourceLineNo">1506</span>        " into tmpdir=" + getRegionFileSystem().getTempDir() + ", totalSize=" +<a name="line.1506"></a>
+<span class="sourceLineNo">1507</span>          TraditionalBinaryPrefix.long2String(cr.getSize(), "", 1));<a name="line.1507"></a>
+<span class="sourceLineNo">1508</span><a name="line.1508"></a>
+<span class="sourceLineNo">1509</span>      return doCompaction(cr, filesToCompact, user, compactionStartTime,<a name="line.1509"></a>
+<span class="sourceLineNo">1510</span>          compaction.compact(throughputController, user));<a name="line.1510"></a>
+<span class="sourceLineNo">1511</span>    } finally {<a name="line.1511"></a>
+<span class="sourceLineNo">1512</span>      finishCompactionRequest(cr);<a name="line.1512"></a>
 <span class="sourceLineNo">1513</span>    }<a name="line.1513"></a>
-<span class="sourceLineNo">1514</span>    long outputBytes = getTotalSize(sfs);<a name="line.1514"></a>
+<span class="sourceLineNo">1514</span>  }<a name="line.1514"></a>
 <span class="sourceLineNo">1515</span><a name="line.1515"></a>
-<span class="sourceLineNo">1516</span>    // At this point the store will use new files for all new scanners.<a name="line.1516"></a>
-<span class="sourceLineNo">1517</span>    refreshStoreSizeAndTotalBytes(); // update store size.<a name="line.1517"></a>
-<span class="sourceLineNo">1518</span><a name="line.1518"></a>
-<span class="sourceLineNo">1519</span>    long now = EnvironmentEdgeManager.currentTime();<a name="line.1519"></a>
-<span class="sourceLineNo">1520</span>    if (region.getRegionServerServices() != null<a name="line.1520"></a>
-<span class="sourceLineNo">1521</span>        &amp;&amp; region.getRegionServerServices().getMetrics() != null) {<a name="line.1521"></a>
-<span class="sourceLineNo">1522</span>      region.getRegionServerServices().getMetrics().updateCompaction(<a name="line.1522"></a>
-<span class="sourceLineNo">1523</span>          region.getTableDescriptor().getTableName().getNameAsString(),<a name="line.1523"></a>
-<span class="sourceLineNo">1524</span>          cr.isMajor(), now - compactionStartTime, cr.getFiles().size(),<a name="line.1524"></a>
-<span class="sourceLineNo">1525</span>          newFiles.size(), cr.getSize(), outputBytes);<a name="line.1525"></a>
-<span class="sourceLineNo">1526</span><a name="line.1526"></a>
-<span class="sourceLineNo">1527</span>    }<a name="line.1527"></a>
-<span class="sourceLineNo">1528</span><a name="line.1528"></a>
-<span class="sourceLineNo">1529</span>    logCompactionEndMessage(cr, sfs, now, compactionStartTime);<a name="line.1529"></a>
-<span class="sourceLineNo">1530</span>    return sfs;<a name="line.1530"></a>
-<span class="sourceLineNo">1531</span>  }<a name="line.1531"></a>
-<span class="sourceLineNo">1532</span><a name="line.1532"></a>
-<span class="sourceLineNo">1533</span>  // Set correct storage policy from the file name of DTCP.<a name="line.1533"></a>
-<span class="sourceLineNo">1534</span>  // Rename file will not change the storage policy.<a name="line.1534"></a>
-<span class="sourceLineNo">1535</span>  private void setStoragePolicyFromFileName(List&lt;Path&gt; newFiles) throws IOException {<a name="line.1535"></a>
-<span class="sourceLineNo">1536</span>    String prefix = HConstants.STORAGE_POLICY_PREFIX;<a name="line.1536"></a>
-<span class="sourceLineNo">1537</span>    for (Path newFile : newFiles) {<a name="line.1537"></a>
-<span class="sourceLineNo">1538</span>      if (newFile.getParent().getName().startsWith(prefix)) {<a name="line.1538"></a>
-<span class="sourceLineNo">1539</span>        CommonFSUtils.setStoragePolicy(getRegionFileSystem().getFileSystem(), newFile,<a name="line.1539"></a>
-<span class="sourceLineNo">1540</span>            newFile.getParent().getName().substring(prefix.length()));<a name="line.1540"></a>
-<span class="sourceLineNo">1541</span>      }<a name="line.1541"></a>
-<span class="sourceLineNo">1542</span>    }<a name="line.1542"></a>
-<span class="sourceLineNo">1543</span>  }<a name="line.1543"></a>
-<span class="sourceLineNo">1544</span><a name="line.1544"></a>
-<span class="sourceLineNo">1545</span>  private List&lt;HStoreFile&gt; moveCompactedFilesIntoPlace(CompactionRequestImpl cr,<a name="line.1545"></a>
-<span class="sourceLineNo">1546</span>      List&lt;Path&gt; newFiles, User user) throws IOException {<a name="line.1546"></a>
-<span class="sourceLineNo">1547</span>    List&lt;HStoreFile&gt; sfs = new ArrayList&lt;&gt;(newFiles.size());<a name="line.1547"></a>
-<span class="sourceLineNo">1548</span>    for (Path newFile : newFiles) {<a name="line.1548"></a>
-<span class="sourceLineNo">1549</span>      assert newFile != null;<a name="line.1549"></a>
-<span class="sourceLineNo">1550</span>      HStoreFile sf = moveFileIntoPlace(newFile);<a name="line.1550"></a>
-<span class="sourceLineNo">1551</span>      if (this.getCoprocessorHost() != null) {<a name="line.1551"></a>
-<span class="sourceLineNo">1552</span>        getCoprocessorHost().postCompact(this, sf, cr.getTracker(), cr, user);<a name="line.1552"></a>
-<span class="sourceLineNo">1553</span>      }<a name="line.1553"></a>
-<span class="sourceLineNo">1554</span>      assert sf != null;<a name="line.1554"></a>
-<span class="sourceLineNo">1555</span>      sfs.add(sf);<a name="line.1555"></a>
-<span class="sourceLineNo">1556</span>    }<a name="line.1556"></a>
-<span class="sourceLineNo">1557</span>    return sfs;<a name="line.1557"></a>
-<span class="sourceLineNo">1558</span>  }<a name="line.1558"></a>
-<span class="sourceLineNo">1559</span><a name="line.1559"></a>
-<span class="sourceLineNo">1560</span>  // Package-visible for tests<a name="line.1560"></a>
-<span class="sourceLineNo">1561</span>  HStoreFile moveFileIntoPlace(Path newFile) throws IOException {<a name="line.1561"></a>
-<span class="sourceLineNo">1562</span>    validateStoreFile(newFile);<a name="line.1562"></a>
-<span class="sourceLineNo">1563</span>    // Move the file into the right spot<a name="line.1563"></a>
-<span class="sourceLineNo">1564</span>    Path destPath = getRegionFileSystem().commitStoreFile(getColumnFamilyName(), newFile);<a name="line.1564"></a>
-<span class="sourceLineNo">1565</span>    return createStoreFileAndReader(destPath);<a name="line.1565"></a>
-<span class="sourceLineNo">1566</span>  }<a name="line.1566"></a>
-<span class="sourceLineNo">1567</span><a name="line.1567"></a>
-<span class="sourceLineNo">1568</span>  /**<a name="line.1568"></a>
-<span class="sourceLineNo">1569</span>   * Writes the compaction WAL record.<a name="line.1569"></a>
-<span class="sourceLineNo">1570</span>   * @param filesCompacted Files compacted (input).<a name="line.1570"></a>
-<span class="sourceLineNo">1571</span>   * @param newFiles Files from compaction.<a name="line.1571"></a>
-<span class="sourceLineNo">1572</span>   */<a name="line.1572"></a>
-<span class="sourceLineNo">1573</span>  private void writeCompactionWalRecord(Collection&lt;HStoreFile&gt; filesCompacted,<a name="line.1573"></a>
-<span class="sourceLineNo">1574</span>      Collection&lt;HStoreFile&gt; newFiles) throws IOException {<a name="line.1574"></a>
-<span class="sourceLineNo">1575</span>    if (region.getWAL() == null) {<a name="line.1575"></a>
-<span class="sourceLineNo">1576</span>      return;<a name="line.1576"></a>
-<span class="sourceLineNo">1577</span>    }<a name="line.1577"></a>
-<span class="sourceLineNo">1578</span>    List&lt;Path&gt; inputPaths =<a name="line.1578"></a>
-<span class="sourceLineNo">1579</span>        filesCompacted.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1579"></a>
-<span class="sourceLineNo">1580</span>    List&lt;Path&gt; outputPaths =<a name="line.1580"></a>
-<span class="sourceLineNo">1581</span>        newFiles.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1581"></a>
-<span class="sourceLineNo">1582</span>    RegionInfo info = this.region.getRegionInfo();<a name="line.1582"></a>
-<span class="sourceLineNo">1583</span>    CompactionDescriptor compactionDescriptor = ProtobufUtil.toCompactionDescriptor(info,<a name="line.1583"></a>
-<span class="sourceLineNo">1584</span>        getColumnFamilyDescriptor().getName(), inputPaths, outputPaths,<a name="line.1584"></a>
-<span class="sourceLineNo">1585</span>        getRegionFileSystem().getStoreDir(getColumnFamilyDescriptor().getNameAsString()));<a name="line.1585"></a>
-<span class="sourceLineNo">1586</span>    // Fix reaching into Region to get the maxWaitForSeqId.<a name="line.1586"></a>
-<span class="sourceLineNo">1587</span>    // Does this method belong in Region altogether given it is making so many references up there?<a name="line.1587"></a>
-<span class="sourceLineNo">1588</span>    // Could be Region#writeCompactionMarker(compactionDescriptor);<a name="line.1588"></a>
-<span class="sourceLineNo">1589</span>    WALUtil.writeCompactionMarker(this.region.getWAL(), this.region.getReplicationScope(),<a name="line.1589"></a>
-<span class="sourceLineNo">1590</span>        this.region.getRegionInfo(), compactionDescriptor, this.region.getMVCC());<a name="line.1590"></a>
-<span class="sourceLineNo">1591</span>  }<a name="line.1591"></a>
-<span class="sourceLineNo">1592</span><a name="line.1592"></a>
-<span class="sourceLineNo">1593</span>  void replaceStoreFiles(Collection&lt;HStoreFile&gt; compactedFiles, Collection&lt;HStoreFile&gt; result)<a name="line.1593"></a>
-<span class="sourceLineNo">1594</span>      throws IOException {<a name="line.1594"></a>
-<span class="sourceLineNo">1595</span>    this.lock.writeLock().lock();<a name="line.1595"></a>
-<span class="sourceLineNo">1596</span>    try {<a name="line.1596"></a>
-<span class="sourceLineNo">1597</span>      this.storeEngine.getStoreFileManager().addCompactionResults(compactedFiles, result);<a name="line.1597"></a>
-<span class="sourceLineNo">1598</span>      synchronized (filesCompacting) {<a name="line.1598"></a>
-<span class="sourceLineNo">1599</span>        filesCompacting.removeAll(compactedFiles);<a name="line.1599"></a>
-<span class="sourceLineNo">1600</span>      }<a name="line.1600"></a>
-<span class="sourceLineNo">1601</span><a name="line.1601"></a>
-<span class="sourceLineNo">1602</span>      // These may be null when the RS is shutting down. The space quota Chores will fix the Region<a name="line.1602"></a>
-<span class="sourceLineNo">1603</span>      // sizes later so it's not super-critical if we miss these.<a name="line.1603"></a>
-<span class="sourceLineNo">1604</span>      RegionServerServices rsServices = region.getRegionServerServices();<a name="line.1604"></a>
-<span class="sourceLineNo">1605</span>      if (rsServices != null &amp;&amp; rsServices.getRegionServerSpaceQuotaManager() != null) {<a name="line.1605"></a>
-<span class="sourceLineNo">1606</span>        updateSpaceQuotaAfterFileReplacement(<a name="line.1606"></a>
-<span class="sourceLineNo">1607</span>            rsServices.getRegionServerSpaceQuotaManager().getRegionSizeStore(), getRegionInfo(),<a name="line.1607"></a>
-<span class="sourceLineNo">1608</span>            compactedFiles, result);<a name="line.1608"></a>
-<span class="sourceLineNo">1609</span>      }<a name="line.1609"></a>
-<span class="sourceLineNo">1610</span>    } finally {<a name="line.1610"></a>
-<span class="sourceLineNo">1611</span>      this.lock.writeLock().unlock();<a name="line.1611"></a>
-<span class="sourceLineNo">1612</span>    }<a name="line.1612"></a>
-<span class="sourceLineNo">1613</span>  }<a name="line.1613"></a>
-<span class="sourceLineNo">1614</span><a name="line.1614"></a>
-<span class="sourceLineNo">1615</span>  /**<a name="line.1615"></a>
-<span class="sourceLineNo">1616</span>   * Updates the space quota usage for this region, removing the size for files compacted away<a name="line.1616"></a>
-<span class="sourceLineNo">1617</span>   * and adding in the size for new files.<a name="line.1617"></a>
-<span class="sourceLineNo">1618</span>   *<a name="line.1618"></a>
-<span class="sourceLineNo">1619</span>   * @param sizeStore The object tracking changes in region size for space quotas.<a name="line.1619"></a>
-<span class="sourceLineNo">1620</span>   * @param regionInfo The identifier for the region whose size is being updated.<a name="line.1620"></a>
-<span class="sourceLineNo">1621</span>   * @param oldFiles Files removed from this store's region.<a name="line.1621"></a>
-<span class="sourceLineNo">1622</span>   * @param newFiles Files added to this store's region.<a name="line.1622"></a>
-<span class="sourceLineNo">1623</span>   */<a name="line.1623"></a>
-<span class="sourceLineNo">1624</span>  void updateSpaceQuotaAfterFileReplacement(<a name="line.1624"></a>
-<span class="sourceLineNo">1625</span>      RegionSizeStore sizeStore, RegionInfo regionInfo, Collection&lt;HStoreFile&gt; oldFiles,<a name="line.1625"></a>
-<span class="sourceLineNo">1626</span>      Collection&lt;HStoreFile&gt; newFiles) {<a name="line.1626"></a>
-<span class="sourceLineNo">1627</span>    long delta = 0;<a name="line.1627"></a>
-<span class="sourceLineNo">1628</span>    if (oldFiles != null) {<a name="line.1628"></a>
-<span class="sourceLineNo">1629</span>      for (HStoreFile compactedFile : oldFiles) {<a name="line.1629"></a>
-<span class="sourceLineNo">1630</span>        if (compactedFile.isHFile()) {<a name="line.1630"></a>
-<span class="sourceLineNo">1631</span>          delta -= compactedFile.getReader().length();<a name="line.1631"></a>
-<span class="sourceLineNo">1632</span>        }<a name="line.1632"></a>
-<span class="sourceLineNo">1633</span>      }<a name="line.1633"></a>
-<span class="sourceLineNo">1634</span>    }<a name="line.1634"></a>
-<span class="sourceLineNo">1635</span>    if (newFiles != null) {<a name="line.1635"></a>
-<span class="sourceLineNo">1636</span>      for (HStoreFile newFile : newFiles) {<a name="line.1636"></a>
-<span class="sourceLineNo">1637</span>        if (newFile.isHFile()) {<a name="line.1637"></a>
-<span class="sourceLineNo">1638</span>          delta += newFile.getReader().length();<a name="line.1638"></a>
-<span class="sourceLineNo">1639</span>        }<a name="line.1639"></a>
-<span class="sourceLineNo">1640</span>      }<a name="line.1640"></a>
-<span class="sourceLineNo">1641</span>    }<a name="line.1641"></a>
-<span class="sourceLineNo">1642</span>    sizeStore.incrementRegionSize(regionInfo, delta);<a name="line.1642"></a>
-<span class="sourceLineNo">1643</span>  }<a name="line.1643"></a>
-<span class="sourceLineNo">1644</span><a name="line.1644"></a>
-<span class="sourceLineNo">1645</span>  /**<a name="line.1645"></a>
-<span class="sourceLineNo">1646</span>   * Log a very elaborate compaction completion message.<a name="line.1646"></a>
-<span class="sourceLineNo">1647</span>   * @param cr Request.<a name="line.1647"></a>
-<span class="sourceLineNo">1648</span>   * @param sfs Resulting files.<a name="line.1648"></a>
-<span class="sourceLineNo">1649</span>   * @param compactionStartTime Start time.<a name="line.1649"></a>
-<span class="sourceLineNo">1650</span>   */<a name="line.1650"></a>
-<span class="sourceLineNo">1651</span>  private void logCompactionEndMessage(<a name="line.1651"></a>
-<span class="sourceLineNo">1652</span>      CompactionRequestImpl cr, List&lt;HStoreFile&gt; sfs, long now, long compactionStartTime) {<a name="line.1652"></a>
-<span class="sourceLineNo">1653</span>    StringBuilder message = new StringBuilder(<a name="line.1653"></a>
-<span class="sourceLineNo">1654</span>      "Completed" + (cr.isMajor() ? " major" : "") + " compaction of "<a name="line.1654"></a>
-<span class="sourceLineNo">1655</span>      + cr.getFiles().size() + (cr.isAllFiles() ? " (all)" : "") + " file(s) in "<a name="line.1655"></a>
-<span class="sourceLineNo">1656</span>      + this + " of " + this.getRegionInfo().getShortNameToLog() + " into ");<a name="line.1656"></a>
-<span class="sourceLineNo">1657</span>    if (sfs.isEmpty()) {<a name="line.1657"></a>
-<span class="sourceLineNo">1658</span>      message.append("none, ");<a name="line.1658"></a>
-<span class="sourceLineNo">1659</span>    } else {<a name="line.1659"></a>
-<span class="sourceLineNo">1660</span>      for (HStoreFile sf: sfs) {<a name="line.1660"></a>
-<span class="sourceLineNo">1661</span>        message.append(sf.getPath().getName());<a name="line.1661"></a>
-<span class="sourceLineNo">1662</span>        message.append("(size=");<a name="line.1662"></a>
-<span class="sourceLineNo">1663</span>        message.append(TraditionalBinaryPrefix.long2String(sf.getReader().length(), "", 1));<a name="line.1663"></a>
-<span class="sourceLineNo">1664</span>        message.append("), ");<a name="line.1664"></a>
-<span class="sourceLineNo">1665</span>      }<a name="line.1665"></a>
-<span class="sourceLineNo">1666</span>    }<a name="line.1666"></a>
-<span class="sourceLineNo">1667</span>    message.append("total size for store is ")<a name="line.1667"></a>
-<span class="sourceLineNo">1668</span>      .append(StringUtils.TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1))<a name="line.1668"></a>
-<span class="sourceLineNo">1669</span>      .append(". This selection was in queue for ")<a name="line.1669"></a>
-<span class="sourceLineNo">1670</span>      .append(StringUtils.formatTimeDiff(compactionStartTime, cr.getSelectionTime()))<a name="line.1670"></a>
-<span class="sourceLineNo">1671</span>      .append(", and took ").append(StringUtils.formatTimeDiff(now, compactionStartTime))<a name="line.1671"></a>
-<span class="sourceLineNo">1672</span>      .append(" to execute.");<a name="line.1672"></a>
-<span class="sourceLineNo">1673</span>    LOG.info(message.toString());<a name="line.1673"></a>
-<span class="sourceLineNo">1674</span>    if (LOG.isTraceEnabled()) {<a name="line.1674"></a>
-<span class="sourceLineNo">1675</span>      int fileCount = storeEngine.getStoreFileManager().getStorefileCount();<a name="line.1675"></a>
-<span class="sourceLineNo">1676</span>      long resultSize = getTotalSize(sfs);<a name="line.1676"></a>
-<span class="sourceLineNo">1677</span>      String traceMessage = "COMPACTION start,end,size out,files in,files out,store size,"<a name="line.1677"></a>
-<span class="sourceLineNo">1678</span>        + "store files [" + compactionStartTime + "," + now + "," + resultSize + ","<a name="line.1678"></a>
-<span class="sourceLineNo">1679</span>          + cr.getFiles().size() + "," + sfs.size() + "," +  storeSize + "," + fileCount + "]";<a name="line.1679"></a>
-<span class="sourceLineNo">1680</span>      LOG.trace(traceMessage);<a name="line.1680"></a>
-<span class="sourceLineNo">1681</span>    }<a name="line.1681"></a>
-<span class="sourceLineNo">1682</span>  }<a name="line.1682"></a>
-<span class="sourceLineNo">1683</span><a name="line.1683"></a>
-<span class="sourceLineNo">1684</span>  /**<a name="line.1684"></a>
-<span class="sourceLineNo">1685</span>   * Call to complete a compaction. Its for the case where we find in the WAL a compaction<a name="line.1685"></a>
-<span class="sourceLineNo">1686</span>   * that was not finished.  We could find one recovering a WAL after a regionserver crash.<a name="line.1686"></a>
-<span class="sourceLineNo">1687</span>   * See HBASE-2231.<a name="line.1687"></a>
-<span class="sourceLineNo">1688</span>   */<a name="line.1688"></a>
-<span class="sourceLineNo">1689</span>  public void replayCompactionMarker(CompactionDescriptor compaction, boolean pickCompactionFiles,<a name="line.1689"></a>
-<span class="sourceLineNo">1690</span>      boolean removeFiles) throws IOException {<a name="line.1690"></a>
-<span class="sourceLineNo">1691</span>    LOG.debug("Completing compaction from the WAL marker");<a name="line.1691"></a>
-<span class="sourceLineNo">1692</span>    List&lt;String&gt; compactionInputs = compaction.getCompactionInputList();<a name="line.1692"></a>
-<span class="sourceLineNo">1693</span>    List&lt;String&gt; compactionOutputs = Lists.newArrayList(compaction.getCompactionOutputList());<a name="line.1693"></a>
-<span class="sourceLineNo">1694</span><a name="line.1694"></a>
-<span class="sourceLineNo">1695</span>    // The Compaction Marker is written after the compaction is completed,<a name="line.1695"></a>
-<span class="sourceLineNo">1696</span>    // and the files moved into the region/family folder.<a name="line.1696"></a>
-<span class="sourceLineNo">1697</span>    //<a name="line.1697"></a>
-<span class="sourceLineNo">1698</span>    // If we crash after the entry is written, we may not have removed the<a name="line.1698"></a>
-<span class="sourceLineNo">1699</span>    // input files, but the output file is present.<a name="line.1699"></a>
-<span class="sourceLineNo">1700</span>    // (The unremoved input files will be removed by this function)<a name="line.1700"></a>
-<span class="sourceLineNo">1701</span>    //<a name="line.1701"></a>
-<span class="sourceLineNo">1702</span>    // If we scan the directory and the file is not present, it can mean that:<a name="line.1702"></a>
-<span class="sourceLineNo">1703</span>    //   - The file was manually removed by the user<a name="line.1703"></a>
-<span class="sourceLineNo">1704</span>    //   - The file was removed as consequence of subsequent compaction<a name="line.1704"></a>
-<span class="sourceLineNo">1705</span>    // so, we can't do anything with the "compaction output list" because those<a name="line.1705"></a>
-<span class="sourceLineNo">1706</span>    // files have already been loaded when opening the region (by virtue of<a name="line.1706"></a>
-<span class="sourceLineNo">1707</span>    // being in the store's folder) or they may be missing due to a compaction.<a name="line.1707"></a>
-<span class="sourceLineNo">1708</span><a name="line.1708"></a>
-<span class="sourceLineNo">1709</span>    String familyName = this.getColumnFamilyName();<a name="line.1709"></a>
-<span class="sourceLineNo">1710</span>    Set&lt;String&gt; inputFiles = new HashSet&lt;&gt;();<a name="line.1710"></a>
-<span class="sourceLineNo">1711</span>    for (String compactionInput : compactionInputs) {<a name="line.1711"></a>
-<span class="sourceLineNo">1712</span>      Path inputPath = getRegionFileSystem().getStoreFilePath(familyName, compactionInput);<a name="line.1712"></a>
-<span class="sourceLineNo">1713</span>      inputFiles.add(inputPath.getName());<a name="line.1713"></a>
-<span class="sourceLineNo">1714</span>    }<a name="line.1714"></a>
-<span class="sourceLineNo">1715</span><a name="line.1715"></a>
-<span class="sourceLineNo">1716</span>    //some of the input files might already be deleted<a name="line.1716"></a>
-<span class="sourceLineNo">1717</span>    List&lt;HStoreFile&gt; inputStoreFiles = new ArrayList&lt;&gt;(compactionInputs.size());<a name="line.1717"></a>
-<span class="sourceLineNo">1718</span>    for (HStoreFile sf : this.getStorefiles()) {<a name="line.1718"></a>
-<span class="sourceLineNo">1719</span>      if (inputFiles.contains(sf.getPath().getName())) {<a name="line.1719"></a>
-<span class="sourceLineNo">1720</span>        inputStoreFiles.add(sf);<a name="line.1720"></a>
-<span class="sourceLineNo">1721</span>      }<a name="line.1721"></a>
-<span class="sourceLineNo">1722</span>    }<a name="line.1722"></a>
-<span class="sourceLineNo">1723</span><a name="line.1723"></a>
-<span class="sourceLineNo">1724</span>    // check whether we need to pick up the new files<a name="line.1724"></a>
-<span class="sourceLineNo">1725</span>    List&lt;HStoreFile&gt; outputStoreFiles = new ArrayList&lt;&gt;(compactionOutputs.size());<a name="line.1725"></a>
-<span class="sourceLineNo">1726</span><a name="line.1726"></a>
-<span class="sourceLineNo">1727</span>    if (pickCompactionFiles) {<a name="line.1727"></a>
-<span class="sourceLineNo">1728</span>      for (HStoreFile sf : this.getStorefiles()) {<a name="line.1728"></a>
-<span class="sourceLineNo">1729</span>        compactionOutputs.remove(sf.getPath().getName());<a name="line.1729"></a>
-<span class="sourceLineNo">1730</span>      }<a name="line.1730"></a>
-<span class="sourceLineNo">1731</span>      for (String compactionOutput : compactionOutputs) {<a name="line.1731"></a>
-<span class="sourceLineNo">1732</span>        StoreFileInfo storeFileInfo =<a name="line.1732"></a>
-<span class="sourceLineNo">1733</span>            getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), compactionOutput);<a name="line.1733"></a>
-<span class="sourceLineNo">1734</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.1734"></a>
-<span class="sourceLineNo">1735</span>        outputStoreFiles.add(storeFile);<a name="line.1735"></a>
-<span class="sourceLineNo">1736</span>      }<a name="line.1736"></a>
-<span class="sourceLineNo">1737</span>    }<a name="line.1737"></a>
-<span class="sourceLineNo">1738</span><a name="line.1738"></a>
-<span class="sourceLineNo">1739</span>    if (!inputStoreFiles.isEmpty() || !outputStoreFiles.isEmpty()) {<a name="line.1739"></a>
-<span class="sourceLineNo">1740</span>      LOG.info("Replaying compaction marker, replacing input files: " +<a name="line.1740"></a>
-<span class="sourceLineNo">1741</span>          inputStoreFiles + " with output files : " + outputStoreFiles);<a name="line.1741"></a>
-<span class="sourceLineNo">1742</span>      this.replaceStoreFiles(inputStoreFiles, outputStoreFiles);<a name="line.1742"></a>
-<span class="sourceLineNo">1743</span>      this.refreshStoreSizeAndTotalBytes();<a name="line.1743"></a>
-<span class="sourceLineNo">1744</span>    }<a name="line.1744"></a>
-<span class="sourceLineNo">1745</span>  }<a name="line.1745"></a>
-<span class="sourceLineNo">1746</span><a name="line.1746"></a>
-<span class="sourceLineNo">1747</span>  @Override<a name="line.1747"></a>
-<span class="sourceLineNo">1748</span>  public boolean hasReferences() {<a name="line.1748"></a>
-<span class="sourceLineNo">1749</span>    // Grab the read lock here, because we need to ensure that: only when the atomic<a name="line.1749"></a>
-<span class="sourceLineNo">1750</span>    // replaceStoreFiles(..) finished, we can get all the complete store file list.<a name="line.1750"></a>
-<span class="sourceLineNo">1751</span>    this.lock.readLock().lock();<a name="line.1751"></a>
-<span class="sourceLineNo">1752</span>    try {<a name="line.1752"></a>
-<span class="sourceLineNo">1753</span>      // Merge the current store files with compacted files here due to HBASE-20940.<a name="line.1753"></a>
-<span class="sourceLineNo">1754</span>      Collection&lt;HStoreFile&gt; allStoreFiles = new ArrayList&lt;&gt;(getStorefiles());<a name="line.1754"></a>
-<span class="sourceLineNo">1755</span>      allStoreFiles.addAll(getCompactedFiles());<a name="line.1755"></a>
-<span class="sourceLineNo">1756</span>      return StoreUtils.hasReferences(allStoreFiles);<a name="line.1756"></a>
-<span class="sourceLineNo">1757</span>    } finally {<a name="line.1757"></a>
-<span class="sourceLineNo">1758</span>      this.lock.readLock().unlock();<a name="line.1758"></a>
-<span class="sourceLineNo">1759</span>    }<a name="line.1759"></a>
-<span class="sourceLineNo">1760</span>  }<a name="line.1760"></a>
-<span class="sourceLineNo">1761</span><a name="line.1761"></a>
-<span class="sourceLineNo">1762</span>  /**<a name="line.1762"></a>
-<span class="sourceLineNo">1763</span>   * getter for CompactionProgress object<a name="line.1763"></a>
-<span class="sourceLineNo">1764</span>   * @return CompactionProgress object; can be null<a name="line.1764"></a>
-<span class="sourceLineNo">1765</span>   */<a name="line.1765"></a>
-<span class="sourceLineNo">1766</span>  public CompactionProgress getCompactionProgress() {<a name="line.1766"></a>
-<span class="sourceLineNo">1767</span>    return this.storeEngine.getCompactor().getProgress();<a name="line.1767"></a>
-<span class="sourceLineNo">1768</span>  }<a name="line.1768"></a>
-<span class="sourceLineNo">1769</span><a name="line.1769"></a>
-<span class="sourceLineNo">1770</span>  @Override<a name="line.1770"></a>
-<span class="sourceLineNo">1771</span>  public boolean shouldPerformMajorCompaction() throws IOException {<a name="line.1771"></a>
-<span class="sourceLineNo">1772</span>    for (HStoreFile sf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1772"></a>
-<span class="sourceLineNo">1773</span>      // TODO: what are these reader checks all over the place?<a name="line.1773"></a>
-<span class="sourceLineNo">1774</span>      if (sf.getReader() == null) {<a name="line.1774"></a>
-<span class="sourceLineNo">1775</span>        LOG.debug("StoreFile {} has null Reader", sf);<a name="line.1775"></a>
-<span class="sourceLineNo">1776</span>        return false;<a name="line.1776"></a>
-<span class="sourceLineNo">1777</span>      }<a name="line.1777"></a>
-<span class="sourceLineNo">1778</span>    }<a name="line.1778"></a>
-<span class="sourceLineNo">1779</span>    return storeEngine.getCompactionPolicy().shouldPerformMajorCompaction(<a name="line.1779"></a>
-<span class="sourceLineNo">1780</span>        this.storeEngine.getStoreFileManager().getStorefiles());<a name="line.1780"></a>
-<span class="sourceLineNo">1781</span>  }<a name="line.1781"></a>
-<span class="sourceLineNo">1782</span><a name="line.1782"></a>
-<span class="sourceLineNo">1783</span>  public Optional&lt;CompactionContext&gt; requestCompaction() throws IOException {<a name="line.1783"></a>
-<span class="sourceLineNo">1784</span>    return requestCompaction(NO_PRIORITY, CompactionLifeCycleTracker.DUMMY, null);<a name="line.1784"></a>
-<span class="sourceLineNo">1785</span>  }<a name="line.1785"></a>
-<span class="sourceLineNo">1786</span><a name="line.1786"></a>
-<span class="sourceLineNo">1787</span>  public Optional&lt;CompactionContext&gt; requestCompaction(int priority,<a name="line.1787"></a>
-<span class="sourceLineNo">1788</span>      CompactionLifeCycleTracker tracker, User user) throws IOException {<a name="line.1788"></a>
-<span class="sourceLineNo">1789</span>    // don't even select for compaction if writes are disabled<a name="line.1789"></a>
-<span class="sourceLineNo">1790</span>    if (!this.areWritesEnabled()) {<a name="line.1790"></a>
-<span class="sourceLineNo">1791</span>      return Optional.empty();<a name="line.1791"></a>
-<span class="sourceLineNo">1792</span>    }<a name="line.1792"></a>
-<span class="sourceLineNo">1793</span>    // Before we do compaction, try to get rid of unneeded files to simplify things.<a name="line.1793"></a>
-<span class="sourceLineNo">1794</span>    removeUnneededFiles();<a name="line.1794"></a>
-<span class="sourceLineNo">1795</span><a name="line.1795"></a>
-<span class="sourceLineNo">1796</span>    final CompactionContext compaction = storeEngine.createCompaction();<a name="line.1796"></a>
-<span class="sourceLineNo">1797</span>    CompactionRequestImpl request = null;<a name="line.1797"></a>
-<span class="sourceLineNo">1798</span>    this.lock.readLock().lock();<a name="line.1798"></a>
-<span class="sourceLineNo">1799</span>    try {<a name="line.1799"></a>
-<span class="sourceLineNo">1800</span>      synchronized (filesCompacting) {<a name="line.1800"></a>
-<span class="sourceLineNo">1801</span>        // First, see if coprocessor would want to override selection.<a name="line.1801"></a>
-<span class="sourceLineNo">1802</span>        if (this.getCoprocessorHost() != null) {<a name="line.1802"></a>
-<span class="sourceLineNo">1803</span>          final List&lt;HStoreFile&gt; candidatesForCoproc = compaction.preSelect(this.filesCompacting);<a name="line.1803"></a>
-<span class="sourceLineNo">1804</span>          boolean override = getCoprocessorHost().preCompactSelection(this,<a name="line.1804"></a>
-<span class="sourceLineNo">1805</span>              candidatesForCoproc, tracker, user);<a name="line.1805"></a>
-<span class="sourceLineNo">1806</span>          if (override) {<a name="line.1806"></a>
-<span class="sourceLineNo">1807</span>            // Coprocessor is overriding normal file selection.<a name="line.1807"></a>
-<span class="sourceLineNo">1808</span>            compaction.forceSelect(new CompactionRequestImpl(candidatesForCoproc));<a name="line.1808"></a>
-<span class="sourceLineNo">1809</span>          }<a name="line.1809"></a>
-<span class="sourceLineNo">1810</span>        }<a name="line.1810"></a>
-<span class="sourceLineNo">1811</span><a name="line.1811"></a>
-<span class="sourceLineNo">1812</span>        // Normal case - coprocessor is not overriding file selection.<a name="line.1812"></a>
-<span class="sourceLineNo">1813</span>        if (!compaction.hasSelection()) {<a name="line.1813"></a>
-<span class="sourceLineNo">1814</span>          boolean isUserCompaction = priority == Store.PRIORITY_USER;<a name="line.1814"></a>
-<span class="sourceLineNo">1815</span>          boolean mayUseOffPeak = offPeakHours.isOffPeakHour() &amp;&amp;<a name="line.1815"></a>
-<span class="sourceLineNo">1816</span>              offPeakCompactionTracker.compareAndSet(false, true);<a name="line.1816"></a>
-<span class="sourceLineNo">1817</span>          try {<a name="line.1817"></a>
-<span class="sourceLineNo">1818</span>            compaction.select(this.filesCompacting, isUserCompaction,<a name="line.1818"></a>
-<span class="sourceLineNo">1819</span>              mayUseOffPeak, forceMajor &amp;&amp; filesCompacting.isEmpty());<a name="line.1819"></a>
-<span class="sourceLineNo">1820</span>          } catch (IOException e) {<a name="line.1820"></a>
-<span class="sourceLineNo">1821</span>            if (mayUseOffPeak) {<a name="line.1821"></a>
-<span class="sourceLineNo">1822</span>              offPeakCompactionTracker.set(false);<a name="line.1822"></a>
-<span class="sourceLineNo">1823</span>            }<a name="line.1823"></a>
-<span class="sourceLineNo">1824</span>            throw e;<a name="line.1824"></a>
-<span class="sourceLineNo">1825</span>          }<a name="line.1825"></a>
-<span class="sourceLineNo">1826</span>          assert compaction.hasSelection();<a name="line.1826"></a>
-<span class="sourceLineNo">1827</span>          if (mayUseOffPeak &amp;&amp; !compaction.getRequest().isOffPeak()) {<a name="line.1827"></a>
-<span class="sourceLineNo">1828</span>            // Compaction policy doesn't want to take advantage of off-peak.<a name="line.1828"></a>
-<span class="sourceLineNo">1829</span>            offPeakCompactionTracker.set(false);<a name="line.1829"></a>
-<span class="sourceLineNo">1830</span>          }<a name="line.1830"></a>
-<span class="sourceLineNo">1831</span>        }<a name="line.1831"></a>
-<span class="sourceLineNo">1832</span>        if (this.getCoprocessorHost() != null) {<a name="line.1832"></a>
-<span class="sourceLineNo">1833</span>          this.getCoprocessorHost().postCompactSelection(<a name="line.1833"></a>
-<span class="sourceLineNo">1834</span>              this, ImmutableList.copyOf(compaction.getRequest().getFiles()), tracker,<a name="line.1834"></a>
-<span class="sourceLineNo">1835</span>              compaction.getRequest(), user);<a name="line.1835"></a>
-<span class="sourceLineNo">1836</span>        }<a name="line.1836"></a>
-<span class="sourceLineNo">1837</span>        // Finally, we have the resulting files list. Check if we have any files at all.<a name="line.1837"></a>
-<span class="sourceLineNo">1838</span>        request = compaction.getRequest();<a name="line.1838"></a>
-<span class="sourceLineNo">1839</span>        Collection&lt;HStoreFile&gt; selectedFiles = request.getFiles();<a name="line.1839"></a>
-<span class="sourceLineNo">1840</span>        if (selectedFiles.isEmpty()) {<a name="line.1840"></a>
-<span class="sourceLineNo">1841</span>          return Optional.empty();<a name="line.1841"></a>
-<span class="sourceLineNo">1842</span>        }<a name="line.1842"></a>
-<span class="sourceLineNo">1843</span><a name="line.1843"></a>
-<span class="sourceLineNo">1844</span>        addToCompactingFiles(selectedFiles);<a name="line.1844"></a>
-<span class="sourceLineNo">1845</span><a name="line.1845"></a>
-<span class="sourceLineNo">1846</span>        // If we're enqueuing a major, clear the force flag.<a name="line.1846"></a>
-<span class="sourceLineNo">1847</span>        this.forceMajor = this.forceMajor &amp;&amp; !request.isMajor();<a name="line.1847"></a>
-<span class="sourceLineNo">1848</span><a name="line.1848"></a>
-<span class="sourceLineNo">1849</span>        // Set common request properties.<a name="line.1849"></a>
-<span class="sourceLineNo">1850</span>        // Set priority, either override value supplied by caller or from store.<a name="line.1850"></a>
-<span class="sourceLineNo">1851</span>        final int compactionPriority =<a name="line.1851"></a>
-<span class="sourceLineNo">1852</span>          (priority != Store.NO_PRIORITY) ? priority : getCompactPriority();<a name="line.1852"></a>
-<span class="sourceLineNo">1853</span>        request.setPriority(compactionPriority);<a name="line.1853"></a>
-<span class="sourceLineNo">1854</span><a name="line.1854"></a>
-<span class="sourceLineNo">1855</span>        if (request.isAfterSplit()) {<a name="line.1855"></a>
-<span class="sourceLineNo">1856</span>          // If the store belongs to recently splitted daughter regions, better we consider<a name="line.1856"></a>
-<span class="sourceLineNo">1857</span>          // them with the higher priority in the compaction queue.<a name="line.1857"></a>
-<span class="sourceLineNo">1858</span>          // Override priority if it is lower (higher int value) than<a name="line.1858"></a>
-<span class="sourceLineNo">1859</span>          // SPLIT_REGION_COMPACTION_PRIORITY<a name="line.1859"></a>
-<span class="sourceLineNo">1860</span>          final int splitHousekeepingPriority =<a name="line.1860"></a>
-<span class="sourceLineNo">1861</span>            Math.min(compactionPriority, SPLIT_REGION_COMPACTION_PRIORITY);<a name="line.1861"></a>
-<span class="sourceLineNo">1862</span>          request.setPriority(splitHousekeepingPriority);<a name="line.1862"></a>
-<span class="sourceLineNo">1863</span>          LOG.info("Keeping/Overriding Compaction request priority to {} for CF {} since it"<a name="line.1863"></a>
-<span class="sourceLineNo">1864</span>              + " belongs to recently split daughter region {}", splitHousekeepingPriority,<a name="line.1864"></a>
-<span class="sourceLineNo">1865</span>            this.getColumnFamilyName(), getRegionInfo().getRegionNameAsString());<a name="line.1865"></a>
-<span class="sourceLineNo">1866</span>        }<a name="line.1866"></a>
-<span class="sourceLineNo">1867</span>        request.setDescription(getRegionInfo().getRegionNameAsString(), getColumnFamilyName());<a name="line.1867"></a>
-<span class="sourceLineNo">1868</span>        request.setTracker(tracker);<a name="line.1868"></a>
-<span class="sourceLineNo">1869</span>      }<a name="line.1869"></a>
-<span class="sourceLineNo">1870</span>    } finally {<a name="line.1870"></a>
-<span class="sourceLineNo">1871</span>      this.lock.readLock().unlock();<a name="line.1871"></a>
-<span class="sourceLineNo">1872</span>    }<a name="line.1872"></a>
-<span class="sourceLineNo">1873</span><a name="line.1873"></a>
-<span class="sourceLineNo">1874</span>    if (LOG.isDebugEnabled()) {<a name="line.1874"></a>
-<span class="sourceLineNo">1875</span>      LOG.debug(this + " is initiating " + (request.isMajor() ? "major" : "minor") + " compaction"<a name="line.1875"></a>
-<span class="sourceLineNo">1876</span>          + (request.isAllFiles() ? " (all files)" : ""));<a name="line.1876"></a>
-<span class="sourceLineNo">1877</span>    }<a name="line.1877"></a>
-<span class="sourceLineNo">1878</span>    this.region.reportCompactionRequestStart(request.isMajor());<a name="line.1878"></a>
-<span class="sourceLineNo">1879</span>    return Optional.of(compaction);<a name="line.1879"></a>
-<span class="sourceLineNo">1880</span>  }<a name="line.1880"></a>
-<span class="sourceLineNo">1881</span><a name="line.1881"></a>
-<span class="sourceLineNo">1882</span>  /** Adds the files to compacting files. filesCompacting must be locked. */<a name="line.1882"></a>
-<span class="sourceLineNo">1883</span>  private void addToCompactingFiles(Collection&lt;HStoreFile&gt; filesToAdd) {<a name="line.1883"></a>
-<span class="sourceLineNo">1884</span>    if (CollectionUtils.isEmpty(filesToAdd)) {<a name="line.1884"></a>
-<span class="sourceLineNo">1885</span>      return;<a name="line.1885"></a>
-<span class="sourceLineNo">1886</span>    }<a name="line.1886"></a>
-<span class="sourceLineNo">1887</span>    // Check that we do not try to compact the same StoreFile twice.<a name="line.1887"></a>
-<span class="sourceLineNo">1888</span>    if (!Collections.disjoint(filesCompacting, filesToAdd)) {<a name="line.1888"></a>
-<span class="sourceLineNo">1889</span>      Preconditions.checkArgument(false, "%s overlaps with %s", filesToAdd, filesCompacting);<a name="line.1889"></a>
-<span class="sourceLineNo">1890</span>    }<a name="line.1890"></a>
-<span class="sourceLineNo">1891</span>    filesCompacting.addAll(filesToAdd);<a name="line.1891"></a>
-<span class="sourceLineNo">1892</span>    Collections.sort(filesCompacting, storeEngine.getStoreFileManager().getStoreFileComparator());<a name="line.1892"></a>
-<span class="sourceLineNo">1893</span>  }<a name="line.1893"></a>
-<span class="sourceLineNo">1894</span><a name="line.1894"></a>
-<span class="sourceLineNo">1895</span>  private void removeUnneededFiles() throws IOException {<a name="line.1895"></a>
-<span class="sourceLineNo">1896</span>    if (!conf.getBoolean("hbase.store.delete.expired.storefile", true)) {<a name="line.1896"></a>
-<span class="sourceLineNo">1897</span>      return;<a name="line.1897"></a>
-<span class="sourceLineNo">1898</span>    }<a name="line.1898"></a>
-<span class="sourceLineNo">1899</span>    if (getColumnFamilyDescriptor().getMinVersions() &gt; 0) {<a name="line.1899"></a>
-<span class="sourceLineNo">1900</span>      LOG.debug("Skipping expired store file removal due to min version of {} being {}",<a name="line.1900"></a>
-<span class="sourceLineNo">1901</span>          this, getColumnFamilyDescriptor().getMinVersions());<a name="line.1901"></a>
-<span class="sourceLineNo">1902</span>      return;<a name="line.1902"></a>
-<span class="sourceLineNo">1903</span>    }<a name="line.1903"></a>
-<span class="sourceLineNo">1904</span>    this.lock.readLock().lock();<a name="line.1904"></a>
-<span class="sourceLineNo">1905</span>    Collection&lt;HStoreFile&gt; delSfs = null;<a name="line.1905"></a>
-<span class="sourceLineNo">1906</span>    try {<a name="line.1906"></a>
-<span class="sourceLineNo">1907</span>      synchronized (filesCompacting) {<a name="line.1907"></a>
-<span class="sourceLineNo">1908</span>        long cfTtl = getStoreFileTtl();<a name="line.1908"></a>
-<span class="sourceLineNo">1909</span>        if (cfTtl != Long.MAX_VALUE) {<a name="line.1909"></a>
-<span class="sourceLineNo">1910</span>          delSfs = storeEngine.getStoreFileManager().getUnneededFiles(<a name="line.1910"></a>
-<span class="sourceLineNo">1911</span>              EnvironmentEdgeManager.currentTime() - cfTtl, filesCompacting);<a name="line.1911"></a>
-<span class="sourceLineNo">1912</span>          addToCompactingFiles(delSfs);<a name="line.1912"></a>
-<span class="sourceLineNo">1913</span>        }<a name="line.1913"></a>
-<span class="sourceLineNo">1914</span>      }<a name="line.1914"></a>
-<span class="sourceLineNo">1915</span>    } finally {<a name="line.1915"></a>
-<span class="sourceLineNo">1916</span>      this.lock.readLock().unlock();<a name="line.1916"></a>
-<span class="sourceLineNo">1917</span>    }<a name="line.1917"></a>
-<span class="sourceLineNo">1918</span><a name="line.1918"></a>
-<span class="sourceLineNo">1919</span>    if (CollectionUtils.isEmpty(delSfs)) {<a name="line.1919"></a>
-<span class="sourceLineNo">1920</span>      return;<a name="line.1920"></a>
-<span class="sourceLineNo">1921</span>    }<a name="line.1921"></a>
-<span class="sourceLineNo">1922</span><a name="line.1922"></a>
-<span class="sourceLineNo">1923</span>    Collection&lt;HStoreFile&gt; newFiles = Collections.emptyList(); // No new files.<a name="line.1923"></a>
-<span class="sourceLineNo">1924</span>    writeCompactionWalRecord(delSfs, newFiles);<a name="line.1924"></a>
-<span class="sourceLineNo">1925</span>    replaceStoreFiles(delSfs, newFiles);<a name="line.1925"></a>
-<span class="sourceLineNo">1926</span>    refreshStoreSizeAndTotalBytes();<a name="line.1926"></a>
-<span class="sourceLineNo">1927</span>    LOG.info("Completed removal of " + delSfs.size() + " unnecessary (expired) file(s) in "<a name="line.1927"></a>
-<span class="sourceLineNo">1928</span>        + this + "; total size is "<a name="line.1928"></a>
-<span class="sourceLineNo">1929</span>        + TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1));<a name="line.1929"></a>
-<span class="sourceLineNo">1930</span>  }<a name="line.1930"></a>
-<span class="sourceLineNo">1931</span><a name="line.1931"></a>
-<span class="sourceLineNo">1932</span>  public void cancelRequestedCompaction(CompactionContext compaction) {<a name="line.1932"></a>
-<span class="sourceLineNo">1933</span>    finishCompactionRequest(compaction.getRequest());<a name="line.1933"></a>
-<span class="sourceLineNo">1934</span>  }<a name="line.1934"></a>
-<span class="sourceLineNo">1935</span><a name="line.1935"></a>
-<span class="sourceLineNo">1936</span>  protected void finishCompactionRequest(CompactionRequestImpl cr) {<a name="line.1936"></a>
-<span class="sourceLineNo">1937</span>    this.region.reportCompactionRequestEnd(cr.isMajor(), cr.getFiles().size(), cr.getSize());<a name="line.1937"></a>
-<span class="sourceLineNo">1938</span>    if (cr.isOffPeak()) {<a name="line.1938"></a>
-<span class="sourceLineNo">1939</span>      offPeakCompactionTracker.set(false);<a name="line.1939"></a>
-<span class="sourceLineNo">1940</span>      cr.setOffPeak(false);<a name="line.1940"></a>
-<span class="sourceLineNo">1941</span>    }<a name="line.1941"></a>
-<span class="sourceLineNo">1942</span>    synchronized (filesCompacting) {<a name="line.1942"></a>
-<span class="sourceLineNo">1943</span>      filesCompacting.removeAll(cr.getFiles());<a name="line.1943"></a>
-<span class="sourceLineNo">1944</span>    }<a name="line.1944"></a>
-<span class="sourceLineNo">1945</span>  }<a name="line.1945"></a>
-<span class="sourceLineNo">1946</span><a name="line.1946"></a>
-<span class="sourceLineNo">1947</span>  /**<a name="line.1947"></a>
-<span class="sourceLineNo">1948</span>   * Validates a store file by opening and closing it. In HFileV2 this should not be an expensive<a name="line.1948"></a>
-<span class="sourceLineNo">1949</span>   * operation.<a name="line.1949"></a>
-<span class="sourceLineNo">1950</span>   * @param path the path to the store file<a name="line.1950"></a>
-<span class="sourceLineNo">1951</span>   */<a name="line.1951"></a>
-<span class="sourceLineNo">1952</span>  private void validateStoreFile(Path path) throws IOException {<a name="line.1952"></a>
-<span class="sourceLineNo">1953</span>    HStoreFile storeFile = null;<a name="line.1953"></a>
-<span class="sourceLineNo">1954</span>    try {<a name="line.1954"></a>
-<span class="sourceLineNo">1955</span>      storeFile = createStoreFileAndReader(path);<a name="line.1955"></a>
-<span class="sourceLineNo">1956</span>    } catch (IOException e) {<a name="line.1956"></a>
-<span class="sourceLineNo">1957</span>      LOG.error("Failed to open store file : {}, keeping it in tmp location", path, e);<a name="line.1957"></a>
-<span class="sourceLineNo">1958</span>      throw e;<a name="line.1958"></a>
-<span class="sourceLineNo">1959</span>    } finally {<a name="line.1959"></a>
-<span class="sourceLineNo">1960</span>      if (storeFile != null) {<a name="line.1960"></a>
-<span class="sourceLineNo">1961</span>        storeFile.closeStoreFile(false);<a name="line.1961"></a>
-<span class="sourceLineNo">1962</span>      }<a name="line.1962"></a>
-<span class="sourceLineNo">1963</span>    }<a name="line.1963"></a>
-<span class="sourceLineNo">1964</span>  }<a name="line.1964"></a>
-<span class="sourceLineNo">1965</span><a name="line.1965"></a>
-<span class="sourceLineNo">1966</span>  /**<a name="line.1966"></a>
-<span class="sourceLineNo">1967</span>   * Update counts.<a name="line.1967"></a>
-<span class="sourceLineNo">1968</span>   */<a name="line.1968"></a>
-<span class="sourceLineNo">1969</span>  protected void refreshStoreSizeAndTotalBytes()<a name="line.1969"></a>
-<span class="sourceLineNo">1970</span>    throws IOException {<a name="line.1970"></a>
-<span class="sourceLineNo">1971</span>    this.storeSize.set(0L);<a name="line.1971"></a>
-<span class="sourceLineNo">1972</span>    this.totalUncompressedBytes.set(0L);<a name="line.1972"></a>
-<span class="sourceLineNo">1973</span>    for (HStoreFile hsf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1973"></a>
-<span class="sourceLineNo">1974</span>      StoreFileReader r = hsf.getReader();<a name="line.1974"></a>
-<span class="sourceLineNo">1975</span>      if (r == null) {<a name="line.1975"></a>
-<span class="sourceLineNo">1976</span>        LOG.warn("StoreFile {} has a null Reader", hsf);<a name="line.1976"></a>
-<span class="sourceLineNo">1977</span>        continue;<a name="line.1977"></a>
-<span class="sourceLineNo">1978</span>      }<a name="line.1978"></a>
-<span class="sourceLineNo">1979</span>      this.storeSize.addAndGet(r.length());<a name="line.1979"></a>
-<span class="sourceLineNo">1980</span>      this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.1980"></a>
-<span class="sourceLineNo">1981</span>    }<a name="line.1981"></a>
-<span class="sourceLineNo">1982</span>  }<a name="line.1982"></a>
-<span class="sourceLineNo">1983</span><a name="line.1983"></a>
-<span class="sourceLineNo">1984</span>  /*<a name="line.1984"></a>
-<span class="sourceLineNo">1985</span>   * @param wantedVersions How many versions were asked for.<a name="line.1985"></a>
-<span class="sourceLineNo">1986</span>   * @return wantedVersions or this families' {@link HConstants#VERSIONS}.<a name="line.1986"></a>
-<span class="sourceLineNo">1987</span>   */<a name="line.1987"></a>
-<span class="sourceLineNo">1988</span>  int versionsToReturn(final int wantedVersions) {<a name="line.1988"></a>
-<span class="sourceLineNo">1989</span>    if (wantedVersions &lt;= 0) {<a name="line.1989"></a>
-<span class="sourceLineNo">1990</span>      throw new IllegalArgumentException("Number of versions must be &gt; 0");<a name="line.1990"></a>
-<span class="sourceLineNo">1991</span>    }<a name="line.1991"></a>
-<span class="sourceLineNo">1992</span>    // Make sure we do not return more than maximum versions for this store.<a name="line.1992"></a>
-<span class="sourceLineNo">1993</span>    int maxVersions = getColumnFamilyDescriptor().getMaxVersions();<a name="line.1993"></a>
-<span class="sourceLineNo">1994</span>    return wantedVersions &gt; maxVersions ? maxVersions: wantedVersions;<a name="line.1994"></a>
-<span class="sourceLineNo">1995</span>  }<a name="line.1995"></a>
-<span class="sourceLineNo">1996</span><a name="line.1996"></a>
-<span class="sourceLineNo">1997</span>  @Override<a name="line.1997"></a>
-<span class="sourceLineNo">1998</span>  public boolean canSplit() {<a name="line.1998"></a>
-<span class="sourceLineNo">1999</span>    // Not split-able if we find a reference store file present in the store.<a name="line.1999"></a>
-<span class="sourceLineNo">2000</span>    boolean result = !hasReferences();<a name="line.2000"></a>
-<span class="sourceLineNo">2001</span>    if (!result) {<a name="line.2001"></a>
-<span class="sourceLineNo">2002</span>      LOG.trace("Not splittable; has references: {}", this);<a name="line.2002"></a>
-<span class="sourceLineNo">2003</span>    }<a name="line.2003"></a>
-<span class="sourceLineNo">2004</span>    return result;<a name="line.2004"></a>
-<span class="sourceLineNo">2005</span>  }<a name="line.2005"></a>
-<span class="sourceLineNo">2006</span><a name="line.2006"></a>
-<span class="sourceLineNo">2007</span>  /**<a name="line.2007"></a>
-<span class="sourceLineNo">2008</span>   * Determines if Store should be split.<a name="line.2008"></a>
-<span class="sourceLineNo">2009</span>   */<a name="line.2009"></a>
-<span class="sourceLineNo">2010</span>  public Optional&lt;byte[]&gt; getSplitPoint() {<a name="line.2010"></a>
-<span class="sourceLineNo">2011</span>    this.lock.readLock().lock();<a name="line.2011"></a>
-<span class="sourceLineNo">2012</span>    try {<a name="line.2012"></a>
-<span class="sourceLineNo">2013</span>      // Should already be enforced by the split policy!<a name="line.2013"></a>
-<span class="sourceLineNo">2014</span>      assert !this.getRegionInfo().isMetaRegion();<a name="line.2014"></a>
-<span class="sourceLineNo">2015</span>      // Not split-able if we find a reference store file present in the store.<a name="line.2015"></a>
-<span class="sourceLineNo">2016</span>      if (hasReferences()) {<a name="line.2016"></a>
-<span class="sourceLineNo">2017</span>        LOG.trace("Not splittable; has references: {}", this);<a name="line.2017"></a>
-<span class="sourceLineNo">2018</span>        return Optional.empty();<a name="line.2018"></a>
-<span class="sourceLineNo">2019</span>      }<a name="line.2019"></a>
-<span class="sourceLineNo">2020</span>      return this.storeEngine.getStoreFileManager().getSplitPoint();<a name="line.2020"></a>
-<span class="sourceLineNo">2021</span>    } catch(IOException e) {<a name="line.2021"></a>
-<span class="sourceLineNo">2022</span>      LOG.warn("Failed getting store size for {}", this, e);<a name="line.2022"></a>
-<span class="sourceLineNo">2023</span>    } finally {<a name="line.2023"></a>
-<span class="sourceLineNo">2024</span>      this.lock.readLock().unlock();<a name="line.2024"></a>
-<span class="sourceLineNo">2025</span>    }<a name="line.2025"></a>
-<span class="sourceLineNo">2026</span>    return Optional.empty();<a name="line.2026"></a>
-<span class="sourceLineNo">2027</span>  }<a name="line.2027"></a>
-<span class="sourceLineNo">2028</span><a name="line.2028"></a>
-<span class="sourceLineNo">2029</span>  @Override<a name="line.2029"></a>
-<span class="sourceLineNo">2030</span>  public long getLastCompactSize() {<a name="line.2030"></a>
-<span class="sourceLineNo">2031</span>    return this.lastCompactSize;<a name="line.2031"></a>
-<span class="sourceLineNo">2032</span>  }<a name="line.2032"></a>
-<span class="sourceLineNo">2033</span><a name="line.2033"></a>
-<span class="sourceLineNo">2034</span>  @Override<a name="line.2034"></a>
-<span class="sourceLineNo">2035</span>  public long getSize() {<a name="line.2035"></a>
-<span class="sourceLineNo">2036</span>    return storeSize.get();<a name="line.2036"></a>
-<span class="sourceLineNo">2037</span>  }<a name="line.2037"></a>
-<span class="sourceLineNo">2038</span><a name="line.2038"></a>
-<span class="sourceLineNo">2039</span>  public void triggerMajorCompaction() {<a name="line.2039"></a>
-<span class="sourceLineNo">2040</span>    this.forceMajor = true;<a name="line.2040"></a>
-<span class="sourceLineNo">2041</span>  }<a name="line.2041"></a>
-<span class="sourceLineNo">2042</span><a name="line.2042"></a>
-<span class="sourceLineNo">2043</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2043"></a>
-<span class="sourceLineNo">2044</span>  // File administration<a name="line.2044"></a>
-<span class="sourceLineNo">2045</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2045"></a>
-<span class="sourceLineNo">2046</span><a name="line.2046"></a>
-<span class="sourceLineNo">2047</span>  /**<a name="line.2047"></a>
-<span class="sourceLineNo">2048</span>   * Return a scanner for both the memstore and the HStore files. Assumes we are not in a<a name="line.2048"></a>
-<span class="sourceLineNo">2049</span>   * compaction.<a name="line.2049"></a>
-<span class="sourceLineNo">2050</span>   * @param scan Scan to apply when scanning the stores<a name="line.2050"></a>
-<span class="sourceLineNo">2051</span>   * @param targetCols columns to scan<a name="line.2051"></a>
-<span class="sourceLineNo">2052</span>   * @return a scanner over the current key values<a name="line.2052"></a>
-<span class="sourceLineNo">2053</span>   * @throws IOException on failure<a name="line.2053"></a>
-<span class="sourceLineNo">2054</span>   */<a name="line.2054"></a>
-<span class="sourceLineNo">2055</span>  public KeyValueScanner getScanner(Scan scan, final NavigableSet&lt;byte[]&gt; targetCols, long readPt)<a name="line.2055"></a>
-<span class="sourceLineNo">2056</span>      throws IOException {<a name="line.2056"></a>
-<span class="sourceLineNo">2057</span>    lock.readLock().lock();<a name="line.2057"></a>
-<span class="sourceLineNo">2058</span>    try {<a name="line.2058"></a>
-<span class="sourceLineNo">2059</span>      ScanInfo scanInfo;<a name="line.2059"></a>
-<span class="sourceLineNo">2060</span>      if (this.getCoprocessorHost() != null) {<a name="line.2060"></a>
-<span class="sourceLineNo">2061</span>        scanInfo = this.getCoprocessorHost().preStoreScannerOpen(this, scan);<a name="line.2061"></a>
-<span class="sourceLineNo">2062</span>      } else {<a name="line.2062"></a>
-<span class="sourceLineNo">2063</span>        scanInfo = getScanInfo();<a name="line.2063"></a>
-<span class="sourceLineNo">2064</span>      }<a name="line.2064"></a>
-<span class="sourceLineNo">2065</span>      return createScanner(scan, scanInfo, targetCols, readPt);<a name="line.2065"></a>
-<span class="sourceLineNo">2066</span>    } finally {<a name="line.2066"></a>
-<span class="sourceLineNo">2067</span>      lock.readLock().unlock();<a name="line.2067"></a>
-<span class="sourceLineNo">2068</span>    }<a name="line.2068"></a>
-<span class="sourceLineNo">2069</span>  }<a name="line.2069"></a>
-<span class="sourceLineNo">2070</span><a name="line.2070"></a>
-<span class="sourceLineNo">2071</span>  // HMobStore will override this method to return its own implementation.<a name="line.2071"></a>
-<span class="sourceLineNo">2072</span>  protected KeyValueScanner createScanner(Scan scan, ScanInfo scanInfo,<a name="line.2072"></a>
-<span class="sourceLineNo">2073</span>      NavigableSet&lt;byte[]&gt; targetCols, long readPt) throws IOException {<a name="line.2073"></a>
-<span class="sourceLineNo">2074</span>    return scan.isReversed() ? new ReversedStoreScanner(this, scanInfo, scan, targetCols, readPt)<a name="line.2074"></a>
-<span class="sourceLineNo">2075</span>        : new StoreScanner(this, scanInfo, scan, targetCols, readPt);<a name="line.2075"></a>
-<span class="sourceLineNo">2076</span>  }<a name="line.2076"></a>
-<span class="sourceLineNo">2077</span><a name="line.2077"></a>
-<span class="sourceLineNo">2078</span>  /**<a name="line.2078"></a>
-<span class="sourceLineNo">2079</span>   * Recreates the scanners on the current list of active store file scanners<a name="line.2079"></a>
-<span class="sourceLineNo">2080</span>   * @param currentFileScanners the current set of active store file scanners<a name="line.2080"></a>
-<span class="sourceLineNo">2081</span>   * @param cacheBlocks cache the blocks or not<a name="line.2081"></a>
-<span class="sourceLineNo">2082</span>   * @param usePread use pread or not<a name="line.2082"></a>
-<span class="sourceLineNo">2083</span>   * @param isCompaction is the scanner for compaction<a name="line.2083"></a>
-<span class="sourceLineNo">2084</span>   * @param matcher the scan query matcher<a name="line.2084"></a>
-<span class="sourceLineNo">2085</span>   * @param startRow the scan's start row<a name="line.2085"></a>
-<span class="sourceLineNo">2086</span>   * @param includeStartRow should the scan include the start row<a name="line.2086"></a>
-<span class="sourceLineNo">2087</span>   * @param stopRow the scan's stop row<a name="line.2087"></a>
-<span class="sourceLineNo">2088</span>   * @param includeStopRow should the scan include the stop row<a name="line.2088"></a>
-<span class="sourceLineNo">2089</span>   * @param readPt the read point of the current scane<a name="line.2089"></a>
-<span class="sourceLineNo">2090</span>   * @param includeMemstoreScanner whether the current scanner should include memstorescanner<a name="line.2090"></a>
-<span class="sourceLineNo">2091</span>   * @return list of scanners recreated on the current Scanners<a name="line.2091"></a>
-<span class="sourceLineNo">2092</span>   */<a name="line.2092"></a>
-<span class="sourceLineNo">2093</span>  public List&lt;KeyValueScanner&gt; recreateScanners(List&lt;KeyValueScanner&gt; currentFileScanners,<a name="line.2093"></a>
-<span class="sourceLineNo">2094</span>      boolean cacheBlocks, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.2094"></a>
-<span class="sourceLineNo">2095</span>      byte[] startRow, boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.2095"></a>
-<span class="sourceLineNo">2096</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.2096"></a>
-<span class="sourceLineNo">2097</span>    this.lock.readLock().lock();<a name="line.2097"></a>
-<span class="sourceLineNo">2098</span>    try {<a name="line.2098"></a>
-<span class="sourceLineNo">2099</span>      Map&lt;String, HStoreFile&gt; name2File =<a name="line.2099"></a>
-<span class="sourceLineNo">2100</span>          new HashMap&lt;&gt;(getStorefilesCount() + getCompactedFilesCount());<a name="line.2100"></a>
-<span class="sourceLineNo">2101</span>      for (HStoreFile file : getStorefiles()) {<a name="line.2101"></a>
-<span class="sourceLineNo">2102</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2102"></a>
-<span class="sourceLineNo">2103</span>      }<a name="line.2103"></a>
-<span class="sourceLineNo">2104</span>      Collection&lt;HStoreFile&gt; compactedFiles = getCompactedFiles();<a name="line.2104"></a>
-<span class="sourceLineNo">2105</span>      for (HStoreFile file : IterableUtils.emptyIfNull(compactedFiles)) {<a name="line.2105"></a>
-<span class="sourceLineNo">2106</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2106"></a>
-<span class="sourceLineNo">2107</span>      }<a name="line.2107"></a>
-<span class="sourceLineNo">2108</span>      List&lt;HStoreFile&gt; filesToReopen = new ArrayList&lt;&gt;();<a name="line.2108"></a>
-<span class="sourceLineNo">2109</span>      for (KeyValueScanner kvs : currentFileScanners) {<a name="line.2109"></a>
-<span class="sourceLineNo">2110</span>        assert kvs.isFileScanner();<a name="line.2110"></a>
-<span class="sourceLineNo">2111</span>        if (kvs.peek() == null) {<a name="line.2111"></a>
-<span class="sourceLineNo">2112</span>          continue;<a name="line.2112"></a>
-<span class="sourceLineNo">2113</span>        }<a name="line.2113"></a>
-<span class="sourceLineNo">2114</span>        filesToReopen.add(name2File.get(kvs.getFilePath().getName()));<a name="line.2114"></a>
-<span class="sourceLineNo">2115</span>      }<a name="line.2115"></a>
-<span class="sourceLineNo">2116</span>      if (filesToReopen.isEmpty()) {<a name="line.2116"></a>
-<span class="sourceLineNo">2117</span>        return null;<a name="line.2117"></a>
-<span class="sourceLineNo">2118</span>      }<a name="line.2118"></a>
-<span class="sourceLineNo">2119</span>      return getScanners(filesToReopen, cacheBlocks, false, false, matcher, startRow,<a name="line.2119"></a>
-<span class="sourceLineNo">2120</span>        includeStartRow, stopRow, includeStopRow, readPt, false);<a name="line.2120"></a>
-<span class="sourceLineNo">2121</span>    } finally {<a name="line.2121"></a>
-<span class="sourceLineNo">2122</span>      this.lock.readLock().unlock();<a name="line.2122"></a>
-<span class="sourceLineNo">2123</span>    }<a name="line.2123"></a>
-<span class="sourceLineNo">2124</span>  }<a name="line.2124"></a>
-<span class="sourceLineNo">2125</span><a name="line.2125"></a>
-<span class="sourceLineNo">2126</span>  @Override<a name="line.2126"></a>
-<span class="sourceLineNo">2127</span>  public String toString() {<a name="line.2127"></a>
-<span class="sourceLineNo">2128</span>    return this.getRegionInfo().getShortNameToLog()+ "/" + this.getColumnFamilyName();<a name="line.2128"></a>
-<span class="sourceLineNo">2129</span>  }<a name="line.2129"></a>
-<span class="sourceLineNo">2130</span><a name="line.2130"></a>
-<span class="sourceLineNo">2131</span>  @Override<a name="line.2131"></a>
-<span class="sourceLineNo">2132</span>  public int getStorefilesCount() {<a name="line.2132"></a>
-<span class="sourceLineNo">2133</span>    return this.storeEngine.getStoreFileManager().getStorefileCount();<a name="line.2133"></a>
-<span class="sourceLineNo">2134</span>  }<a name="line.2134"></a>
-<span class="sourceLineNo">2135</span><a name="line.2135"></a>
-<span class="sourceLineNo">2136</span>  @Override<a name="line.2136"></a>
-<span class="sourceLineNo">2137</span>  public int getCompactedFilesCount() {<a name="line.2137"></a>
-<span class="sourceLineNo">2138</span>    return this.storeEngine.getStoreFileManager().getCompactedFilesCount();<a name="line.2138"></a>
-<span class="sourceLineNo">2139</span>  }<a name="line.2139"></a>
-<span class="sourceLineNo">2140</span><a name="line.2140"></a>
-<span class="sourceLineNo">2141</span>  private LongStream getStoreFileAgeStream() {<a name="line.2141"></a>
-<span class="sourceLineNo">2142</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream().filter(sf -&gt; {<a name="line.2142"></a>
-<span class="sourceLineNo">2143</span>      if (sf.getReader() == null) {<a name="line.2143"></a>
-<span class="sourceLineNo">2144</span>        LOG.warn("StoreFile {} has a null Reader", sf);<a name="line.2144"></a>
-<span class="sourceLineNo">2145</span>        return false;<a name="line.2145"></a>
-<span class="sourceLineNo">2146</span>      } else {<a name="line.2146"></a>
-<span class="sourceLineNo">2147</span>        return true;<a name="line.2147"></a>
-<span class="sourceLineNo">2148</span>      }<a name="line.2148"></a>
-<span class="sourceLineNo">2149</span>    }).filter(HStoreFile::isHFile).mapToLong(sf -&gt; sf.getFileInfo().getCreatedTimestamp())<a name="line.2149"></a>
-<span class="sourceLineNo">2150</span>        .map(t -&gt; EnvironmentEdgeManager.currentTime() - t);<a name="line.2150"></a>
-<span class="sourceLineNo">2151</span>  }<a name="line.2151"></a>
-<span class="sourceLineNo">2152</span><a name="line.2152"></a>
-<span class="sourceLineNo">2153</span>  @Override<a name="line.2153"></a>
-<span class="sourceLineNo">2154</span>  public OptionalLong getMaxStoreFileAge() {<a name="line.2154"></a>
-<span class="sourceLineNo">2155</span>    return getStoreFileAgeStream().max();<a name="line.2155"></a>
-<span class="sourceLineNo">2156</span>  }<a name="line.2156"></a>
-<span class="sourceLineNo">2157</span><a name="line.2157"></a>
-<span class="sourceLineNo">2158</span>  @Override<a name="line.2158"></a>
-<span class="sourceLineNo">2159</span>  public OptionalLong getMinStoreFileAge() {<a name="line.2159"></a>
-<span class="sourceLineNo">2160</span>    return getStoreFileAgeStream().min();<a name="line.2160"></a>
-<span class="sourceLineNo">2161</span>  }<a name="line.2161"></a>
-<span class="sourceLineNo">2162</span><a name="line.2162"></a>
-<span class="sourceLineNo">2163</span>  @Override<a name="line.2163"></a>
-<span class="sourceLineNo">2164</span>  public OptionalDouble getAvgStoreFileAge() {<a name="line.2164"></a>
-<span class="sourceLineNo">2165</span>    return getStoreFileAgeStream().average();<a name="line.2165"></a>
-<span class="sourceLineNo">2166</span>  }<a name="line.2166"></a>
-<span class="sourceLineNo">2167</span><a name="line.2167"></a>
-<span class="sourceLineNo">2168</span>  @Override<a name="line.2168"></a>
-<span class="sourceLineNo">2169</span>  public long getNumReferenceFiles() {<a name="line.2169"></a>
-<span class="sourceLineNo">2170</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2170"></a>
-<span class="sourceLineNo">2171</span>        .filter(HStoreFile::isReference).count();<a name="line.2171"></a>
-<span class="sourceLineNo">2172</span>  }<a name="line.2172"></a>
-<span class="sourceLineNo">2173</span><a name="line.2173"></a>
-<span class="sourceLineNo">2174</span>  @Override<a name="line.2174"></a>
-<span class="sourceLineNo">2175</span>  public long getNumHFiles() {<a name="line.2175"></a>
-<span class="sourceLineNo">2176</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2176"></a>
-<span class="sourceLineNo">2177</span>        .filter(HStoreFile::isHFile).count();<a name="line.2177"></a>
-<span class="sourceLineNo">2178</span>  }<a name="line.2178"></a>
-<span class="sourceLineNo">2179</span><a name="line.2179"></a>
-<span class="sourceLineNo">2180</span>  @Override<a name="line.2180"></a>
-<span class="sourceLineNo">2181</span>  public long getStoreSizeUncompressed() {<a name="line.2181"></a>
-<span class="sourceLineNo">2182</span>    return this.totalUncompressedBytes.get();<a name="line.2182"></a>
-<span class="sourceLineNo">2183</span>  }<a name="line.2183"></a>
-<span class="sourceLineNo">2184</span><a name="line.2184"></a>
-<span class="sourceLineNo">2185</span>  @Override<a name="line.2185"></a>
-<span class="sourceLineNo">2186</span>  public long getStorefilesSize() {<a name="line.2186"></a>
-<span class="sourceLineNo">2187</span>    // Include all StoreFiles<a name="line.2187"></a>
-<span class="sourceLineNo">2188</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(), sf -&gt; true);<a name="line.2188"></a>
-<span class="sourceLineNo">2189</span>  }<a name="line.2189"></a>
-<span class="sourceLineNo">2190</span><a name="line.2190"></a>
-<span class="sourceLineNo">2191</span>  @Override<a name="line.2191"></a>
-<span class="sourceLineNo">2192</span>  public long getHFilesSize() {<a name="line.2192"></a>
-<span class="sourceLineNo">2193</span>    // Include only StoreFiles which are HFiles<a name="line.2193"></a>
-<span class="sourceLineNo">2194</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(),<a name="line.2194"></a>
-<span class="sourceLineNo">2195</span>      HStoreFile::isHFile);<a name="line.2195"></a>
-<span class="sourceLineNo">2196</span>  }<a name="line.2196"></a>
-<span class="sourceLineNo">2197</span><a name="line.2197"></a>
-<span class="sourceLineNo">2198</span>  private long getTotalUncompressedBytes(List&lt;HStoreFile&gt; files) {<a name="line.2198"></a>
-<span class="sourceLineNo">2199</span>    return files.stream()<a name="line.2199"></a>
-<span class="sourceLineNo">2200</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::getTotalUncompressedBytes))<a name="line.2200"></a>
-<span class="sourceLineNo">2201</span>      .sum();<a name="line.2201"></a>
-<span class="sourceLineNo">2202</span>  }<a name="line.2202"></a>
-<span class="sourceLineNo">2203</span><a name="line.2203"></a>
-<span class="sourceLineNo">2204</span>  private long getStorefilesSize(Collection&lt;HStoreFile&gt; files, Predicate&lt;HStoreFile&gt; predicate) {<a name="line.2204"></a>
-<span class="sourceLineNo">2205</span>    return files.stream().filter(predicate)<a name="line.2205"></a>
-<span class="sourceLineNo">2206</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::length)).sum();<a name="line.2206"></a>
-<span class="sourceLineNo">2207</span>  }<a name="line.2207"></a>
-<span class="sourceLineNo">2208</span><a name="line.2208"></a>
-<span class="sourceLineNo">2209</span>  private long getStorefileFieldSize(HStoreFile file, ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2209"></a>
-<span class="sourceLineNo">2210</span>    if (file == null) {<a name="line.2210"></a>
-<span class="sourceLineNo">2211</span>      return 0L;<a name="line.2211"></a>
-<span class="sourceLineNo">2212</span>    }<a name="line.2212"></a>
-<span class="sourceLineNo">2213</span>    StoreFileReader reader = file.getReader();<a name="line.2213"></a>
-<span class="sourceLineNo">2214</span>    if (reader == null) {<a name="line.2214"></a>
-<span class="sourceLineNo">2215</span>      return 0L;<a name="line.2215"></a>
-<span class="sourceLineNo">2216</span>    }<a name="line.2216"></a>
-<span class="sourceLineNo">2217</span>    return f.applyAsLong(reader);<a name="line.2217"></a>
-<span class="sourceLineNo">2218</span>  }<a name="line.2218"></a>
-<span class="sourceLineNo">2219</span><a name="line.2219"></a>
-<span class="sourceLineNo">2220</span>  private long getStorefilesFieldSize(ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2220"></a>
-<span class="sourceLineNo">2221</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2221"></a>
-<span class="sourceLineNo">2222</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, f)).sum();<a name="line.2222"></a>
-<span class="sourceLineNo">2223</span>  }<a name="line.2223"></a>
-<span class="sourceLineNo">2224</span><a name="line.2224"></a>
-<span class="sourceLineNo">2225</span>  @Override<a name="line.2225"></a>
-<span class="sourceLineNo">2226</span>  public long getStorefilesRootLevelIndexSize() {<a name="line.2226"></a>
-<span class="sourceLineNo">2227</span>    return getStorefilesFieldSize(StoreFileReader::indexSize);<a name="line.2227"></a>
-<span class="sourceLineNo">2228</span>  }<a name="line.2228"></a>
-<span class="sourceLineNo">2229</span><a name="line.2229"></a>
-<span class="sourceLineNo">2230</span>  @Override<a name="line.2230"></a>
-<span class="sourceLineNo">2231</span>  public long getTotalStaticIndexSize() {<a name="line.2231"></a>
-<span class="sourceLineNo">2232</span>    return getStorefilesFieldSize(StoreFileReader::getUncompressedDataIndexSize);<a name="line.2232"></a>
-<span class="sourceLineNo">2233</span>  }<a name="line.2233"></a>
-<span class="sourceLineNo">2234</span><a name="line.2234"></a>
-<span class="sourceLineNo">2235</span>  @Override<a name="line.2235"></a>
-<span class="sourceLineNo">2236</span>  public long getTotalStaticBloomSize() {<a name="line.2236"></a>
-<span class="sourceLineNo">2237</span>    return getStorefilesFieldSize(StoreFileReader::getTotalBloomSize);<a name="line.2237"></a>
-<span class="sourceLineNo">2238</span>  }<a name="line.2238"></a>
-<span class="sourceLineNo">2239</span><a name="line.2239"></a>
-<span class="sourceLineNo">2240</span>  @Override<a name="line.2240"></a>
-<span class="sourceLineNo">2241</span>  public MemStoreSize getMemStoreSize() {<a name="line.2241"></a>
-<span class="sourceLineNo">2242</span>    return this.memstore.size();<a name="line.2242"></a>
-<span class="sourceLineNo">2243</span>  }<a name="line.2243"></a>
-<span class="sourceLineNo">2244</span><a name="line.2244"></a>
-<span class="sourceLineNo">2245</span>  @Override<a name="line.2245"></a>
-<span class="sourceLineNo">2246</span>  public int getCompactPriority() {<a name="line.2246"></a>
-<span class="sourceLineNo">2247</span>    int priority = this.storeEngine.getStoreFileManager().getStoreCompactionPriority();<a name="line.2247"></a>
-<span class="sourceLineNo">2248</span>    if (priority == PRIORITY_USER) {<a name="line.2248"></a>
-<span class="sourceLineNo">2249</span>      LOG.warn("Compaction priority is USER despite there being no user compaction");<a name="line.2249"></a>
-<span class="sourceLineNo">2250</span>    }<a name="line.2250"></a>
-<span class="sourceLineNo">2251</span>    return priority;<a name="line.2251"></a>
-<span class="sourceLineNo">2252</span>  }<a name="line.2252"></a>
-<span class="sourceLineNo">2253</span><a name="line.2253"></a>
-<span class="sourceLineNo">2254</span>  public boolean throttleCompaction(long compactionSize) {<a name="line.2254"></a>
-<span class="sourceLineNo">2255</span>    return storeEngine.getCompactionPolicy().throttleCompaction(compactionSize);<a name="line.2255"></a>
-<span class="sourceLineNo">2256</span>  }<a name="line.2256"></a>
-<span class="sourceLineNo">2257</span><a name="line.2257"></a>
-<span class="sourceLineNo">2258</span>  public HRegion getHRegion() {<a name="line.2258"></a>
-<span class="sourceLineNo">2259</span>    return this.region;<a name="line.2259"></a>
-<span class="sourceLineNo">2260</span>  }<a name="line.2260"></a>
-<span class="sourceLineNo">2261</span><a name="line.2261"></a>
-<span class="sourceLineNo">2262</span>  public RegionCoprocessorHost getCoprocessorHost() {<a name="line.2262"></a>
-<span class="sourceLineNo">2263</span>    return this.region.getCoprocessorHost();<a name="line.2263"></a>
-<span class="sourceLineNo">2264</span>  }<a name="line.2264"></a>
-<span class="sourceLineNo">2265</span><a name="line.2265"></a>
-<span class="sourceLineNo">2266</span>  @Override<a name="line.2266"></a>
-<span class="sourceLineNo">2267</span>  public RegionInfo getRegionInfo() {<a name="line.2267"></a>
-<span class="sourceLineNo">2268</span>    return getRegionFileSystem().getRegionInfo();<a name="line.2268"></a>
-<span class="sourceLineNo">2269</span>  }<a name="line.2269"></a>
-<span class="sourceLineNo">2270</span><a name="line.2270"></a>
-<span class="sourceLineNo">2271</span>  @Override<a name="line.2271"></a>
-<span class="sourceLineNo">2272</span>  public boolean areWritesEnabled() {<a name="line.2272"></a>
-<span class="sourceLineNo">2273</span>    return this.region.areWritesEnabled();<a name="line.2273"></a>
-<span class="sourceLineNo">2274</span>  }<a name="line.2274"></a>
-<span class="sourceLineNo">2275</span><a name="line.2275"></a>
-<span class="sourceLineNo">2276</span>  @Override<a name="line.2276"></a>
-<span class="sourceLineNo">2277</span>  public long getSmallestReadPoint() {<a name="line.2277"></a>
-<span class="sourceLineNo">2278</span>    return this.region.getSmallestReadPoint();<a name="line.2278"></a>
-<span class="sourceLineNo">2279</span>  }<a name="line.2279"></a>
-<span class="sourceLineNo">2280</span><a name="line.2280"></a>
-<span class="sourceLineNo">2281</span>  /**<a name="line.2281"></a>
-<span class="sourceLineNo">2282</span>   * Adds or replaces the specified KeyValues.<a name="line.2282"></a>
-<span class="sourceLineNo">2283</span>   * &lt;p&gt;<a name="line.2283"></a>
-<span class="sourceLineNo">2284</span>   * For each KeyValue specified, if a cell with the same row, family, and qualifier exists in<a name="line.2284"></a>
-<span class="sourceLineNo">2285</span>   * MemStore, it will be replaced. Otherwise, it will just be inserted to MemStore.<a name="line.2285"></a>
-<span class="sourceLineNo">2286</span>   * &lt;p&gt;<a name="line.2286"></a>
-<span class="sourceLineNo">2287</span>   * This operation is atomic on each KeyValue (row/family/qualifier) but not necessarily atomic<a name="line.2287"></a>
-<span class="sourceLineNo">2288</span>   * across all of them.<a name="line.2288"></a>
-<span class="sourceLineNo">2289</span>   * @param readpoint readpoint below which we can safely remove duplicate KVs<a name="line.2289"></a>
-<span class="sourceLineNo">2290</span>   */<a name="line.2290"></a>
-<span class="sourceLineNo">2291</span>  public void upsert(Iterable&lt;Cell&gt; cells, long readpoint, MemStoreSizing memstoreSizing)<a name="line.2291"></a>
-<span class="sourceLineNo">2292</span>      throws IOException {<a name="line.2292"></a>
-<span class="sourceLineNo">2293</span>    this.lock.readLock().lock();<a name="line.2293"></a>
-<span class="sourceLineNo">2294</span>    try {<a name="line.2294"></a>
-<span class="sourceLineNo">2295</span>      this.memstore.upsert(cells, readpoint, memstoreSizing);<a name="line.2295"></a>
-<span class="sourceLineNo">2296</span>    } finally {<a name="line.2296"></a>
-<span class="sourceLineNo">2297</span>      this.lock.readLock().unlock();<a name="line.2297"></a>
-<span class="sourceLineNo">2298</span>    }<a name="line.2298"></a>
-<span class="sourceLineNo">2299</span>  }<a name="line.2299"></a>
-<span class="sourceLineNo">2300</span><a name="line.2300"></a>
-<span class="sourceLineNo">2301</span>  public StoreFlushContext createFlushContext(long cacheFlushId, FlushLifeCycleTracker tracker) {<a name="line.2301"></a>
-<span class="sourceLineNo">2302</span>    return new StoreFlusherImpl(cacheFlushId, tracker);<a name="line.2302"></a>
-<span class="sourceLineNo">2303</span>  }<a name="line.2303"></a>
-<span class="sourceLineNo">2304</span><a name="line.2304"></a>
-<span class="sourceLineNo">2305</span>  private final class StoreFlusherImpl implements StoreFlushContext {<a name="line.2305"></a>
-<span class="sourceLineNo">2306</span><a name="line.2306"></a>
-<span class="sourceLineNo">2307</span>    private final FlushLifeCycleTracker tracker;<a name="line.2307"></a>
-<span class="sourceLineNo">2308</span>    private final long cacheFlushSeqNum;<a name="line.2308"></a>
-<span class="sourceLineNo">2309</span>    private MemStoreSnapshot snapshot;<a name="line.2309"></a>
-<span class="sourceLineNo">2310</span>    private List&lt;Path&gt; tempFiles;<a name="line.2310"></a>
-<span class="sourceLineNo">2311</span>    private List&lt;Path&gt; committedFiles;<a name="line.2311"></a>
-<span class="sourceLineNo">2312</span>    private long cacheFlushCount;<a name="line.2312"></a>
-<span class="sourceLineNo">2313</span>    private long cacheFlushSize;<a name="line.2313"></a>
-<span class="sourceLineNo">2314</span>    private long outputFileSize;<a name="line.2314"></a>
-<span class="sourceLineNo">2315</span><a name="line.2315"></a>
-<span class="sourceLineNo">2316</span>    private StoreFlusherImpl(long cacheFlushSeqNum, FlushLifeCycleTracker tracker) {<a name="line.2316"></a>
-<span class="sourceLineNo">2317</span>      this.cacheFlushSeqNum = cacheFlushSeqNum;<a name="line.2317"></a>
-<span class="sourceLineNo">2318</span>      this.tracker = tracker;<a name="line.2318"></a>
-<span class="sourceLineNo">2319</span>    }<a name="line.2319"></a>
-<span class="sourceLineNo">2320</span><a name="line.2320"></a>
-<span class="sourceLineNo">2321</span>    /**<a name="line.2321"></a>
-<span class="sourceLineNo">2322</span>     * This is not thread safe. The caller should have a lock on the region or the store.<a name="line.2322"></a>
-<span class="sourceLineNo">2323</span>     * If necessary, the lock can be added with the patch provided in HBASE-10087<a name="line.2323"></a>
-<span class="sourceLineNo">2324</span>     */<a name="line.2324"></a>
-<span class="sourceLineNo">2325</span>    @Override<a name="line.2325"></a>
-<span class="sourceLineNo">2326</span>    public MemStoreSize prepare() {<a name="line.2326"></a>
-<span class="sourceLineNo">2327</span>      // passing the current sequence number of the wal - to allow bookkeeping in the memstore<a name="line.2327"></a>
-<span class="sourceLineNo">2328</span>      this.snapshot = memstore.snapshot();<a name="line.2328"></a>
-<span class="sourceLineNo">2329</span>      this.cacheFlushCount = snapshot.getCellsCount();<a name="line.2329"></a>
-<span class="sourceLineNo">2330</span>      this.cacheFlushSize = snapshot.getDataSize();<a name="line.2330"></a>
-<span class="sourceLineNo">2331</span>      committedFiles = new ArrayList&lt;&gt;(1);<a name="line.2331"></a>
-<span class="sourceLineNo">2332</span>      return snapshot.getMemStoreSize();<a name="line.2332"></a>
-<span class="sourceLineNo">2333</span>    }<a name="line.2333"></a>
-<span class="sourceLineNo">2334</span><a name="line.2334"></a>
-<span class="sourceLineNo">2335</span>    @Override<a name="line.2335"></a>
-<span class="sourceLineNo">2336</span>    public void flushCache(MonitoredTask status) throws IOException {<a name="line.2336"></a>
-<span class="sourceLineNo">2337</span>      RegionServerServices rsService = region.getRegionServerServices();<a name="line.2337"></a>
-<span class="sourceLineNo">2338</span>      ThroughputController throughputController =<a name="line.2338"></a>
-<span class="sourceLineNo">2339</span>          rsService == null ? null : rsService.getFlushThroughputController();<a name="line.2339"></a>
-<span class="sourceLineNo">2340</span>      tempFiles =<a name="line.2340"></a>
-<span class="sourceLineNo">2341</span>          HStore.this.flushCache(cacheFlushSeqNum, snapshot, status, throughputController, tracker);<a name="line.2341"></a>
-<span class="sourceLineNo">2342</span>    }<a name="line.2342"></a>
-<span class="sourceLineNo">2343</span><a name="line.2343"></a>
-<span class="sourceLineNo">2344</span>    @Override<a name="line.2344"></a>
-<span class="sourceLineNo">2345</span>    public boolean commit(MonitoredTask status) throws IOException {<a name="line.2345"></a>
-<span class="sourceLineNo">2346</span>      if (CollectionUtils.isEmpty(this.tempFiles)) {<a name="line.2346"></a>
-<span class="sourceLineNo">2347</span>        return false;<a name="line.2347"></a>
-<span class="sourceLineNo">2348</span>      }<a name="line.2348"></a>
-<span class="sourceLineNo">2349</span>      List&lt;HStoreFile&gt; storeFiles = new ArrayList&lt;&gt;(this.tempFiles.size());<a name="line.2349"></a>
-<span class="sourceLineNo">2350</span>      for (Path storeFilePath : tempFiles) {<a name="line.2350"></a>
-<span class="sourceLineNo">2351</span>        try {<a name="line.2351"></a>
-<span class="sourceLineNo">2352</span>          HStoreFile sf = HStore.this.commitFile(storeFilePath, cacheFlushSeqNum, status);<a name="line.2352"></a>
-<span class="sourceLineNo">2353</span>          outputFileSize += sf.getReader().length();<a name="line.2353"></a>
-<span class="sourceLineNo">2354</span>          storeFiles.add(sf);<a name="line.2354"></a>
-<span class="sourceLineNo">2355</span>        } catch (IOException ex) {<a name="line.2355"></a>
-<span class="sourceLineNo">2356</span>          LOG.error("Failed to commit store file {}", storeFilePath, ex);<a name="line.2356"></a>
-<span class="sourceLineNo">2357</span>          // Try to delete the files we have committed before.<a name="line.2357"></a>
-<span class="sourceLineNo">2358</span>          for (HStoreFile sf : storeFiles) {<a name="line.2358"></a>
-<span class="sourceLineNo">2359</span>            Path pathToDelete = sf.getPath();<a name="line.2359"></a>
-<span class="sourceLineNo">2360</span>            try {<a name="line.2360"></a>
-<span class="sourceLineNo">2361</span>              sf.deleteStoreFile();<a name="line.2361"></a>
-<span class="sourceLineNo">2362</span>            } catch (IOException deleteEx) {<a name="line.2362"></a>
-<span class="sourceLineNo">2363</span>              LOG.error(HBaseMarkers.FATAL, "Failed to delete store file we committed, "<a name="line.2363"></a>
-<span class="sourceLineNo">2364</span>                  + "halting {}", pathToDelete, ex);<a name="line.2364"></a>
-<span class="sourceLineNo">2365</span>              Runtime.getRuntime().halt(1);<a name="line.2365"></a>
-<span class="sourceLineNo">2366</span>            }<a name="line.2366"></a>
-<span class="sourceLineNo">2367</span>          }<a name="line.2367"></a>
-<span class="sourceLineNo">2368</span>          throw new IOException("Failed to commit the flush", ex);<a name="line.2368"></a>
+<span class="sourceLineNo">1516</span>  protected List&lt;HStoreFile&gt; doCompaction(CompactionRequestImpl cr,<a name="line.1516"></a>
+<span class="sourceLineNo">1517</span>      Collection&lt;HStoreFile&gt; filesToCompact, User user, long compactionStartTime,<a name="line.1517"></a>
+<span class="sourceLineNo">1518</span>      List&lt;Path&gt; newFiles) throws IOException {<a name="line.1518"></a>
+<span class="sourceLineNo">1519</span>    // Do the steps necessary to complete the compaction.<a name="line.1519"></a>
+<span class="sourceLineNo">1520</span>    setStoragePolicyFromFileName(newFiles);<a name="line.1520"></a>
+<span class="sourceLineNo">1521</span>    List&lt;HStoreFile&gt; sfs = commitStoreFiles(newFiles, true);<a name="line.1521"></a>
+<span class="sourceLineNo">1522</span>    if (this.getCoprocessorHost() != null) {<a name="line.1522"></a>
+<span class="sourceLineNo">1523</span>      for (HStoreFile sf : sfs) {<a name="line.1523"></a>
+<span class="sourceLineNo">1524</span>        getCoprocessorHost().postCompact(this, sf, cr.getTracker(), cr, user);<a name="line.1524"></a>
+<span class="sourceLineNo">1525</span>      }<a name="line.1525"></a>
+<span class="sourceLineNo">1526</span>    }<a name="line.1526"></a>
+<span class="sourceLineNo">1527</span>    writeCompactionWalRecord(filesToCompact, sfs);<a name="line.1527"></a>
+<span class="sourceLineNo">1528</span>    replaceStoreFiles(filesToCompact, sfs);<a name="line.1528"></a>
+<span class="sourceLineNo">1529</span>    if (cr.isMajor()) {<a name="line.1529"></a>
+<span class="sourceLineNo">1530</span>      majorCompactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1530"></a>
+<span class="sourceLineNo">1531</span>      majorCompactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1531"></a>
+<span class="sourceLineNo">1532</span>    } else {<a name="line.1532"></a>
+<span class="sourceLineNo">1533</span>      compactedCellsCount.addAndGet(getCompactionProgress().getTotalCompactingKVs());<a name="line.1533"></a>
+<span class="sourceLineNo">1534</span>      compactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize);<a name="line.1534"></a>
+<span class="sourceLineNo">1535</span>    }<a name="line.1535"></a>
+<span class="sourceLineNo">1536</span>    long outputBytes = getTotalSize(sfs);<a name="line.1536"></a>
+<span class="sourceLineNo">1537</span><a name="line.1537"></a>
+<span class="sourceLineNo">1538</span>    // At this point the store will use new files for all new scanners.<a name="line.1538"></a>
+<span class="sourceLineNo">1539</span>    refreshStoreSizeAndTotalBytes(); // update store size.<a name="line.1539"></a>
+<span class="sourceLineNo">1540</span><a name="line.1540"></a>
+<span class="sourceLineNo">1541</span>    long now = EnvironmentEdgeManager.currentTime();<a name="line.1541"></a>
+<span class="sourceLineNo">1542</span>    if (region.getRegionServerServices() != null<a name="line.1542"></a>
+<span class="sourceLineNo">1543</span>        &amp;&amp; region.getRegionServerServices().getMetrics() != null) {<a name="line.1543"></a>
+<span class="sourceLineNo">1544</span>      region.getRegionServerServices().getMetrics().updateCompaction(<a name="line.1544"></a>
+<span class="sourceLineNo">1545</span>          region.getTableDescriptor().getTableName().getNameAsString(),<a name="line.1545"></a>
+<span class="sourceLineNo">1546</span>          cr.isMajor(), now - compactionStartTime, cr.getFiles().size(),<a name="line.1546"></a>
+<span class="sourceLineNo">1547</span>          newFiles.size(), cr.getSize(), outputBytes);<a name="line.1547"></a>
+<span class="sourceLineNo">1548</span><a name="line.1548"></a>
+<span class="sourceLineNo">1549</span>    }<a name="line.1549"></a>
+<span class="sourceLineNo">1550</span><a name="line.1550"></a>
+<span class="sourceLineNo">1551</span>    logCompactionEndMessage(cr, sfs, now, compactionStartTime);<a name="line.1551"></a>
+<span class="sourceLineNo">1552</span>    return sfs;<a name="line.1552"></a>
+<span class="sourceLineNo">1553</span>  }<a name="line.1553"></a>
+<span class="sourceLineNo">1554</span><a name="line.1554"></a>
+<span class="sourceLineNo">1555</span>  // Set correct storage policy from the file name of DTCP.<a name="line.1555"></a>
+<span class="sourceLineNo">1556</span>  // Rename file will not change the storage policy.<a name="line.1556"></a>
+<span class="sourceLineNo">1557</span>  private void setStoragePolicyFromFileName(List&lt;Path&gt; newFiles) throws IOException {<a name="line.1557"></a>
+<span class="sourceLineNo">1558</span>    String prefix = HConstants.STORAGE_POLICY_PREFIX;<a name="line.1558"></a>
+<span class="sourceLineNo">1559</span>    for (Path newFile : newFiles) {<a name="line.1559"></a>
+<span class="sourceLineNo">1560</span>      if (newFile.getParent().getName().startsWith(prefix)) {<a name="line.1560"></a>
+<span class="sourceLineNo">1561</span>        CommonFSUtils.setStoragePolicy(getRegionFileSystem().getFileSystem(), newFile,<a name="line.1561"></a>
+<span class="sourceLineNo">1562</span>            newFile.getParent().getName().substring(prefix.length()));<a name="line.1562"></a>
+<span class="sourceLineNo">1563</span>      }<a name="line.1563"></a>
+<span class="sourceLineNo">1564</span>    }<a name="line.1564"></a>
+<span class="sourceLineNo">1565</span>  }<a name="line.1565"></a>
+<span class="sourceLineNo">1566</span><a name="line.1566"></a>
+<span class="sourceLineNo">1567</span>  /**<a name="line.1567"></a>
+<span class="sourceLineNo">1568</span>   * Writes the compaction WAL record.<a name="line.1568"></a>
+<span class="sourceLineNo">1569</span>   * @param filesCompacted Files compacted (input).<a name="line.1569"></a>
+<span class="sourceLineNo">1570</span>   * @param newFiles Files from compaction.<a name="line.1570"></a>
+<span class="sourceLineNo">1571</span>   */<a name="line.1571"></a>
+<span class="sourceLineNo">1572</span>  private void writeCompactionWalRecord(Collection&lt;HStoreFile&gt; filesCompacted,<a name="line.1572"></a>
+<span class="sourceLineNo">1573</span>      Collection&lt;HStoreFile&gt; newFiles) throws IOException {<a name="line.1573"></a>
+<span class="sourceLineNo">1574</span>    if (region.getWAL() == null) {<a name="line.1574"></a>
+<span class="sourceLineNo">1575</span>      return;<a name="line.1575"></a>
+<span class="sourceLineNo">1576</span>    }<a name="line.1576"></a>
+<span class="sourceLineNo">1577</span>    List&lt;Path&gt; inputPaths =<a name="line.1577"></a>
+<span class="sourceLineNo">1578</span>        filesCompacted.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1578"></a>
+<span class="sourceLineNo">1579</span>    List&lt;Path&gt; outputPaths =<a name="line.1579"></a>
+<span class="sourceLineNo">1580</span>        newFiles.stream().map(HStoreFile::getPath).collect(Collectors.toList());<a name="line.1580"></a>
+<span class="sourceLineNo">1581</span>    RegionInfo info = this.region.getRegionInfo();<a name="line.1581"></a>
+<span class="sourceLineNo">1582</span>    CompactionDescriptor compactionDescriptor = ProtobufUtil.toCompactionDescriptor(info,<a name="line.1582"></a>
+<span class="sourceLineNo">1583</span>        getColumnFamilyDescriptor().getName(), inputPaths, outputPaths,<a name="line.1583"></a>
+<span class="sourceLineNo">1584</span>        getRegionFileSystem().getStoreDir(getColumnFamilyDescriptor().getNameAsString()));<a name="line.1584"></a>
+<span class="sourceLineNo">1585</span>    // Fix reaching into Region to get the maxWaitForSeqId.<a name="line.1585"></a>
+<span class="sourceLineNo">1586</span>    // Does this method belong in Region altogether given it is making so many references up there?<a name="line.1586"></a>
+<span class="sourceLineNo">1587</span>    // Could be Region#writeCompactionMarker(compactionDescriptor);<a name="line.1587"></a>
+<span class="sourceLineNo">1588</span>    WALUtil.writeCompactionMarker(this.region.getWAL(), this.region.getReplicationScope(),<a name="line.1588"></a>
+<span class="sourceLineNo">1589</span>        this.region.getRegionInfo(), compactionDescriptor, this.region.getMVCC());<a name="line.1589"></a>
+<span class="sourceLineNo">1590</span>  }<a name="line.1590"></a>
+<span class="sourceLineNo">1591</span><a name="line.1591"></a>
+<span class="sourceLineNo">1592</span>  void replaceStoreFiles(Collection&lt;HStoreFile&gt; compactedFiles, Collection&lt;HStoreFile&gt; result)<a name="line.1592"></a>
+<span class="sourceLineNo">1593</span>      throws IOException {<a name="line.1593"></a>
+<span class="sourceLineNo">1594</span>    this.lock.writeLock().lock();<a name="line.1594"></a>
+<span class="sourceLineNo">1595</span>    try {<a name="line.1595"></a>
+<span class="sourceLineNo">1596</span>      this.storeEngine.getStoreFileManager().addCompactionResults(compactedFiles, result);<a name="line.1596"></a>
+<span class="sourceLineNo">1597</span>      synchronized (filesCompacting) {<a name="line.1597"></a>
+<span class="sourceLineNo">1598</span>        filesCompacting.removeAll(compactedFiles);<a name="line.1598"></a>
+<span class="sourceLineNo">1599</span>      }<a name="line.1599"></a>
+<span class="sourceLineNo">1600</span><a name="line.1600"></a>
+<span class="sourceLineNo">1601</span>      // These may be null when the RS is shutting down. The space quota Chores will fix the Region<a name="line.1601"></a>
+<span class="sourceLineNo">1602</span>      // sizes later so it's not super-critical if we miss these.<a name="line.1602"></a>
+<span class="sourceLineNo">1603</span>      RegionServerServices rsServices = region.getRegionServerServices();<a name="line.1603"></a>
+<span class="sourceLineNo">1604</span>      if (rsServices != null &amp;&amp; rsServices.getRegionServerSpaceQuotaManager() != null) {<a name="line.1604"></a>
+<span class="sourceLineNo">1605</span>        updateSpaceQuotaAfterFileReplacement(<a name="line.1605"></a>
+<span class="sourceLineNo">1606</span>            rsServices.getRegionServerSpaceQuotaManager().getRegionSizeStore(), getRegionInfo(),<a name="line.1606"></a>
+<span class="sourceLineNo">1607</span>            compactedFiles, result);<a name="line.1607"></a>
+<span class="sourceLineNo">1608</span>      }<a name="line.1608"></a>
+<span class="sourceLineNo">1609</span>    } finally {<a name="line.1609"></a>
+<span class="sourceLineNo">1610</span>      this.lock.writeLock().unlock();<a name="line.1610"></a>
+<span class="sourceLineNo">1611</span>    }<a name="line.1611"></a>
+<span class="sourceLineNo">1612</span>  }<a name="line.1612"></a>
+<span class="sourceLineNo">1613</span><a name="line.1613"></a>
+<span class="sourceLineNo">1614</span>  /**<a name="line.1614"></a>
+<span class="sourceLineNo">1615</span>   * Updates the space quota usage for this region, removing the size for files compacted away<a name="line.1615"></a>
+<span class="sourceLineNo">1616</span>   * and adding in the size for new files.<a name="line.1616"></a>
+<span class="sourceLineNo">1617</span>   *<a name="line.1617"></a>
+<span class="sourceLineNo">1618</span>   * @param sizeStore The object tracking changes in region size for space quotas.<a name="line.1618"></a>
+<span class="sourceLineNo">1619</span>   * @param regionInfo The identifier for the region whose size is being updated.<a name="line.1619"></a>
+<span class="sourceLineNo">1620</span>   * @param oldFiles Files removed from this store's region.<a name="line.1620"></a>
+<span class="sourceLineNo">1621</span>   * @param newFiles Files added to this store's region.<a name="line.1621"></a>
+<span class="sourceLineNo">1622</span>   */<a name="line.1622"></a>
+<span class="sourceLineNo">1623</span>  void updateSpaceQuotaAfterFileReplacement(<a name="line.1623"></a>
+<span class="sourceLineNo">1624</span>      RegionSizeStore sizeStore, RegionInfo regionInfo, Collection&lt;HStoreFile&gt; oldFiles,<a name="line.1624"></a>
+<span class="sourceLineNo">1625</span>      Collection&lt;HStoreFile&gt; newFiles) {<a name="line.1625"></a>
+<span class="sourceLineNo">1626</span>    long delta = 0;<a name="line.1626"></a>
+<span class="sourceLineNo">1627</span>    if (oldFiles != null) {<a name="line.1627"></a>
+<span class="sourceLineNo">1628</span>      for (HStoreFile compactedFile : oldFiles) {<a name="line.1628"></a>
+<span class="sourceLineNo">1629</span>        if (compactedFile.isHFile()) {<a name="line.1629"></a>
+<span class="sourceLineNo">1630</span>          delta -= compactedFile.getReader().length();<a name="line.1630"></a>
+<span class="sourceLineNo">1631</span>        }<a name="line.1631"></a>
+<span class="sourceLineNo">1632</span>      }<a name="line.1632"></a>
+<span class="sourceLineNo">1633</span>    }<a name="line.1633"></a>
+<span class="sourceLineNo">1634</span>    if (newFiles != null) {<a name="line.1634"></a>
+<span class="sourceLineNo">1635</span>      for (HStoreFile newFile : newFiles) {<a name="line.1635"></a>
+<span class="sourceLineNo">1636</span>        if (newFile.isHFile()) {<a name="line.1636"></a>
+<span class="sourceLineNo">1637</span>          delta += newFile.getReader().length();<a name="line.1637"></a>
+<span class="sourceLineNo">1638</span>        }<a name="line.1638"></a>
+<span class="sourceLineNo">1639</span>      }<a name="line.1639"></a>
+<span class="sourceLineNo">1640</span>    }<a name="line.1640"></a>
+<span class="sourceLineNo">1641</span>    sizeStore.incrementRegionSize(regionInfo, delta);<a name="line.1641"></a>
+<span class="sourceLineNo">1642</span>  }<a name="line.1642"></a>
+<span class="sourceLineNo">1643</span><a name="line.1643"></a>
+<span class="sourceLineNo">1644</span>  /**<a name="line.1644"></a>
+<span class="sourceLineNo">1645</span>   * Log a very elaborate compaction completion message.<a name="line.1645"></a>
+<span class="sourceLineNo">1646</span>   * @param cr Request.<a name="line.1646"></a>
+<span class="sourceLineNo">1647</span>   * @param sfs Resulting files.<a name="line.1647"></a>
+<span class="sourceLineNo">1648</span>   * @param compactionStartTime Start time.<a name="line.1648"></a>
+<span class="sourceLineNo">1649</span>   */<a name="line.1649"></a>
+<span class="sourceLineNo">1650</span>  private void logCompactionEndMessage(<a name="line.1650"></a>
+<span class="sourceLineNo">1651</span>      CompactionRequestImpl cr, List&lt;HStoreFile&gt; sfs, long now, long compactionStartTime) {<a name="line.1651"></a>
+<span class="sourceLineNo">1652</span>    StringBuilder message = new StringBuilder(<a name="line.1652"></a>
+<span class="sourceLineNo">1653</span>      "Completed" + (cr.isMajor() ? " major" : "") + " compaction of "<a name="line.1653"></a>
+<span class="sourceLineNo">1654</span>      + cr.getFiles().size() + (cr.isAllFiles() ? " (all)" : "") + " file(s) in "<a name="line.1654"></a>
+<span class="sourceLineNo">1655</span>      + this + " of " + this.getRegionInfo().getShortNameToLog() + " into ");<a name="line.1655"></a>
+<span class="sourceLineNo">1656</span>    if (sfs.isEmpty()) {<a name="line.1656"></a>
+<span class="sourceLineNo">1657</span>      message.append("none, ");<a name="line.1657"></a>
+<span class="sourceLineNo">1658</span>    } else {<a name="line.1658"></a>
+<span class="sourceLineNo">1659</span>      for (HStoreFile sf: sfs) {<a name="line.1659"></a>
+<span class="sourceLineNo">1660</span>        message.append(sf.getPath().getName());<a name="line.1660"></a>
+<span class="sourceLineNo">1661</span>        message.append("(size=");<a name="line.1661"></a>
+<span class="sourceLineNo">1662</span>        message.append(TraditionalBinaryPrefix.long2String(sf.getReader().length(), "", 1));<a name="line.1662"></a>
+<span class="sourceLineNo">1663</span>        message.append("), ");<a name="line.1663"></a>
+<span class="sourceLineNo">1664</span>      }<a name="line.1664"></a>
+<span class="sourceLineNo">1665</span>    }<a name="line.1665"></a>
+<span class="sourceLineNo">1666</span>    message.append("total size for store is ")<a name="line.1666"></a>
+<span class="sourceLineNo">1667</span>      .append(StringUtils.TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1))<a name="line.1667"></a>
+<span class="sourceLineNo">1668</span>      .append(". This selection was in queue for ")<a name="line.1668"></a>
+<span class="sourceLineNo">1669</span>      .append(StringUtils.formatTimeDiff(compactionStartTime, cr.getSelectionTime()))<a name="line.1669"></a>
+<span class="sourceLineNo">1670</span>      .append(", and took ").append(StringUtils.formatTimeDiff(now, compactionStartTime))<a name="line.1670"></a>
+<span class="sourceLineNo">1671</span>      .append(" to execute.");<a name="line.1671"></a>
+<span class="sourceLineNo">1672</span>    LOG.info(message.toString());<a name="line.1672"></a>
+<span class="sourceLineNo">1673</span>    if (LOG.isTraceEnabled()) {<a name="line.1673"></a>
+<span class="sourceLineNo">1674</span>      int fileCount = storeEngine.getStoreFileManager().getStorefileCount();<a name="line.1674"></a>
+<span class="sourceLineNo">1675</span>      long resultSize = getTotalSize(sfs);<a name="line.1675"></a>
+<span class="sourceLineNo">1676</span>      String traceMessage = "COMPACTION start,end,size out,files in,files out,store size,"<a name="line.1676"></a>
+<span class="sourceLineNo">1677</span>        + "store files [" + compactionStartTime + "," + now + "," + resultSize + ","<a name="line.1677"></a>
+<span class="sourceLineNo">1678</span>          + cr.getFiles().size() + "," + sfs.size() + "," +  storeSize + "," + fileCount + "]";<a name="line.1678"></a>
+<span class="sourceLineNo">1679</span>      LOG.trace(traceMessage);<a name="line.1679"></a>
+<span class="sourceLineNo">1680</span>    }<a name="line.1680"></a>
+<span class="sourceLineNo">1681</span>  }<a name="line.1681"></a>
+<span class="sourceLineNo">1682</span><a name="line.1682"></a>
+<span class="sourceLineNo">1683</span>  /**<a name="line.1683"></a>
+<span class="sourceLineNo">1684</span>   * Call to complete a compaction. Its for the case where we find in the WAL a compaction<a name="line.1684"></a>
+<span class="sourceLineNo">1685</span>   * that was not finished.  We could find one recovering a WAL after a regionserver crash.<a name="line.1685"></a>
+<span class="sourceLineNo">1686</span>   * See HBASE-2231.<a name="line.1686"></a>
+<span class="sourceLineNo">1687</span>   */<a name="line.1687"></a>
+<span class="sourceLineNo">1688</span>  public void replayCompactionMarker(CompactionDescriptor compaction, boolean pickCompactionFiles,<a name="line.1688"></a>
+<span class="sourceLineNo">1689</span>      boolean removeFiles) throws IOException {<a name="line.1689"></a>
+<span class="sourceLineNo">1690</span>    LOG.debug("Completing compaction from the WAL marker");<a name="line.1690"></a>
+<span class="sourceLineNo">1691</span>    List&lt;String&gt; compactionInputs = compaction.getCompactionInputList();<a name="line.1691"></a>
+<span class="sourceLineNo">1692</span>    List&lt;String&gt; compactionOutputs = Lists.newArrayList(compaction.getCompactionOutputList());<a name="line.1692"></a>
+<span class="sourceLineNo">1693</span><a name="line.1693"></a>
+<span class="sourceLineNo">1694</span>    // The Compaction Marker is written after the compaction is completed,<a name="line.1694"></a>
+<span class="sourceLineNo">1695</span>    // and the files moved into the region/family folder.<a name="line.1695"></a>
+<span class="sourceLineNo">1696</span>    //<a name="line.1696"></a>
+<span class="sourceLineNo">1697</span>    // If we crash after the entry is written, we may not have removed the<a name="line.1697"></a>
+<span class="sourceLineNo">1698</span>    // input files, but the output file is present.<a name="line.1698"></a>
+<span class="sourceLineNo">1699</span>    // (The unremoved input files will be removed by this function)<a name="line.1699"></a>
+<span class="sourceLineNo">1700</span>    //<a name="line.1700"></a>
+<span class="sourceLineNo">1701</span>    // If we scan the directory and the file is not present, it can mean that:<a name="line.1701"></a>
+<span class="sourceLineNo">1702</span>    //   - The file was manually removed by the user<a name="line.1702"></a>
+<span class="sourceLineNo">1703</span>    //   - The file was removed as consequence of subsequent compaction<a name="line.1703"></a>
+<span class="sourceLineNo">1704</span>    // so, we can't do anything with the "compaction output list" because those<a name="line.1704"></a>
+<span class="sourceLineNo">1705</span>    // files have already been loaded when opening the region (by virtue of<a name="line.1705"></a>
+<span class="sourceLineNo">1706</span>    // being in the store's folder) or they may be missing due to a compaction.<a name="line.1706"></a>
+<span class="sourceLineNo">1707</span><a name="line.1707"></a>
+<span class="sourceLineNo">1708</span>    String familyName = this.getColumnFamilyName();<a name="line.1708"></a>
+<span class="sourceLineNo">1709</span>    Set&lt;String&gt; inputFiles = new HashSet&lt;&gt;();<a name="line.1709"></a>
+<span class="sourceLineNo">1710</span>    for (String compactionInput : compactionInputs) {<a name="line.1710"></a>
+<span class="sourceLineNo">1711</span>      Path inputPath = getRegionFileSystem().getStoreFilePath(familyName, compactionInput);<a name="line.1711"></a>
+<span class="sourceLineNo">1712</span>      inputFiles.add(inputPath.getName());<a name="line.1712"></a>
+<span class="sourceLineNo">1713</span>    }<a name="line.1713"></a>
+<span class="sourceLineNo">1714</span><a name="line.1714"></a>
+<span class="sourceLineNo">1715</span>    //some of the input files might already be deleted<a name="line.1715"></a>
+<span class="sourceLineNo">1716</span>    List&lt;HStoreFile&gt; inputStoreFiles = new ArrayList&lt;&gt;(compactionInputs.size());<a name="line.1716"></a>
+<span class="sourceLineNo">1717</span>    for (HStoreFile sf : this.getStorefiles()) {<a name="line.1717"></a>
+<span class="sourceLineNo">1718</span>      if (inputFiles.contains(sf.getPath().getName())) {<a name="line.1718"></a>
+<span class="sourceLineNo">1719</span>        inputStoreFiles.add(sf);<a name="line.1719"></a>
+<span class="sourceLineNo">1720</span>      }<a name="line.1720"></a>
+<span class="sourceLineNo">1721</span>    }<a name="line.1721"></a>
+<span class="sourceLineNo">1722</span><a name="line.1722"></a>
+<span class="sourceLineNo">1723</span>    // check whether we need to pick up the new files<a name="line.1723"></a>
+<span class="sourceLineNo">1724</span>    List&lt;HStoreFile&gt; outputStoreFiles = new ArrayList&lt;&gt;(compactionOutputs.size());<a name="line.1724"></a>
+<span class="sourceLineNo">1725</span><a name="line.1725"></a>
+<span class="sourceLineNo">1726</span>    if (pickCompactionFiles) {<a name="line.1726"></a>
+<span class="sourceLineNo">1727</span>      for (HStoreFile sf : this.getStorefiles()) {<a name="line.1727"></a>
+<span class="sourceLineNo">1728</span>        compactionOutputs.remove(sf.getPath().getName());<a name="line.1728"></a>
+<span class="sourceLineNo">1729</span>      }<a name="line.1729"></a>
+<span class="sourceLineNo">1730</span>      for (String compactionOutput : compactionOutputs) {<a name="line.1730"></a>
+<span class="sourceLineNo">1731</span>        StoreFileInfo storeFileInfo =<a name="line.1731"></a>
+<span class="sourceLineNo">1732</span>            getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), compactionOutput);<a name="line.1732"></a>
+<span class="sourceLineNo">1733</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.1733"></a>
+<span class="sourceLineNo">1734</span>        outputStoreFiles.add(storeFile);<a name="line.1734"></a>
+<span class="sourceLineNo">1735</span>      }<a name="line.1735"></a>
+<span class="sourceLineNo">1736</span>    }<a name="line.1736"></a>
+<span class="sourceLineNo">1737</span><a name="line.1737"></a>
+<span class="sourceLineNo">1738</span>    if (!inputStoreFiles.isEmpty() || !outputStoreFiles.isEmpty()) {<a name="line.1738"></a>
+<span class="sourceLineNo">1739</span>      LOG.info("Replaying compaction marker, replacing input files: " +<a name="line.1739"></a>
+<span class="sourceLineNo">1740</span>          inputStoreFiles + " with output files : " + outputStoreFiles);<a name="line.1740"></a>
+<span class="sourceLineNo">1741</span>      this.replaceStoreFiles(inputStoreFiles, outputStoreFiles);<a name="line.1741"></a>
+<span class="sourceLineNo">1742</span>      this.refreshStoreSizeAndTotalBytes();<a name="line.1742"></a>
+<span class="sourceLineNo">1743</span>    }<a name="line.1743"></a>
+<span class="sourceLineNo">1744</span>  }<a name="line.1744"></a>
+<span class="sourceLineNo">1745</span><a name="line.1745"></a>
+<span class="sourceLineNo">1746</span>  @Override<a name="line.1746"></a>
+<span class="sourceLineNo">1747</span>  public boolean hasReferences() {<a name="line.1747"></a>
+<span class="sourceLineNo">1748</span>    // Grab the read lock here, because we need to ensure that: only when the atomic<a name="line.1748"></a>
+<span class="sourceLineNo">1749</span>    // replaceStoreFiles(..) finished, we can get all the complete store file list.<a name="line.1749"></a>
+<span class="sourceLineNo">1750</span>    this.lock.readLock().lock();<a name="line.1750"></a>
+<span class="sourceLineNo">1751</span>    try {<a name="line.1751"></a>
+<span class="sourceLineNo">1752</span>      // Merge the current store files with compacted files here due to HBASE-20940.<a name="line.1752"></a>
+<span class="sourceLineNo">1753</span>      Collection&lt;HStoreFile&gt; allStoreFiles = new ArrayList&lt;&gt;(getStorefiles());<a name="line.1753"></a>
+<span class="sourceLineNo">1754</span>      allStoreFiles.addAll(getCompactedFiles());<a name="line.1754"></a>
+<span class="sourceLineNo">1755</span>      return StoreUtils.hasReferences(allStoreFiles);<a name="line.1755"></a>
+<span class="sourceLineNo">1756</span>    } finally {<a name="line.1756"></a>
+<span class="sourceLineNo">1757</span>      this.lock.readLock().unlock();<a name="line.1757"></a>
+<span class="sourceLineNo">1758</span>    }<a name="line.1758"></a>
+<span class="sourceLineNo">1759</span>  }<a name="line.1759"></a>
+<span class="sourceLineNo">1760</span><a name="line.1760"></a>
+<span class="sourceLineNo">1761</span>  /**<a name="line.1761"></a>
+<span class="sourceLineNo">1762</span>   * getter for CompactionProgress object<a name="line.1762"></a>
+<span class="sourceLineNo">1763</span>   * @return CompactionProgress object; can be null<a name="line.1763"></a>
+<span class="sourceLineNo">1764</span>   */<a name="line.1764"></a>
+<span class="sourceLineNo">1765</span>  public CompactionProgress getCompactionProgress() {<a name="line.1765"></a>
+<span class="sourceLineNo">1766</span>    return this.storeEngine.getCompactor().getProgress();<a name="line.1766"></a>
+<span class="sourceLineNo">1767</span>  }<a name="line.1767"></a>
+<span class="sourceLineNo">1768</span><a name="line.1768"></a>
+<span class="sourceLineNo">1769</span>  @Override<a name="line.1769"></a>
+<span class="sourceLineNo">1770</span>  public boolean shouldPerformMajorCompaction() throws IOException {<a name="line.1770"></a>
+<span class="sourceLineNo">1771</span>    for (HStoreFile sf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1771"></a>
+<span class="sourceLineNo">1772</span>      // TODO: what are these reader checks all over the place?<a name="line.1772"></a>
+<span class="sourceLineNo">1773</span>      if (sf.getReader() == null) {<a name="line.1773"></a>
+<span class="sourceLineNo">1774</span>        LOG.debug("StoreFile {} has null Reader", sf);<a name="line.1774"></a>
+<span class="sourceLineNo">1775</span>        return false;<a name="line.1775"></a>
+<span class="sourceLineNo">1776</span>      }<a name="line.1776"></a>
+<span class="sourceLineNo">1777</span>    }<a name="line.1777"></a>
+<span class="sourceLineNo">1778</span>    return storeEngine.getCompactionPolicy().shouldPerformMajorCompaction(<a name="line.1778"></a>
+<span class="sourceLineNo">1779</span>        this.storeEngine.getStoreFileManager().getStorefiles());<a name="line.1779"></a>
+<span class="sourceLineNo">1780</span>  }<a name="line.1780"></a>
+<span class="sourceLineNo">1781</span><a name="line.1781"></a>
+<span class="sourceLineNo">1782</span>  public Optional&lt;CompactionContext&gt; requestCompaction() throws IOException {<a name="line.1782"></a>
+<span class="sourceLineNo">1783</span>    return requestCompaction(NO_PRIORITY, CompactionLifeCycleTracker.DUMMY, null);<a name="line.1783"></a>
+<span class="sourceLineNo">1784</span>  }<a name="line.1784"></a>
+<span class="sourceLineNo">1785</span><a name="line.1785"></a>
+<span class="sourceLineNo">1786</span>  public Optional&lt;CompactionContext&gt; requestCompaction(int priority,<a name="line.1786"></a>
+<span class="sourceLineNo">1787</span>      CompactionLifeCycleTracker tracker, User user) throws IOException {<a name="line.1787"></a>
+<span class="sourceLineNo">1788</span>    // don't even select for compaction if writes are disabled<a name="line.1788"></a>
+<span class="sourceLineNo">1789</span>    if (!this.areWritesEnabled()) {<a name="line.1789"></a>
+<span class="sourceLineNo">1790</span>      return Optional.empty();<a name="line.1790"></a>
+<span class="sourceLineNo">1791</span>    }<a name="line.1791"></a>
+<span class="sourceLineNo">1792</span>    // Before we do compaction, try to get rid of unneeded files to simplify things.<a name="line.1792"></a>
+<span class="sourceLineNo">1793</span>    removeUnneededFiles();<a name="line.1793"></a>
+<span class="sourceLineNo">1794</span><a name="line.1794"></a>
+<span class="sourceLineNo">1795</span>    final CompactionContext compaction = storeEngine.createCompaction();<a name="line.1795"></a>
+<span class="sourceLineNo">1796</span>    CompactionRequestImpl request = null;<a name="line.1796"></a>
+<span class="sourceLineNo">1797</span>    this.lock.readLock().lock();<a name="line.1797"></a>
+<span class="sourceLineNo">1798</span>    try {<a name="line.1798"></a>
+<span class="sourceLineNo">1799</span>      synchronized (filesCompacting) {<a name="line.1799"></a>
+<span class="sourceLineNo">1800</span>        // First, see if coprocessor would want to override selection.<a name="line.1800"></a>
+<span class="sourceLineNo">1801</span>        if (this.getCoprocessorHost() != null) {<a name="line.1801"></a>
+<span class="sourceLineNo">1802</span>          final List&lt;HStoreFile&gt; candidatesForCoproc = compaction.preSelect(this.filesCompacting);<a name="line.1802"></a>
+<span class="sourceLineNo">1803</span>          boolean override = getCoprocessorHost().preCompactSelection(this,<a name="line.1803"></a>
+<span class="sourceLineNo">1804</span>              candidatesForCoproc, tracker, user);<a name="line.1804"></a>
+<span class="sourceLineNo">1805</span>          if (override) {<a name="line.1805"></a>
+<span class="sourceLineNo">1806</span>            // Coprocessor is overriding normal file selection.<a name="line.1806"></a>
+<span class="sourceLineNo">1807</span>            compaction.forceSelect(new CompactionRequestImpl(candidatesForCoproc));<a name="line.1807"></a>
+<span class="sourceLineNo">1808</span>          }<a name="line.1808"></a>
+<span class="sourceLineNo">1809</span>        }<a name="line.1809"></a>
+<span class="sourceLineNo">1810</span><a name="line.1810"></a>
+<span class="sourceLineNo">1811</span>        // Normal case - coprocessor is not overriding file selection.<a name="line.1811"></a>
+<span class="sourceLineNo">1812</span>        if (!compaction.hasSelection()) {<a name="line.1812"></a>
+<span class="sourceLineNo">1813</span>          boolean isUserCompaction = priority == Store.PRIORITY_USER;<a name="line.1813"></a>
+<span class="sourceLineNo">1814</span>          boolean mayUseOffPeak = offPeakHours.isOffPeakHour() &amp;&amp;<a name="line.1814"></a>
+<span class="sourceLineNo">1815</span>              offPeakCompactionTracker.compareAndSet(false, true);<a name="line.1815"></a>
+<span class="sourceLineNo">1816</span>          try {<a name="line.1816"></a>
+<span class="sourceLineNo">1817</span>            compaction.select(this.filesCompacting, isUserCompaction,<a name="line.1817"></a>
+<span class="sourceLineNo">1818</span>              mayUseOffPeak, forceMajor &amp;&amp; filesCompacting.isEmpty());<a name="line.1818"></a>
+<span class="sourceLineNo">1819</span>          } catch (IOException e) {<a name="line.1819"></a>
+<span class="sourceLineNo">1820</span>            if (mayUseOffPeak) {<a name="line.1820"></a>
+<span class="sourceLineNo">1821</span>              offPeakCompactionTracker.set(false);<a name="line.1821"></a>
+<span class="sourceLineNo">1822</span>            }<a name="line.1822"></a>
+<span class="sourceLineNo">1823</span>            throw e;<a name="line.1823"></a>
+<span class="sourceLineNo">1824</span>          }<a name="line.1824"></a>
+<span class="sourceLineNo">1825</span>          assert compaction.hasSelection();<a name="line.1825"></a>
+<span class="sourceLineNo">1826</span>          if (mayUseOffPeak &amp;&amp; !compaction.getRequest().isOffPeak()) {<a name="line.1826"></a>
+<span class="sourceLineNo">1827</span>            // Compaction policy doesn't want to take advantage of off-peak.<a name="line.1827"></a>
+<span class="sourceLineNo">1828</span>            offPeakCompactionTracker.set(false);<a name="line.1828"></a>
+<span class="sourceLineNo">1829</span>          }<a name="line.1829"></a>
+<span class="sourceLineNo">1830</span>        }<a name="line.1830"></a>
+<span class="sourceLineNo">1831</span>        if (this.getCoprocessorHost() != null) {<a name="line.1831"></a>
+<span class="sourceLineNo">1832</span>          this.getCoprocessorHost().postCompactSelection(<a name="line.1832"></a>
+<span class="sourceLineNo">1833</span>              this, ImmutableList.copyOf(compaction.getRequest().getFiles()), tracker,<a name="line.1833"></a>
+<span class="sourceLineNo">1834</span>              compaction.getRequest(), user);<a name="line.1834"></a>
+<span class="sourceLineNo">1835</span>        }<a name="line.1835"></a>
+<span class="sourceLineNo">1836</span>        // Finally, we have the resulting files list. Check if we have any files at all.<a name="line.1836"></a>
+<span class="sourceLineNo">1837</span>        request = compaction.getRequest();<a name="line.1837"></a>
+<span class="sourceLineNo">1838</span>        Collection&lt;HStoreFile&gt; selectedFiles = request.getFiles();<a name="line.1838"></a>
+<span class="sourceLineNo">1839</span>        if (selectedFiles.isEmpty()) {<a name="line.1839"></a>
+<span class="sourceLineNo">1840</span>          return Optional.empty();<a name="line.1840"></a>
+<span class="sourceLineNo">1841</span>        }<a name="line.1841"></a>
+<span class="sourceLineNo">1842</span><a name="line.1842"></a>
+<span class="sourceLineNo">1843</span>        addToCompactingFiles(selectedFiles);<a name="line.1843"></a>
+<span class="sourceLineNo">1844</span><a name="line.1844"></a>
+<span class="sourceLineNo">1845</span>        // If we're enqueuing a major, clear the force flag.<a name="line.1845"></a>
+<span class="sourceLineNo">1846</span>        this.forceMajor = this.forceMajor &amp;&amp; !request.isMajor();<a name="line.1846"></a>
+<span class="sourceLineNo">1847</span><a name="line.1847"></a>
+<span class="sourceLineNo">1848</span>        // Set common request properties.<a name="line.1848"></a>
+<span class="sourceLineNo">1849</span>        // Set priority, either override value supplied by caller or from store.<a name="line.1849"></a>
+<span class="sourceLineNo">1850</span>        final int compactionPriority =<a name="line.1850"></a>
+<span class="sourceLineNo">1851</span>          (priority != Store.NO_PRIORITY) ? priority : getCompactPriority();<a name="line.1851"></a>
+<span class="sourceLineNo">1852</span>        request.setPriority(compactionPriority);<a name="line.1852"></a>
+<span class="sourceLineNo">1853</span><a name="line.1853"></a>
+<span class="sourceLineNo">1854</span>        if (request.isAfterSplit()) {<a name="line.1854"></a>
+<span class="sourceLineNo">1855</span>          // If the store belongs to recently splitted daughter regions, better we consider<a name="line.1855"></a>
+<span class="sourceLineNo">1856</span>          // them with the higher priority in the compaction queue.<a name="line.1856"></a>
+<span class="sourceLineNo">1857</span>          // Override priority if it is lower (higher int value) than<a name="line.1857"></a>
+<span class="sourceLineNo">1858</span>          // SPLIT_REGION_COMPACTION_PRIORITY<a name="line.1858"></a>
+<span class="sourceLineNo">1859</span>          final int splitHousekeepingPriority =<a name="line.1859"></a>
+<span class="sourceLineNo">1860</span>            Math.min(compactionPriority, SPLIT_REGION_COMPACTION_PRIORITY);<a name="line.1860"></a>
+<span class="sourceLineNo">1861</span>          request.setPriority(splitHousekeepingPriority);<a name="line.1861"></a>
+<span class="sourceLineNo">1862</span>          LOG.info("Keeping/Overriding Compaction request priority to {} for CF {} since it"<a name="line.1862"></a>
+<span class="sourceLineNo">1863</span>              + " belongs to recently split daughter region {}", splitHousekeepingPriority,<a name="line.1863"></a>
+<span class="sourceLineNo">1864</span>            this.getColumnFamilyName(), getRegionInfo().getRegionNameAsString());<a name="line.1864"></a>
+<span class="sourceLineNo">1865</span>        }<a name="line.1865"></a>
+<span class="sourceLineNo">1866</span>        request.setDescription(getRegionInfo().getRegionNameAsString(), getColumnFamilyName());<a name="line.1866"></a>
+<span class="sourceLineNo">1867</span>        request.setTracker(tracker);<a name="line.1867"></a>
+<span class="sourceLineNo">1868</span>      }<a name="line.1868"></a>
+<span class="sourceLineNo">1869</span>    } finally {<a name="line.1869"></a>
+<span class="sourceLineNo">1870</span>      this.lock.readLock().unlock();<a name="line.1870"></a>
+<span class="sourceLineNo">1871</span>    }<a name="line.1871"></a>
+<span class="sourceLineNo">1872</span><a name="line.1872"></a>
+<span class="sourceLineNo">1873</span>    if (LOG.isDebugEnabled()) {<a name="line.1873"></a>
+<span class="sourceLineNo">1874</span>      LOG.debug(this + " is initiating " + (request.isMajor() ? "major" : "minor") + " compaction"<a name="line.1874"></a>
+<span class="sourceLineNo">1875</span>          + (request.isAllFiles() ? " (all files)" : ""));<a name="line.1875"></a>
+<span class="sourceLineNo">1876</span>    }<a name="line.1876"></a>
+<span class="sourceLineNo">1877</span>    this.region.reportCompactionRequestStart(request.isMajor());<a name="line.1877"></a>
+<span class="sourceLineNo">1878</span>    return Optional.of(compaction);<a name="line.1878"></a>
+<span class="sourceLineNo">1879</span>  }<a name="line.1879"></a>
+<span class="sourceLineNo">1880</span><a name="line.1880"></a>
+<span class="sourceLineNo">1881</span>  /** Adds the files to compacting files. filesCompacting must be locked. */<a name="line.1881"></a>
+<span class="sourceLineNo">1882</span>  private void addToCompactingFiles(Collection&lt;HStoreFile&gt; filesToAdd) {<a name="line.1882"></a>
+<span class="sourceLineNo">1883</span>    if (CollectionUtils.isEmpty(filesToAdd)) {<a name="line.1883"></a>
+<span class="sourceLineNo">1884</span>      return;<a name="line.1884"></a>
+<span class="sourceLineNo">1885</span>    }<a name="line.1885"></a>
+<span class="sourceLineNo">1886</span>    // Check that we do not try to compact the same StoreFile twice.<a name="line.1886"></a>
+<span class="sourceLineNo">1887</span>    if (!Collections.disjoint(filesCompacting, filesToAdd)) {<a name="line.1887"></a>
+<span class="sourceLineNo">1888</span>      Preconditions.checkArgument(false, "%s overlaps with %s", filesToAdd, filesCompacting);<a name="line.1888"></a>
+<span class="sourceLineNo">1889</span>    }<a name="line.1889"></a>
+<span class="sourceLineNo">1890</span>    filesCompacting.addAll(filesToAdd);<a name="line.1890"></a>
+<span class="sourceLineNo">1891</span>    Collections.sort(filesCompacting, storeEngine.getStoreFileManager().getStoreFileComparator());<a name="line.1891"></a>
+<span class="sourceLineNo">1892</span>  }<a name="line.1892"></a>
+<span class="sourceLineNo">1893</span><a name="line.1893"></a>
+<span class="sourceLineNo">1894</span>  private void removeUnneededFiles() throws IOException {<a name="line.1894"></a>
+<span class="sourceLineNo">1895</span>    if (!conf.getBoolean("hbase.store.delete.expired.storefile", true)) {<a name="line.1895"></a>
+<span class="sourceLineNo">1896</span>      return;<a name="line.1896"></a>
+<span class="sourceLineNo">1897</span>    }<a name="line.1897"></a>
+<span class="sourceLineNo">1898</span>    if (getColumnFamilyDescriptor().getMinVersions() &gt; 0) {<a name="line.1898"></a>
+<span class="sourceLineNo">1899</span>      LOG.debug("Skipping expired store file removal due to min version of {} being {}",<a name="line.1899"></a>
+<span class="sourceLineNo">1900</span>          this, getColumnFamilyDescriptor().getMinVersions());<a name="line.1900"></a>
+<span class="sourceLineNo">1901</span>      return;<a name="line.1901"></a>
+<span class="sourceLineNo">1902</span>    }<a name="line.1902"></a>
+<span class="sourceLineNo">1903</span>    this.lock.readLock().lock();<a name="line.1903"></a>
+<span class="sourceLineNo">1904</span>    Collection&lt;HStoreFile&gt; delSfs = null;<a name="line.1904"></a>
+<span class="sourceLineNo">1905</span>    try {<a name="line.1905"></a>
+<span class="sourceLineNo">1906</span>      synchronized (filesCompacting) {<a name="line.1906"></a>
+<span class="sourceLineNo">1907</span>        long cfTtl = getStoreFileTtl();<a name="line.1907"></a>
+<span class="sourceLineNo">1908</span>        if (cfTtl != Long.MAX_VALUE) {<a name="line.1908"></a>
+<span class="sourceLineNo">1909</span>          delSfs = storeEngine.getStoreFileManager().getUnneededFiles(<a name="line.1909"></a>
+<span class="sourceLineNo">1910</span>              EnvironmentEdgeManager.currentTime() - cfTtl, filesCompacting);<a name="line.1910"></a>
+<span class="sourceLineNo">1911</span>          addToCompactingFiles(delSfs);<a name="line.1911"></a>
+<span class="sourceLineNo">1912</span>        }<a name="line.1912"></a>
+<span class="sourceLineNo">1913</span>      }<a name="line.1913"></a>
+<span class="sourceLineNo">1914</span>    } finally {<a name="line.1914"></a>
+<span class="sourceLineNo">1915</span>      this.lock.readLock().unlock();<a name="line.1915"></a>
+<span class="sourceLineNo">1916</span>    }<a name="line.1916"></a>
+<span class="sourceLineNo">1917</span><a name="line.1917"></a>
+<span class="sourceLineNo">1918</span>    if (CollectionUtils.isEmpty(delSfs)) {<a name="line.1918"></a>
+<span class="sourceLineNo">1919</span>      return;<a name="line.1919"></a>
+<span class="sourceLineNo">1920</span>    }<a name="line.1920"></a>
+<span class="sourceLineNo">1921</span><a name="line.1921"></a>
+<span class="sourceLineNo">1922</span>    Collection&lt;HStoreFile&gt; newFiles = Collections.emptyList(); // No new files.<a name="line.1922"></a>
+<span class="sourceLineNo">1923</span>    writeCompactionWalRecord(delSfs, newFiles);<a name="line.1923"></a>
+<span class="sourceLineNo">1924</span>    replaceStoreFiles(delSfs, newFiles);<a name="line.1924"></a>
+<span class="sourceLineNo">1925</span>    refreshStoreSizeAndTotalBytes();<a name="line.1925"></a>
+<span class="sourceLineNo">1926</span>    LOG.info("Completed removal of " + delSfs.size() + " unnecessary (expired) file(s) in "<a name="line.1926"></a>
+<span class="sourceLineNo">1927</span>        + this + "; total size is "<a name="line.1927"></a>
+<span class="sourceLineNo">1928</span>        + TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1));<a name="line.1928"></a>
+<span class="sourceLineNo">1929</span>  }<a name="line.1929"></a>
+<span class="sourceLineNo">1930</span><a name="line.1930"></a>
+<span class="sourceLineNo">1931</span>  public void cancelRequestedCompaction(CompactionContext compaction) {<a name="line.1931"></a>
+<span class="sourceLineNo">1932</span>    finishCompactionRequest(compaction.getRequest());<a name="line.1932"></a>
+<span class="sourceLineNo">1933</span>  }<a name="line.1933"></a>
+<span class="sourceLineNo">1934</span><a name="line.1934"></a>
+<span class="sourceLineNo">1935</span>  protected void finishCompactionRequest(CompactionRequestImpl cr) {<a name="line.1935"></a>
+<span class="sourceLineNo">1936</span>    this.region.reportCompactionRequestEnd(cr.isMajor(), cr.getFiles().size(), cr.getSize());<a name="line.1936"></a>
+<span class="sourceLineNo">1937</span>    if (cr.isOffPeak()) {<a name="line.1937"></a>
+<span class="sourceLineNo">1938</span>      offPeakCompactionTracker.set(false);<a name="line.1938"></a>
+<span class="sourceLineNo">1939</span>      cr.setOffPeak(false);<a name="line.1939"></a>
+<span class="sourceLineNo">1940</span>    }<a name="line.1940"></a>
+<span class="sourceLineNo">1941</span>    synchronized (filesCompacting) {<a name="line.1941"></a>
+<span class="sourceLineNo">1942</span>      filesCompacting.removeAll(cr.getFiles());<a name="line.1942"></a>
+<span class="sourceLineNo">1943</span>    }<a name="line.1943"></a>
+<span class="sourceLineNo">1944</span>  }<a name="line.1944"></a>
+<span class="sourceLineNo">1945</span><a name="line.1945"></a>
+<span class="sourceLineNo">1946</span>  /**<a name="line.1946"></a>
+<span class="sourceLineNo">1947</span>   * Validates a store file by opening and closing it. In HFileV2 this should not be an expensive<a name="line.1947"></a>
+<span class="sourceLineNo">1948</span>   * operation.<a name="line.1948"></a>
+<span class="sourceLineNo">1949</span>   * @param path the path to the store file<a name="line.1949"></a>
+<span class="sourceLineNo">1950</span>   */<a name="line.1950"></a>
+<span class="sourceLineNo">1951</span>  private void validateStoreFile(Path path) throws IOException {<a name="line.1951"></a>
+<span class="sourceLineNo">1952</span>    HStoreFile storeFile = null;<a name="line.1952"></a>
+<span class="sourceLineNo">1953</span>    try {<a name="line.1953"></a>
+<span class="sourceLineNo">1954</span>      storeFile = createStoreFileAndReader(path);<a name="line.1954"></a>
+<span class="sourceLineNo">1955</span>    } catch (IOException e) {<a name="line.1955"></a>
+<span class="sourceLineNo">1956</span>      LOG.error("Failed to open store file : {}, keeping it in tmp location", path, e);<a name="line.1956"></a>
+<span class="sourceLineNo">1957</span>      throw e;<a name="line.1957"></a>
+<span class="sourceLineNo">1958</span>    } finally {<a name="line.1958"></a>
+<span class="sourceLineNo">1959</span>      if (storeFile != null) {<a name="line.1959"></a>
+<span class="sourceLineNo">1960</span>        storeFile.closeStoreFile(false);<a name="line.1960"></a>
+<span class="sourceLineNo">1961</span>      }<a name="line.1961"></a>
+<span class="sourceLineNo">1962</span>    }<a name="line.1962"></a>
+<span class="sourceLineNo">1963</span>  }<a name="line.1963"></a>
+<span class="sourceLineNo">1964</span><a name="line.1964"></a>
+<span class="sourceLineNo">1965</span>  /**<a name="line.1965"></a>
+<span class="sourceLineNo">1966</span>   * Update counts.<a name="line.1966"></a>
+<span class="sourceLineNo">1967</span>   */<a name="line.1967"></a>
+<span class="sourceLineNo">1968</span>  protected void refreshStoreSizeAndTotalBytes()<a name="line.1968"></a>
+<span class="sourceLineNo">1969</span>    throws IOException {<a name="line.1969"></a>
+<span class="sourceLineNo">1970</span>    this.storeSize.set(0L);<a name="line.1970"></a>
+<span class="sourceLineNo">1971</span>    this.totalUncompressedBytes.set(0L);<a name="line.1971"></a>
+<span class="sourceLineNo">1972</span>    for (HStoreFile hsf : this.storeEngine.getStoreFileManager().getStorefiles()) {<a name="line.1972"></a>
+<span class="sourceLineNo">1973</span>      StoreFileReader r = hsf.getReader();<a name="line.1973"></a>
+<span class="sourceLineNo">1974</span>      if (r == null) {<a name="line.1974"></a>
+<span class="sourceLineNo">1975</span>        LOG.warn("StoreFile {} has a null Reader", hsf);<a name="line.1975"></a>
+<span class="sourceLineNo">1976</span>        continue;<a name="line.1976"></a>
+<span class="sourceLineNo">1977</span>      }<a name="line.1977"></a>
+<span class="sourceLineNo">1978</span>      this.storeSize.addAndGet(r.length());<a name="line.1978"></a>
+<span class="sourceLineNo">1979</span>      this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.1979"></a>
+<span class="sourceLineNo">1980</span>    }<a name="line.1980"></a>
+<span class="sourceLineNo">1981</span>  }<a name="line.1981"></a>
+<span class="sourceLineNo">1982</span><a name="line.1982"></a>
+<span class="sourceLineNo">1983</span>  /*<a name="line.1983"></a>
+<span class="sourceLineNo">1984</span>   * @param wantedVersions How many versions were asked for.<a name="line.1984"></a>
+<span class="sourceLineNo">1985</span>   * @return wantedVersions or this families' {@link HConstants#VERSIONS}.<a name="line.1985"></a>
+<span class="sourceLineNo">1986</span>   */<a name="line.1986"></a>
+<span class="sourceLineNo">1987</span>  int versionsToReturn(final int wantedVersions) {<a name="line.1987"></a>
+<span class="sourceLineNo">1988</span>    if (wantedVersions &lt;= 0) {<a name="line.1988"></a>
+<span class="sourceLineNo">1989</span>      throw new IllegalArgumentException("Number of versions must be &gt; 0");<a name="line.1989"></a>
+<span class="sourceLineNo">1990</span>    }<a name="line.1990"></a>
+<span class="sourceLineNo">1991</span>    // Make sure we do not return more than maximum versions for this store.<a name="line.1991"></a>
+<span class="sourceLineNo">1992</span>    int maxVersions = getColumnFamilyDescriptor().getMaxVersions();<a name="line.1992"></a>
+<span class="sourceLineNo">1993</span>    return wantedVersions &gt; maxVersions ? maxVersions: wantedVersions;<a name="line.1993"></a>
+<span class="sourceLineNo">1994</span>  }<a name="line.1994"></a>
+<span class="sourceLineNo">1995</span><a name="line.1995"></a>
+<span class="sourceLineNo">1996</span>  @Override<a name="line.1996"></a>
+<span class="sourceLineNo">1997</span>  public boolean canSplit() {<a name="line.1997"></a>
+<span class="sourceLineNo">1998</span>    // Not split-able if we find a reference store file present in the store.<a name="line.1998"></a>
+<span class="sourceLineNo">1999</span>    boolean result = !hasReferences();<a name="line.1999"></a>
+<span class="sourceLineNo">2000</span>    if (!result) {<a name="line.2000"></a>
+<span class="sourceLineNo">2001</span>      LOG.trace("Not splittable; has references: {}", this);<a name="line.2001"></a>
+<span class="sourceLineNo">2002</span>    }<a name="line.2002"></a>
+<span class="sourceLineNo">2003</span>    return result;<a name="line.2003"></a>
+<span class="sourceLineNo">2004</span>  }<a name="line.2004"></a>
+<span class="sourceLineNo">2005</span><a name="line.2005"></a>
+<span class="sourceLineNo">2006</span>  /**<a name="line.2006"></a>
+<span class="sourceLineNo">2007</span>   * Determines if Store should be split.<a name="line.2007"></a>
+<span class="sourceLineNo">2008</span>   */<a name="line.2008"></a>
+<span class="sourceLineNo">2009</span>  public Optional&lt;byte[]&gt; getSplitPoint() {<a name="line.2009"></a>
+<span class="sourceLineNo">2010</span>    this.lock.readLock().lock();<a name="line.2010"></a>
+<span class="sourceLineNo">2011</span>    try {<a name="line.2011"></a>
+<span class="sourceLineNo">2012</span>      // Should already be enforced by the split policy!<a name="line.2012"></a>
+<span class="sourceLineNo">2013</span>      assert !this.getRegionInfo().isMetaRegion();<a name="line.2013"></a>
+<span class="sourceLineNo">2014</span>      // Not split-able if we find a reference store file present in the store.<a name="line.2014"></a>
+<span class="sourceLineNo">2015</span>      if (hasReferences()) {<a name="line.2015"></a>
+<span class="sourceLineNo">2016</span>        LOG.trace("Not splittable; has references: {}", this);<a name="line.2016"></a>
+<span class="sourceLineNo">2017</span>        return Optional.empty();<a name="line.2017"></a>
+<span class="sourceLineNo">2018</span>      }<a name="line.2018"></a>
+<span class="sourceLineNo">2019</span>      return this.storeEngine.getStoreFileManager().getSplitPoint();<a name="line.2019"></a>
+<span class="sourceLineNo">2020</span>    } catch(IOException e) {<a name="line.2020"></a>
+<span class="sourceLineNo">2021</span>      LOG.warn("Failed getting store size for {}", this, e);<a name="line.2021"></a>
+<span class="sourceLineNo">2022</span>    } finally {<a name="line.2022"></a>
+<span class="sourceLineNo">2023</span>      this.lock.readLock().unlock();<a name="line.2023"></a>
+<span class="sourceLineNo">2024</span>    }<a name="line.2024"></a>
+<span class="sourceLineNo">2025</span>    return Optional.empty();<a name="line.2025"></a>
+<span class="sourceLineNo">2026</span>  }<a name="line.2026"></a>
+<span class="sourceLineNo">2027</span><a name="line.2027"></a>
+<span class="sourceLineNo">2028</span>  @Override<a name="line.2028"></a>
+<span class="sourceLineNo">2029</span>  public long getLastCompactSize() {<a name="line.2029"></a>
+<span class="sourceLineNo">2030</span>    return this.lastCompactSize;<a name="line.2030"></a>
+<span class="sourceLineNo">2031</span>  }<a name="line.2031"></a>
+<span class="sourceLineNo">2032</span><a name="line.2032"></a>
+<span class="sourceLineNo">2033</span>  @Override<a name="line.2033"></a>
+<span class="sourceLineNo">2034</span>  public long getSize() {<a name="line.2034"></a>
+<span class="sourceLineNo">2035</span>    return storeSize.get();<a name="line.2035"></a>
+<span class="sourceLineNo">2036</span>  }<a name="line.2036"></a>
+<span class="sourceLineNo">2037</span><a name="line.2037"></a>
+<span class="sourceLineNo">2038</span>  public void triggerMajorCompaction() {<a name="line.2038"></a>
+<span class="sourceLineNo">2039</span>    this.forceMajor = true;<a name="line.2039"></a>
+<span class="sourceLineNo">2040</span>  }<a name="line.2040"></a>
+<span class="sourceLineNo">2041</span><a name="line.2041"></a>
+<span class="sourceLineNo">2042</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2042"></a>
+<span class="sourceLineNo">2043</span>  // File administration<a name="line.2043"></a>
+<span class="sourceLineNo">2044</span>  //////////////////////////////////////////////////////////////////////////////<a name="line.2044"></a>
+<span class="sourceLineNo">2045</span><a name="line.2045"></a>
+<span class="sourceLineNo">2046</span>  /**<a name="line.2046"></a>
+<span class="sourceLineNo">2047</span>   * Return a scanner for both the memstore and the HStore files. Assumes we are not in a<a name="line.2047"></a>
+<span class="sourceLineNo">2048</span>   * compaction.<a name="line.2048"></a>
+<span class="sourceLineNo">2049</span>   * @param scan Scan to apply when scanning the stores<a name="line.2049"></a>
+<span class="sourceLineNo">2050</span>   * @param targetCols columns to scan<a name="line.2050"></a>
+<span class="sourceLineNo">2051</span>   * @return a scanner over the current key values<a name="line.2051"></a>
+<span class="sourceLineNo">2052</span>   * @throws IOException on failure<a name="line.2052"></a>
+<span class="sourceLineNo">2053</span>   */<a name="line.2053"></a>
+<span class="sourceLineNo">2054</span>  public KeyValueScanner getScanner(Scan scan, final NavigableSet&lt;byte[]&gt; targetCols, long readPt)<a name="line.2054"></a>
+<span class="sourceLineNo">2055</span>      throws IOException {<a name="line.2055"></a>
+<span class="sourceLineNo">2056</span>    lock.readLock().lock();<a name="line.2056"></a>
+<span class="sourceLineNo">2057</span>    try {<a name="line.2057"></a>
+<span class="sourceLineNo">2058</span>      ScanInfo scanInfo;<a name="line.2058"></a>
+<span class="sourceLineNo">2059</span>      if (this.getCoprocessorHost() != null) {<a name="line.2059"></a>
+<span class="sourceLineNo">2060</span>        scanInfo = this.getCoprocessorHost().preStoreScannerOpen(this, scan);<a name="line.2060"></a>
+<span class="sourceLineNo">2061</span>      } else {<a name="line.2061"></a>
+<span class="sourceLineNo">2062</span>        scanInfo = getScanInfo();<a name="line.2062"></a>
+<span class="sourceLineNo">2063</span>      }<a name="line.2063"></a>
+<span class="sourceLineNo">2064</span>      return createScanner(scan, scanInfo, targetCols, readPt);<a name="line.2064"></a>
+<span class="sourceLineNo">2065</span>    } finally {<a name="line.2065"></a>
+<span class="sourceLineNo">2066</span>      lock.readLock().unlock();<a name="line.2066"></a>
+<span class="sourceLineNo">2067</span>    }<a name="line.2067"></a>
+<span class="sourceLineNo">2068</span>  }<a name="line.2068"></a>
+<span class="sourceLineNo">2069</span><a name="line.2069"></a>
+<span class="sourceLineNo">2070</span>  // HMobStore will override this method to return its own implementation.<a name="line.2070"></a>
+<span class="sourceLineNo">2071</span>  protected KeyValueScanner createScanner(Scan scan, ScanInfo scanInfo,<a name="line.2071"></a>
+<span class="sourceLineNo">2072</span>      NavigableSet&lt;byte[]&gt; targetCols, long readPt) throws IOException {<a name="line.2072"></a>
+<span class="sourceLineNo">2073</span>    return scan.isReversed() ? new ReversedStoreScanner(this, scanInfo, scan, targetCols, readPt)<a name="line.2073"></a>
+<span class="sourceLineNo">2074</span>        : new StoreScanner(this, scanInfo, scan, targetCols, readPt);<a name="line.2074"></a>
+<span class="sourceLineNo">2075</span>  }<a name="line.2075"></a>
+<span class="sourceLineNo">2076</span><a name="line.2076"></a>
+<span class="sourceLineNo">2077</span>  /**<a name="line.2077"></a>
+<span class="sourceLineNo">2078</span>   * Recreates the scanners on the current list of active store file scanners<a name="line.2078"></a>
+<span class="sourceLineNo">2079</span>   * @param currentFileScanners the current set of active store file scanners<a name="line.2079"></a>
+<span class="sourceLineNo">2080</span>   * @param cacheBlocks cache the blocks or not<a name="line.2080"></a>
+<span class="sourceLineNo">2081</span>   * @param usePread use pread or not<a name="line.2081"></a>
+<span class="sourceLineNo">2082</span>   * @param isCompaction is the scanner for compaction<a name="line.2082"></a>
+<span class="sourceLineNo">2083</span>   * @param matcher the scan query matcher<a name="line.2083"></a>
+<span class="sourceLineNo">2084</span>   * @param startRow the scan's start row<a name="line.2084"></a>
+<span class="sourceLineNo">2085</span>   * @param includeStartRow should the scan include the start row<a name="line.2085"></a>
+<span class="sourceLineNo">2086</span>   * @param stopRow the scan's stop row<a name="line.2086"></a>
+<span class="sourceLineNo">2087</span>   * @param includeStopRow should the scan include the stop row<a name="line.2087"></a>
+<span class="sourceLineNo">2088</span>   * @param readPt the read point of the current scane<a name="line.2088"></a>
+<span class="sourceLineNo">2089</span>   * @param includeMemstoreScanner whether the current scanner should include memstorescanner<a name="line.2089"></a>
+<span class="sourceLineNo">2090</span>   * @return list of scanners recreated on the current Scanners<a name="line.2090"></a>
+<span class="sourceLineNo">2091</span>   */<a name="line.2091"></a>
+<span class="sourceLineNo">2092</span>  public List&lt;KeyValueScanner&gt; recreateScanners(List&lt;KeyValueScanner&gt; currentFileScanners,<a name="line.2092"></a>
+<span class="sourceLineNo">2093</span>      boolean cacheBlocks, boolean usePread, boolean isCompaction, ScanQueryMatcher matcher,<a name="line.2093"></a>
+<span class="sourceLineNo">2094</span>      byte[] startRow, boolean includeStartRow, byte[] stopRow, boolean includeStopRow, long readPt,<a name="line.2094"></a>
+<span class="sourceLineNo">2095</span>      boolean includeMemstoreScanner) throws IOException {<a name="line.2095"></a>
+<span class="sourceLineNo">2096</span>    this.lock.readLock().lock();<a name="line.2096"></a>
+<span class="sourceLineNo">2097</span>    try {<a name="line.2097"></a>
+<span class="sourceLineNo">2098</span>      Map&lt;String, HStoreFile&gt; name2File =<a name="line.2098"></a>
+<span class="sourceLineNo">2099</span>          new HashMap&lt;&gt;(getStorefilesCount() + getCompactedFilesCount());<a name="line.2099"></a>
+<span class="sourceLineNo">2100</span>      for (HStoreFile file : getStorefiles()) {<a name="line.2100"></a>
+<span class="sourceLineNo">2101</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2101"></a>
+<span class="sourceLineNo">2102</span>      }<a name="line.2102"></a>
+<span class="sourceLineNo">2103</span>      Collection&lt;HStoreFile&gt; compactedFiles = getCompactedFiles();<a name="line.2103"></a>
+<span class="sourceLineNo">2104</span>      for (HStoreFile file : IterableUtils.emptyIfNull(compactedFiles)) {<a name="line.2104"></a>
+<span class="sourceLineNo">2105</span>        name2File.put(file.getFileInfo().getActiveFileName(), file);<a name="line.2105"></a>
+<span class="sourceLineNo">2106</span>      }<a name="line.2106"></a>
+<span class="sourceLineNo">2107</span>      List&lt;HStoreFile&gt; filesToReopen = new ArrayList&lt;&gt;();<a name="line.2107"></a>
+<span class="sourceLineNo">2108</span>      for (KeyValueScanner kvs : currentFileScanners) {<a name="line.2108"></a>
+<span class="sourceLineNo">2109</span>        assert kvs.isFileScanner();<a name="line.2109"></a>
+<span class="sourceLineNo">2110</span>        if (kvs.peek() == null) {<a name="line.2110"></a>
+<span class="sourceLineNo">2111</span>          continue;<a name="line.2111"></a>
+<span class="sourceLineNo">2112</span>        }<a name="line.2112"></a>
+<span class="sourceLineNo">2113</span>        filesToReopen.add(name2File.get(kvs.getFilePath().getName()));<a name="line.2113"></a>
+<span class="sourceLineNo">2114</span>      }<a name="line.2114"></a>
+<span class="sourceLineNo">2115</span>      if (filesToReopen.isEmpty()) {<a name="line.2115"></a>
+<span class="sourceLineNo">2116</span>        return null;<a name="line.2116"></a>
+<span class="sourceLineNo">2117</span>      }<a name="line.2117"></a>
+<span class="sourceLineNo">2118</span>      return getScanners(filesToReopen, cacheBlocks, false, false, matcher, startRow,<a name="line.2118"></a>
+<span class="sourceLineNo">2119</span>        includeStartRow, stopRow, includeStopRow, readPt, false);<a name="line.2119"></a>
+<span class="sourceLineNo">2120</span>    } finally {<a name="line.2120"></a>
+<span class="sourceLineNo">2121</span>      this.lock.readLock().unlock();<a name="line.2121"></a>
+<span class="sourceLineNo">2122</span>    }<a name="line.2122"></a>
+<span class="sourceLineNo">2123</span>  }<a name="line.2123"></a>
+<span class="sourceLineNo">2124</span><a name="line.2124"></a>
+<span class="sourceLineNo">2125</span>  @Override<a name="line.2125"></a>
+<span class="sourceLineNo">2126</span>  public String toString() {<a name="line.2126"></a>
+<span class="sourceLineNo">2127</span>    return this.getRegionInfo().getShortNameToLog()+ "/" + this.getColumnFamilyName();<a name="line.2127"></a>
+<span class="sourceLineNo">2128</span>  }<a name="line.2128"></a>
+<span class="sourceLineNo">2129</span><a name="line.2129"></a>
+<span class="sourceLineNo">2130</span>  @Override<a name="line.2130"></a>
+<span class="sourceLineNo">2131</span>  public int getStorefilesCount() {<a name="line.2131"></a>
+<span class="sourceLineNo">2132</span>    return this.storeEngine.getStoreFileManager().getStorefileCount();<a name="line.2132"></a>
+<span class="sourceLineNo">2133</span>  }<a name="line.2133"></a>
+<span class="sourceLineNo">2134</span><a name="line.2134"></a>
+<span class="sourceLineNo">2135</span>  @Override<a name="line.2135"></a>
+<span class="sourceLineNo">2136</span>  public int getCompactedFilesCount() {<a name="line.2136"></a>
+<span class="sourceLineNo">2137</span>    return this.storeEngine.getStoreFileManager().getCompactedFilesCount();<a name="line.2137"></a>
+<span class="sourceLineNo">2138</span>  }<a name="line.2138"></a>
+<span class="sourceLineNo">2139</span><a name="line.2139"></a>
+<span class="sourceLineNo">2140</span>  private LongStream getStoreFileAgeStream() {<a name="line.2140"></a>
+<span class="sourceLineNo">2141</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream().filter(sf -&gt; {<a name="line.2141"></a>
+<span class="sourceLineNo">2142</span>      if (sf.getReader() == null) {<a name="line.2142"></a>
+<span class="sourceLineNo">2143</span>        LOG.warn("StoreFile {} has a null Reader", sf);<a name="line.2143"></a>
+<span class="sourceLineNo">2144</span>        return false;<a name="line.2144"></a>
+<span class="sourceLineNo">2145</span>      } else {<a name="line.2145"></a>
+<span class="sourceLineNo">2146</span>        return true;<a name="line.2146"></a>
+<span class="sourceLineNo">2147</span>      }<a name="line.2147"></a>
+<span class="sourceLineNo">2148</span>    }).filter(HStoreFile::isHFile).mapToLong(sf -&gt; sf.getFileInfo().getCreatedTimestamp())<a name="line.2148"></a>
+<span class="sourceLineNo">2149</span>        .map(t -&gt; EnvironmentEdgeManager.currentTime() - t);<a name="line.2149"></a>
+<span class="sourceLineNo">2150</span>  }<a name="line.2150"></a>
+<span class="sourceLineNo">2151</span><a name="line.2151"></a>
+<span class="sourceLineNo">2152</span>  @Override<a name="line.2152"></a>
+<span class="sourceLineNo">2153</span>  public OptionalLong getMaxStoreFileAge() {<a name="line.2153"></a>
+<span class="sourceLineNo">2154</span>    return getStoreFileAgeStream().max();<a name="line.2154"></a>
+<span class="sourceLineNo">2155</span>  }<a name="line.2155"></a>
+<span class="sourceLineNo">2156</span><a name="line.2156"></a>
+<span class="sourceLineNo">2157</span>  @Override<a name="line.2157"></a>
+<span class="sourceLineNo">2158</span>  public OptionalLong getMinStoreFileAge() {<a name="line.2158"></a>
+<span class="sourceLineNo">2159</span>    return getStoreFileAgeStream().min();<a name="line.2159"></a>
+<span class="sourceLineNo">2160</span>  }<a name="line.2160"></a>
+<span class="sourceLineNo">2161</span><a name="line.2161"></a>
+<span class="sourceLineNo">2162</span>  @Override<a name="line.2162"></a>
+<span class="sourceLineNo">2163</span>  public OptionalDouble getAvgStoreFileAge() {<a name="line.2163"></a>
+<span class="sourceLineNo">2164</span>    return getStoreFileAgeStream().average();<a name="line.2164"></a>
+<span class="sourceLineNo">2165</span>  }<a name="line.2165"></a>
+<span class="sourceLineNo">2166</span><a name="line.2166"></a>
+<span class="sourceLineNo">2167</span>  @Override<a name="line.2167"></a>
+<span class="sourceLineNo">2168</span>  public long getNumReferenceFiles() {<a name="line.2168"></a>
+<span class="sourceLineNo">2169</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2169"></a>
+<span class="sourceLineNo">2170</span>        .filter(HStoreFile::isReference).count();<a name="line.2170"></a>
+<span class="sourceLineNo">2171</span>  }<a name="line.2171"></a>
+<span class="sourceLineNo">2172</span><a name="line.2172"></a>
+<span class="sourceLineNo">2173</span>  @Override<a name="line.2173"></a>
+<span class="sourceLineNo">2174</span>  public long getNumHFiles() {<a name="line.2174"></a>
+<span class="sourceLineNo">2175</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2175"></a>
+<span class="sourceLineNo">2176</span>        .filter(HStoreFile::isHFile).count();<a name="line.2176"></a>
+<span class="sourceLineNo">2177</span>  }<a name="line.2177"></a>
+<span class="sourceLineNo">2178</span><a name="line.2178"></a>
+<span class="sourceLineNo">2179</span>  @Override<a name="line.2179"></a>
+<span class="sourceLineNo">2180</span>  public long getStoreSizeUncompressed() {<a name="line.2180"></a>
+<span class="sourceLineNo">2181</span>    return this.totalUncompressedBytes.get();<a name="line.2181"></a>
+<span class="sourceLineNo">2182</span>  }<a name="line.2182"></a>
+<span class="sourceLineNo">2183</span><a name="line.2183"></a>
+<span class="sourceLineNo">2184</span>  @Override<a name="line.2184"></a>
+<span class="sourceLineNo">2185</span>  public long getStorefilesSize() {<a name="line.2185"></a>
+<span class="sourceLineNo">2186</span>    // Include all StoreFiles<a name="line.2186"></a>
+<span class="sourceLineNo">2187</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(), sf -&gt; true);<a name="line.2187"></a>
+<span class="sourceLineNo">2188</span>  }<a name="line.2188"></a>
+<span class="sourceLineNo">2189</span><a name="line.2189"></a>
+<span class="sourceLineNo">2190</span>  @Override<a name="line.2190"></a>
+<span class="sourceLineNo">2191</span>  public long getHFilesSize() {<a name="line.2191"></a>
+<span class="sourceLineNo">2192</span>    // Include only StoreFiles which are HFiles<a name="line.2192"></a>
+<span class="sourceLineNo">2193</span>    return getStorefilesSize(this.storeEngine.getStoreFileManager().getStorefiles(),<a name="line.2193"></a>
+<span class="sourceLineNo">2194</span>      HStoreFile::isHFile);<a name="line.2194"></a>
+<span class="sourceLineNo">2195</span>  }<a name="line.2195"></a>
+<span class="sourceLineNo">2196</span><a name="line.2196"></a>
+<span class="sourceLineNo">2197</span>  private long getTotalUncompressedBytes(List&lt;HStoreFile&gt; files) {<a name="line.2197"></a>
+<span class="sourceLineNo">2198</span>    return files.stream()<a name="line.2198"></a>
+<span class="sourceLineNo">2199</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::getTotalUncompressedBytes))<a name="line.2199"></a>
+<span class="sourceLineNo">2200</span>      .sum();<a name="line.2200"></a>
+<span class="sourceLineNo">2201</span>  }<a name="line.2201"></a>
+<span class="sourceLineNo">2202</span><a name="line.2202"></a>
+<span class="sourceLineNo">2203</span>  private long getStorefilesSize(Collection&lt;HStoreFile&gt; files, Predicate&lt;HStoreFile&gt; predicate) {<a name="line.2203"></a>
+<span class="sourceLineNo">2204</span>    return files.stream().filter(predicate)<a name="line.2204"></a>
+<span class="sourceLineNo">2205</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, StoreFileReader::length)).sum();<a name="line.2205"></a>
+<span class="sourceLineNo">2206</span>  }<a name="line.2206"></a>
+<span class="sourceLineNo">2207</span><a name="line.2207"></a>
+<span class="sourceLineNo">2208</span>  private long getStorefileFieldSize(HStoreFile file, ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2208"></a>
+<span class="sourceLineNo">2209</span>    if (file == null) {<a name="line.2209"></a>
+<span class="sourceLineNo">2210</span>      return 0L;<a name="line.2210"></a>
+<span class="sourceLineNo">2211</span>    }<a name="line.2211"></a>
+<span class="sourceLineNo">2212</span>    StoreFileReader reader = file.getReader();<a name="line.2212"></a>
+<span class="sourceLineNo">2213</span>    if (reader == null) {<a name="line.2213"></a>
+<span class="sourceLineNo">2214</span>      return 0L;<a name="line.2214"></a>
+<span class="sourceLineNo">2215</span>    }<a name="line.2215"></a>
+<span class="sourceLineNo">2216</span>    return f.applyAsLong(reader);<a name="line.2216"></a>
+<span class="sourceLineNo">2217</span>  }<a name="line.2217"></a>
+<span class="sourceLineNo">2218</span><a name="line.2218"></a>
+<span class="sourceLineNo">2219</span>  private long getStorefilesFieldSize(ToLongFunction&lt;StoreFileReader&gt; f) {<a name="line.2219"></a>
+<span class="sourceLineNo">2220</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2220"></a>
+<span class="sourceLineNo">2221</span>      .mapToLong(file -&gt; getStorefileFieldSize(file, f)).sum();<a name="line.2221"></a>
+<span class="sourceLineNo">2222</span>  }<a name="line.2222"></a>
+<span class="sourceLineNo">2223</span><a name="line.2223"></a>
+<span class="sourceLineNo">2224</span>  @Override<a name="line.2224"></a>
+<span class="sourceLineNo">2225</span>  public long getStorefilesRootLevelIndexSize() {<a name="line.2225"></a>
+<span class="sourceLineNo">2226</span>    return getStorefilesFieldSize(StoreFileReader::indexSize);<a name="line.2226"></a>
+<span class="sourceLineNo">2227</span>  }<a name="line.2227"></a>
+<span class="sourceLineNo">2228</span><a name="line.2228"></a>
+<span class="sourceLineNo">2229</span>  @Override<a name="line.2229"></a>
+<span class="sourceLineNo">2230</span>  public long getTotalStaticIndexSize() {<a name="line.2230"></a>
+<span class="sourceLineNo">2231</span>    return getStorefilesFieldSize(StoreFileReader::getUncompressedDataIndexSize);<a name="line.2231"></a>
+<span class="sourceLineNo">2232</span>  }<a name="line.2232"></a>
+<span class="sourceLineNo">2233</span><a name="line.2233"></a>
+<span class="sourceLineNo">2234</span>  @Override<a name="line.2234"></a>
+<span class="sourceLineNo">2235</span>  public long getTotalStaticBloomSize() {<a name="line.2235"></a>
+<span class="sourceLineNo">2236</span>    return getStorefilesFieldSize(StoreFileReader::getTotalBloomSize);<a name="line.2236"></a>
+<span class="sourceLineNo">2237</span>  }<a name="line.2237"></a>
+<span class="sourceLineNo">2238</span><a name="line.2238"></a>
+<span class="sourceLineNo">2239</span>  @Override<a name="line.2239"></a>
+<span class="sourceLineNo">2240</span>  public MemStoreSize getMemStoreSize() {<a name="line.2240"></a>
+<span class="sourceLineNo">2241</span>    return this.memstore.size();<a name="line.2241"></a>
+<span class="sourceLineNo">2242</span>  }<a name="line.2242"></a>
+<span class="sourceLineNo">2243</span><a name="line.2243"></a>
+<span class="sourceLineNo">2244</span>  @Override<a name="line.2244"></a>
+<span class="sourceLineNo">2245</span>  public int getCompactPriority() {<a name="line.2245"></a>
+<span class="sourceLineNo">2246</span>    int priority = this.storeEngine.getStoreFileManager().getStoreCompactionPriority();<a name="line.2246"></a>
+<span class="sourceLineNo">2247</span>    if (priority == PRIORITY_USER) {<a name="line.2247"></a>
+<span class="sourceLineNo">2248</span>      LOG.warn("Compaction priority is USER despite there being no user compaction");<a name="line.2248"></a>
+<span class="sourceLineNo">2249</span>    }<a name="line.2249"></a>
+<span class="sourceLineNo">2250</span>    return priority;<a name="line.2250"></a>
+<span class="sourceLineNo">2251</span>  }<a name="line.2251"></a>
+<span class="sourceLineNo">2252</span><a name="line.2252"></a>
+<span class="sourceLineNo">2253</span>  public boolean throttleCompaction(long compactionSize) {<a name="line.2253"></a>
+<span class="sourceLineNo">2254</span>    return storeEngine.getCompactionPolicy().throttleCompaction(compactionSize);<a name="line.2254"></a>
+<span class="sourceLineNo">2255</span>  }<a name="line.2255"></a>
+<span class="sourceLineNo">2256</span><a name="line.2256"></a>
+<span class="sourceLineNo">2257</span>  public HRegion getHRegion() {<a name="line.2257"></a>
+<span class="sourceLineNo">2258</span>    return this.region;<a name="line.2258"></a>
+<span class="sourceLineNo">2259</span>  }<a name="line.2259"></a>
+<span class="sourceLineNo">2260</span><a name="line.2260"></a>
+<span class="sourceLineNo">2261</span>  public RegionCoprocessorHost getCoprocessorHost() {<a name="line.2261"></a>
+<span class="sourceLineNo">2262</span>    return this.region.getCoprocessorHost();<a name="line.2262"></a>
+<span class="sourceLineNo">2263</span>  }<a name="line.2263"></a>
+<span class="sourceLineNo">2264</span><a name="line.2264"></a>
+<span class="sourceLineNo">2265</span>  @Override<a name="line.2265"></a>
+<span class="sourceLineNo">2266</span>  public RegionInfo getRegionInfo() {<a name="line.2266"></a>
+<span class="sourceLineNo">2267</span>    return getRegionFileSystem().getRegionInfo();<a name="line.2267"></a>
+<span class="sourceLineNo">2268</span>  }<a name="line.2268"></a>
+<span class="sourceLineNo">2269</span><a name="line.2269"></a>
+<span class="sourceLineNo">2270</span>  @Override<a name="line.2270"></a>
+<span class="sourceLineNo">2271</span>  public boolean areWritesEnabled() {<a name="line.2271"></a>
+<span class="sourceLineNo">2272</span>    return this.region.areWritesEnabled();<a name="line.2272"></a>
+<span class="sourceLineNo">2273</span>  }<a name="line.2273"></a>
+<span class="sourceLineNo">2274</span><a name="line.2274"></a>
+<span class="sourceLineNo">2275</span>  @Override<a name="line.2275"></a>
+<span class="sourceLineNo">2276</span>  public long getSmallestReadPoint() {<a name="line.2276"></a>
+<span class="sourceLineNo">2277</span>    return this.region.getSmallestReadPoint();<a name="line.2277"></a>
+<span class="sourceLineNo">2278</span>  }<a name="line.2278"></a>
+<span class="sourceLineNo">2279</span><a name="line.2279"></a>
+<span class="sourceLineNo">2280</span>  /**<a name="line.2280"></a>
+<span class="sourceLineNo">2281</span>   * Adds or replaces the specified KeyValues.<a name="line.2281"></a>
+<span class="sourceLineNo">2282</span>   * &lt;p&gt;<a name="line.2282"></a>
+<span class="sourceLineNo">2283</span>   * For each KeyValue specified, if a cell with the same row, family, and qualifier exists in<a name="line.2283"></a>
+<span class="sourceLineNo">2284</span>   * MemStore, it will be replaced. Otherwise, it will just be inserted to MemStore.<a name="line.2284"></a>
+<span class="sourceLineNo">2285</span>   * &lt;p&gt;<a name="line.2285"></a>
+<span class="sourceLineNo">2286</span>   * This operation is atomic on each KeyValue (row/family/qualifier) but not necessarily atomic<a name="line.2286"></a>
+<span class="sourceLineNo">2287</span>   * across all of them.<a name="line.2287"></a>
+<span class="sourceLineNo">2288</span>   * @param readpoint readpoint below which we can safely remove duplicate KVs<a name="line.2288"></a>
+<span class="sourceLineNo">2289</span>   */<a name="line.2289"></a>
+<span class="sourceLineNo">2290</span>  public void upsert(Iterable&lt;Cell&gt; cells, long readpoint, MemStoreSizing memstoreSizing)<a name="line.2290"></a>
+<span class="sourceLineNo">2291</span>      throws IOException {<a name="line.2291"></a>
+<span class="sourceLineNo">2292</span>    this.lock.readLock().lock();<a name="line.2292"></a>
+<span class="sourceLineNo">2293</span>    try {<a name="line.2293"></a>
+<span class="sourceLineNo">2294</span>      this.memstore.upsert(cells, readpoint, memstoreSizing);<a name="line.2294"></a>
+<span class="sourceLineNo">2295</span>    } finally {<a name="line.2295"></a>
+<span class="sourceLineNo">2296</span>      this.lock.readLock().unlock();<a name="line.2296"></a>
+<span class="sourceLineNo">2297</span>    }<a name="line.2297"></a>
+<span class="sourceLineNo">2298</span>  }<a name="line.2298"></a>
+<span class="sourceLineNo">2299</span><a name="line.2299"></a>
+<span class="sourceLineNo">2300</span>  public StoreFlushContext createFlushContext(long cacheFlushId, FlushLifeCycleTracker tracker) {<a name="line.2300"></a>
+<span class="sourceLineNo">2301</span>    return new StoreFlusherImpl(cacheFlushId, tracker);<a name="line.2301"></a>
+<span class="sourceLineNo">2302</span>  }<a name="line.2302"></a>
+<span class="sourceLineNo">2303</span><a name="line.2303"></a>
+<span class="sourceLineNo">2304</span>  private final class StoreFlusherImpl implements StoreFlushContext {<a name="line.2304"></a>
+<span class="sourceLineNo">2305</span><a name="line.2305"></a>
+<span class="sourceLineNo">2306</span>    private final FlushLifeCycleTracker tracker;<a name="line.2306"></a>
+<span class="sourceLineNo">2307</span>    private final long cacheFlushSeqNum;<a name="line.2307"></a>
+<span class="sourceLineNo">2308</span>    private MemStoreSnapshot snapshot;<a name="line.2308"></a>
+<span class="sourceLineNo">2309</span>    private List&lt;Path&gt; tempFiles;<a name="line.2309"></a>
+<span class="sourceLineNo">2310</span>    private List&lt;Path&gt; committedFiles;<a name="line.2310"></a>
+<span class="sourceLineNo">2311</span>    private long cacheFlushCount;<a name="line.2311"></a>
+<span class="sourceLineNo">2312</span>    private long cacheFlushSize;<a name="line.2312"></a>
+<span class="sourceLineNo">2313</span>    private long outputFileSize;<a name="line.2313"></a>
+<span class="sourceLineNo">2314</span><a name="line.2314"></a>
+<span class="sourceLineNo">2315</span>    private StoreFlusherImpl(long cacheFlushSeqNum, FlushLifeCycleTracker tracker) {<a name="line.2315"></a>
+<span class="sourceLineNo">2316</span>      this.cacheFlushSeqNum = cacheFlushSeqNum;<a name="line.2316"></a>
+<span class="sourceLineNo">2317</span>      this.tracker = tracker;<a name="line.2317"></a>
+<span class="sourceLineNo">2318</span>    }<a name="line.2318"></a>
+<span class="sourceLineNo">2319</span><a name="line.2319"></a>
+<span class="sourceLineNo">2320</span>    /**<a name="line.2320"></a>
+<span class="sourceLineNo">2321</span>     * This is not thread safe. The caller should have a lock on the region or the store.<a name="line.2321"></a>
+<span class="sourceLineNo">2322</span>     * If necessary, the lock can be added with the patch provided in HBASE-10087<a name="line.2322"></a>
+<span class="sourceLineNo">2323</span>     */<a name="line.2323"></a>
+<span class="sourceLineNo">2324</span>    @Override<a name="line.2324"></a>
+<span class="sourceLineNo">2325</span>    public MemStoreSize prepare() {<a name="line.2325"></a>
+<span class="sourceLineNo">2326</span>      // passing the current sequence number of the wal - to allow bookkeeping in the memstore<a name="line.2326"></a>
+<span class="sourceLineNo">2327</span>      this.snapshot = memstore.snapshot();<a name="line.2327"></a>
+<span class="sourceLineNo">2328</span>      this.cacheFlushCount = snapshot.getCellsCount();<a name="line.2328"></a>
+<span class="sourceLineNo">2329</span>      this.cacheFlushSize = snapshot.getDataSize();<a name="line.2329"></a>
+<span class="sourceLineNo">2330</span>      committedFiles = new ArrayList&lt;&gt;(1);<a name="line.2330"></a>
+<span class="sourceLineNo">2331</span>      return snapshot.getMemStoreSize();<a name="line.2331"></a>
+<span class="sourceLineNo">2332</span>    }<a name="line.2332"></a>
+<span class="sourceLineNo">2333</span><a name="line.2333"></a>
+<span class="sourceLineNo">2334</span>    @Override<a name="line.2334"></a>
+<span class="sourceLineNo">2335</span>    public void flushCache(MonitoredTask status) throws IOException {<a name="line.2335"></a>
+<span class="sourceLineNo">2336</span>      RegionServerServices rsService = region.getRegionServerServices();<a name="line.2336"></a>
+<span class="sourceLineNo">2337</span>      ThroughputController throughputController =<a name="line.2337"></a>
+<span class="sourceLineNo">2338</span>          rsService == null ? null : rsService.getFlushThroughputController();<a name="line.2338"></a>
+<span class="sourceLineNo">2339</span>      tempFiles =<a name="line.2339"></a>
+<span class="sourceLineNo">2340</span>          HStore.this.flushCache(cacheFlushSeqNum, snapshot, status, throughputController, tracker);<a name="line.2340"></a>
+<span class="sourceLineNo">2341</span>    }<a name="line.2341"></a>
+<span class="sourceLineNo">2342</span><a name="line.2342"></a>
+<span class="sourceLineNo">2343</span>    @Override<a name="line.2343"></a>
+<span class="sourceLineNo">2344</span>    public boolean commit(MonitoredTask status) throws IOException {<a name="line.2344"></a>
+<span class="sourceLineNo">2345</span>      if (CollectionUtils.isEmpty(this.tempFiles)) {<a name="line.2345"></a>
+<span class="sourceLineNo">2346</span>        return false;<a name="line.2346"></a>
+<span class="sourceLineNo">2347</span>      }<a name="line.2347"></a>
+<span class="sourceLineNo">2348</span>      status.setStatus("Flushing " + this + ": reopening flushed file");<a name="line.2348"></a>
+<span class="sourceLineNo">2349</span>      List&lt;HStoreFile&gt; storeFiles = commitStoreFiles(tempFiles, false);<a name="line.2349"></a>
+<span class="sourceLineNo">2350</span>      for (HStoreFile sf : storeFiles) {<a name="line.2350"></a>
+<span class="sourceLineNo">2351</span>        StoreFileReader r = sf.getReader();<a name="line.2351"></a>
+<span class="sourceLineNo">2352</span>        if (LOG.isInfoEnabled()) {<a name="line.2352"></a>
+<span class="sourceLineNo">2353</span>          LOG.info("Added {}, entries={}, sequenceid={}, filesize={}", sf, r.getEntries(),<a name="line.2353"></a>
+<span class="sourceLineNo">2354</span>            cacheFlushSeqNum, TraditionalBinaryPrefix.long2String(r.length(), "", 1));<a name="line.2354"></a>
+<span class="sourceLineNo">2355</span>        }<a name="line.2355"></a>
+<span class="sourceLineNo">2356</span>        outputFileSize += r.length();<a name="line.2356"></a>
+<span class="sourceLineNo">2357</span>        storeSize.addAndGet(r.length());<a name="line.2357"></a>
+<span class="sourceLineNo">2358</span>        totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes());<a name="line.2358"></a>
+<span class="sourceLineNo">2359</span>        committedFiles.add(sf.getPath());<a name="line.2359"></a>
+<span class="sourceLineNo">2360</span>      }<a name="line.2360"></a>
+<span class="sourceLineNo">2361</span><a name="line.2361"></a>
+<span class="sourceLineNo">2362</span>      flushedCellsCount.addAndGet(cacheFlushCount);<a name="line.2362"></a>
+<span class="sourceLineNo">2363</span>      flushedCellsSize.addAndGet(cacheFlushSize);<a name="line.2363"></a>
+<span class="sourceLineNo">2364</span>      flushedOutputFileSize.addAndGet(outputFileSize);<a name="line.2364"></a>
+<span class="sourceLineNo">2365</span>      // call coprocessor after we have done all the accounting above<a name="line.2365"></a>
+<span class="sourceLineNo">2366</span>      for (HStoreFile sf : storeFiles) {<a name="line.2366"></a>
+<span class="sourceLineNo">2367</span>        if (getCoprocessorHost() != null) {<a name="line.2367"></a>
+<span class="sourceLineNo">2368</span>          getCoprocessorHost().postFlush(HStore.this, sf, tracker);<a name="line.2368"></a>
 <span class="sourceLineNo">2369</span>        }<a name="line.2369"></a>
 <span class="sourceLineNo">2370</span>      }<a name="line.2370"></a>
-<span class="sourceLineNo">2371</span><a name="line.2371"></a>
-<span class="sourceLineNo">2372</span>      for (HStoreFile sf : storeFiles) {<a name="line.2372"></a>
-<span class="sourceLineNo">2373</span>        if (HStore.this.getCoprocessorHost() != null) {<a name="line.2373"></a>
-<span class="sourceLineNo">2374</span>          HStore.this.getCoprocessorHost().postFlush(HStore.this, sf, tracker);<a name="line.2374"></a>
-<span class="sourceLineNo">2375</span>        }<a name="line.2375"></a>
-<span class="sourceLineNo">2376</span>        committedFiles.add(sf.getPath());<a name="line.2376"></a>
-<span class="sourceLineNo">2377</span>      }<a name="line.2377"></a>
-<span class="sourceLineNo">2378</span><a name="line.2378"></a>
-<span class="sourceLineNo">2379</span>      HStore.this.flushedCellsCount.addAndGet(cacheFlushCount);<a name="line.2379"></a>
-<span class="sourceLineNo">2380</span>      HStore.this.flushedCellsSize.addAndGet(cacheFlushSize);<a name="line.2380"></a>
-<span class="sourceLineNo">2381</span>      HStore.this.flushedOutputFileSize.addAndGet(outputFileSize);<a name="line.2381"></a>
-<span class="sourceLineNo">2382</span><a name="line.2382"></a>
-<span class="sourceLineNo">2383</span>      // Add new file to store files.  Clear snapshot too while we have the Store write lock.<a name="line.2383"></a>
-<span class="sourceLineNo">2384</span>      return HStore.this.updateStorefiles(storeFiles, snapshot.getId());<a name="line.2384"></a>
-<span class="sourceLineNo">2385</span>    }<a name="line.2385"></a>
-<span class="sourceLineNo">2386</span><a name="line.2386"></a>
-<span class="sourceLineNo">2387</span>    @Override<a name="line.2387"></a>
-<span class="sourceLineNo">2388</span>    public long getOutputFileSize() {<a name="line.2388"></a>
-<span class="sourceLineNo">2389</span>      return outputFileSize;<a name="line.2389"></a>
-<span class="sourceLineNo">2390</span>    }<a name="line.2390"></a>
-<span class="sourceLineNo">2391</span><a name="line.2391"></a>
+<span class="sourceLineNo">2371</span>      // Add new file to store files. Clear snapshot too while we have the Store write lock.<a name="line.2371"></a>
+<span class="sourceLineNo">2372</span>      return updateStorefiles(storeFiles, snapshot.getId());<a name="line.2372"></a>
+<span class="sourceLineNo">2373</span>    }<a name="line.2373"></a>
+<span class="sourceLineNo">2374</span><a name="line.2374"></a>
+<span class="sourceLineNo">2375</span>    @Override<a name="line.2375"></a>
+<span class="sourceLineNo">2376</span>    public long getOutputFileSize() {<a name="line.2376"></a>
+<span class="sourceLineNo">2377</span>      return outputFileSize;<a name="line.2377"></a>
+<span class="sourceLineNo">2378</span>    }<a name="line.2378"></a>
+<span class="sourceLineNo">2379</span><a name="line.2379"></a>
+<span class="sourceLineNo">2380</span>    @Override<a name="line.2380"></a>
+<span class="sourceLineNo">2381</span>    public List&lt;Path&gt; getCommittedFiles() {<a name="line.2381"></a>
+<span class="sourceLineNo">2382</span>      return committedFiles;<a name="line.2382"></a>
+<span class="sourceLineNo">2383</span>    }<a name="line.2383"></a>
+<span class="sourceLineNo">2384</span><a name="line.2384"></a>
+<span class="sourceLineNo">2385</span>    /**<a name="line.2385"></a>
+<span class="sourceLineNo">2386</span>     * Similar to commit, but called in secondary region replicas for replaying the<a name="line.2386"></a>
+<span class="sourceLineNo">2387</span>     * flush cache from primary region. Adds the new files to the store, and drops the<a name="line.2387"></a>
+<span class="sourceLineNo">2388</span>     * snapshot depending on dropMemstoreSnapshot argument.<a name="line.2388"></a>
+<span class="sourceLineNo">2389</span>     * @param fileNames names of the flushed files<a name="line.2389"></a>
+<span class="sourceLineNo">2390</span>     * @param dropMemstoreSnapshot whether to drop the prepared memstore snapshot<a name="line.2390"></a>
+<span class="sourceLineNo">2391</span>     */<a name="line.2391"></a>
 <span class="sourceLineNo">2392</span>    @Override<a name="line.2392"></a>
-<span class="sourceLineNo">2393</span>    public List&lt;Path&gt; getCommittedFiles() {<a name="line.2393"></a>
-<span class="sourceLineNo">2394</span>      return committedFiles;<a name="line.2394"></a>
-<span class="sourceLineNo">2395</span>    }<a name="line.2395"></a>
-<span class="sourceLineNo">2396</span><a name="line.2396"></a>
-<span class="sourceLineNo">2397</span>    /**<a name="line.2397"></a>
-<span class="sourceLineNo">2398</span>     * Similar to commit, but called in secondary region replicas for replaying the<a name="line.2398"></a>
-<span class="sourceLineNo">2399</span>     * flush cache from primary region. Adds the new files to the store, and drops the<a name="line.2399"></a>
-<span class="sourceLineNo">2400</span>     * snapshot depending on dropMemstoreSnapshot argument.<a name="line.2400"></a>
-<span class="sourceLineNo">2401</span>     * @param fileNames names of the flushed files<a name="line.2401"></a>
-<span class="sourceLineNo">2402</span>     * @param dropMemstoreSnapshot whether to drop the prepared memstore snapshot<a name="line.2402"></a>
-<span class="sourceLineNo">2403</span>     */<a name="line.2403"></a>
-<span class="sourceLineNo">2404</span>    @Override<a name="line.2404"></a>
-<span class="sourceLineNo">2405</span>    public void replayFlush(List&lt;String&gt; fileNames, boolean dropMemstoreSnapshot)<a name="line.2405"></a>
-<span class="sourceLineNo">2406</span>        throws IOException {<a name="line.2406"></a>
-<span class="sourceLineNo">2407</span>      List&lt;HStoreFile&gt; storeFiles = new ArrayList&lt;&gt;(fileNames.size());<a name="line.2407"></a>
-<span class="sourceLineNo">2408</span>      for (String file : fileNames) {<a name="line.2408"></a>
-<span class="sourceLineNo">2409</span>        // open the file as a store file (hfile link, etc)<a name="line.2409"></a>
-<span class="sourceLineNo">2410</span>        StoreFileInfo storeFileInfo =<a name="line.2410"></a>
-<span class="sourceLineNo">2411</span>          getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), file);<a name="line.2411"></a>
-<span class="sourceLineNo">2412</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.2412"></a>
-<span class="sourceLineNo">2413</span>        storeFiles.add(storeFile);<a name="line.2413"></a>
-<span class="sourceLineNo">2414</span>        HStore.this.storeSize.addAndGet(storeFile.getReader().length());<a name="line.2414"></a>
-<span class="sourceLineNo">2415</span>        HStore.this.totalUncompressedBytes<a name="line.2415"></a>
-<span class="sourceLineNo">2416</span>            .addAndGet(storeFile.getReader().getTotalUncompressedBytes());<a name="line.2416"></a>
-<span class="sourceLineNo">2417</span>        if (LOG.isInfoEnabled()) {<a name="line.2417"></a>
-<span class="sourceLineNo">2418</span>          LOG.info(this + " added " + storeFile + ", entries=" + storeFile.getReader().getEntries() +<a name="line.2418"></a>
-<span class="sourceLineNo">2419</span>              ", sequenceid=" + storeFile.getReader().getSequenceID() + ", filesize="<a name="line.2419"></a>
-<span class="sourceLineNo">2420</span>              + TraditionalBinaryPrefix.long2String(storeFile.getReader().length(), "", 1));<a name="line.2420"></a>
-<span class="sourceLineNo">2421</span>        }<a name="line.2421"></a>
-<span class="sourceLineNo">2422</span>      }<a name="line.2422"></a>
-<span class="sourceLineNo">2423</span><a name="line.2423"></a>
-<span class="sourceLineNo">2424</span>      long snapshotId = -1; // -1 means do not drop<a name="line.2424"></a>
-<span class="sourceLineNo">2425</span>      if (dropMemstoreSnapshot &amp;&amp; snapshot != null) {<a name="line.2425"></a>
-<span class="sourceLineNo">2426</span>        snapshotId = snapshot.getId();<a name="line.2426"></a>
-<span class="sourceLineNo">2427</span>        snapshot.close();<a name="line.2427"></a>
-<span class="sourceLineNo">2428</span>      }<a name="line.2428"></a>
-<span class="sourceLineNo">2429</span>      HStore.this.updateStorefiles(storeFiles, snapshotId);<a name="line.2429"></a>
-<span class="sourceLineNo">2430</span>    }<a name="line.2430"></a>
-<span class="sourceLineNo">2431</span><a name="line.2431"></a>
-<span class="sourceLineNo">2432</span>    /**<a name="line.2432"></a>
-<span class="sourceLineNo">2433</span>     * Abort the snapshot preparation. Drops the snapshot if any.<a name="line.2433"></a>
-<span class="sourceLineNo">2434</span>     */<a name="line.2434"></a>
-<span class="sourceLineNo">2435</span>    @Override<a name="line.2435"></a>
-<span class="sourceLineNo">2436</span>    public void abort() throws IOException {<a name="line.2436"></a>
-<span class="sourceLineNo">2437</span>      if (snapshot != null) {<a name="line.2437"></a>
-<span class="sourceLineNo">2438</span>        //We need to close the snapshot when aborting, otherwise, the segment scanner<a name="line.2438"></a>
-<span class="sourceLineNo">2439</span>        //won't be closed. If we are using MSLAB, the chunk referenced by those scanners<a name="line.2439"></a>
-<span class="sourceLineNo">2440</span>        //can't be released, thus memory leak<a name="line.2440"></a>
-<span class="sourceLineNo">2441</span>        snapshot.close();<a name="line.2441"></a>
-<span class="sourceLineNo">2442</span>        HStore.this.updateStorefiles(Collections.emptyList(), snapshot.getId());<a name="line.2442"></a>
-<span class="sourceLineNo">2443</span>      }<a name="line.2443"></a>
-<span class="sourceLineNo">2444</span>    }<a name="line.2444"></a>
-<span class="sourceLineNo">2445</span>  }<a name="line.2445"></a>
-<span class="sourceLineNo">2446</span><a name="line.2446"></a>
-<span class="sourceLineNo">2447</span>  @Override<a name="line.2447"></a>
-<span class="sourceLineNo">2448</span>  public boolean needsCompaction() {<a name="line.2448"></a>
-<span class="sourceLineNo">2449</span>    List&lt;HStoreFile&gt; filesCompactingClone = null;<a name="line.2449"></a>
-<span class="sourceLineNo">2450</span>    synchronized (filesCompacting) {<a name="line.2450"></a>
-<span class="sourceLineNo">2451</span>      filesCompactingClone = Lists.newArrayList(filesCompacting);<a name="line.2451"></a>
-<span class="sourceLineNo">2452</span>    }<a name="line.2452"></a>
-<span class="sourceLineNo">2453</span>    return this.storeEngine.needsCompaction(filesCompactingClone);<a name="line.2453"></a>
-<span class="sourceLineNo">2454</span>  }<a name="line.2454"></a>
-<span class="sourceLineNo">2455</span><a name="line.2455"></a>
-<span class="sourceLineNo">2456</span>  /**<a name="line.2456"></a>
-<span class="sourceLineNo">2457</span>   * Used for tests.<a name="line.2457"></a>
-<span class="sourceLineNo">2458</span>   * @return cache configuration for this Store.<a name="line.2458"></a>
-<span class="sourceLineNo">2459</span>   */<a name="line.2459"></a>
-<span class="sourceLineNo">2460</span>  public CacheConfig getCacheConfig() {<a name="line.2460"></a>
-<span class="sourceLineNo">2461</span>    return storeContext.getCacheConf();<a name="line.2461"></a>
-<span class="sourceLineNo">2462</span>  }<a name="line.2462"></a>
-<span class="sourceLineNo">2463</span><a name="line.2463"></a>
-<span class="sourceLineNo">2464</span>  public static final long FIXED_OVERHEAD = ClassSize.estimateBase(HStore.class, false);<a name="line.2464"></a>
+<span class="sourceLineNo">2393</span>    public void replayFlush(List&lt;String&gt; fileNames, boolean dropMemstoreSnapshot)<a name="line.2393"></a>
+<span class="sourceLineNo">2394</span>        throws IOException {<a name="line.2394"></a>
+<span class="sourceLineNo">2395</span>      List&lt;HStoreFile&gt; storeFiles = new ArrayList&lt;&gt;(fileNames.size());<a name="line.2395"></a>
+<span class="sourceLineNo">2396</span>      for (String file : fileNames) {<a name="line.2396"></a>
+<span class="sourceLineNo">2397</span>        // open the file as a store file (hfile link, etc)<a name="line.2397"></a>
+<span class="sourceLineNo">2398</span>        StoreFileInfo storeFileInfo =<a name="line.2398"></a>
+<span class="sourceLineNo">2399</span>          getRegionFileSystem().getStoreFileInfo(getColumnFamilyName(), file);<a name="line.2399"></a>
+<span class="sourceLineNo">2400</span>        HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);<a name="line.2400"></a>
+<span class="sourceLineNo">2401</span>        storeFiles.add(storeFile);<a name="line.2401"></a>
+<span class="sourceLineNo">2402</span>        HStore.this.storeSize.addAndGet(storeFile.getReader().length());<a name="line.2402"></a>
+<span class="sourceLineNo">2403</span>        HStore.this.totalUncompressedBytes<a name="line.2403"></a>
+<span class="sourceLineNo">2404</span>            .addAndGet(storeFile.getReader().getTotalUncompressedBytes());<a name="line.2404"></a>
+<span class="sourceLineNo">2405</span>        if (LOG.isInfoEnabled()) {<a name="line.2405"></a>
+<span class="sourceLineNo">2406</span>          LOG.info(this + " added " + storeFile + ", entries=" + storeFile.getReader().getEntries() +<a name="line.2406"></a>
+<span class="sourceLineNo">2407</span>              ", sequenceid=" + storeFile.getReader().getSequenceID() + ", filesize="<a name="line.2407"></a>
+<span class="sourceLineNo">2408</span>              + TraditionalBinaryPrefix.long2String(storeFile.getReader().length(), "", 1));<a name="line.2408"></a>
+<span class="sourceLineNo">2409</span>        }<a name="line.2409"></a>
+<span class="sourceLineNo">2410</span>      }<a name="line.2410"></a>
+<span class="sourceLineNo">2411</span><a name="line.2411"></a>
+<span class="sourceLineNo">2412</span>      long snapshotId = -1; // -1 means do not drop<a name="line.2412"></a>
+<span class="sourceLineNo">2413</span>      if (dropMemstoreSnapshot &amp;&amp; snapshot != null) {<a name="line.2413"></a>
+<span class="sourceLineNo">2414</span>        snapshotId = snapshot.getId();<a name="line.2414"></a>
+<span class="sourceLineNo">2415</span>        snapshot.close();<a name="line.2415"></a>
+<span class="sourceLineNo">2416</span>      }<a name="line.2416"></a>
+<span class="sourceLineNo">2417</span>      HStore.this.updateStorefiles(storeFiles, snapshotId);<a name="line.2417"></a>
+<span class="sourceLineNo">2418</span>    }<a name="line.2418"></a>
+<span class="sourceLineNo">2419</span><a name="line.2419"></a>
+<span class="sourceLineNo">2420</span>    /**<a name="line.2420"></a>
+<span class="sourceLineNo">2421</span>     * Abort the snapshot preparation. Drops the snapshot if any.<a name="line.2421"></a>
+<span class="sourceLineNo">2422</span>     */<a name="line.2422"></a>
+<span class="sourceLineNo">2423</span>    @Override<a name="line.2423"></a>
+<span class="sourceLineNo">2424</span>    public void abort() throws IOException {<a name="line.2424"></a>
+<span class="sourceLineNo">2425</span>      if (snapshot != null) {<a name="line.2425"></a>
+<span class="sourceLineNo">2426</span>        //We need to close the snapshot when aborting, otherwise, the segment scanner<a name="line.2426"></a>
+<span class="sourceLineNo">2427</span>        //won't be closed. If we are using MSLAB, the chunk referenced by those scanners<a name="line.2427"></a>
+<span class="sourceLineNo">2428</span>        //can't be released, thus memory leak<a name="line.2428"></a>
+<span class="sourceLineNo">2429</span>        snapshot.close();<a name="line.2429"></a>
+<span class="sourceLineNo">2430</span>        HStore.this.updateStorefiles(Collections.emptyList(), snapshot.getId());<a name="line.2430"></a>
+<span class="sourceLineNo">2431</span>      }<a name="line.2431"></a>
+<span class="sourceLineNo">2432</span>    }<a name="line.2432"></a>
+<span class="sourceLineNo">2433</span>  }<a name="line.2433"></a>
+<span class="sourceLineNo">2434</span><a name="line.2434"></a>
+<span class="sourceLineNo">2435</span>  @Override<a name="line.2435"></a>
+<span class="sourceLineNo">2436</span>  public boolean needsCompaction() {<a name="line.2436"></a>
+<span class="sourceLineNo">2437</span>    List&lt;HStoreFile&gt; filesCompactingClone = null;<a name="line.2437"></a>
+<span class="sourceLineNo">2438</span>    synchronized (filesCompacting) {<a name="line.2438"></a>
+<span class="sourceLineNo">2439</span>      filesCompactingClone = Lists.newArrayList(filesCompacting);<a name="line.2439"></a>
+<span class="sourceLineNo">2440</span>    }<a name="line.2440"></a>
+<span class="sourceLineNo">2441</span>    return this.storeEngine.needsCompaction(filesCompactingClone);<a name="line.2441"></a>
+<span class="sourceLineNo">2442</span>  }<a name="line.2442"></a>
+<span class="sourceLineNo">2443</span><a name="line.2443"></a>
+<span class="sourceLineNo">2444</span>  /**<a name="line.2444"></a>
+<span class="sourceLineNo">2445</span>   * Used for tests.<a name="line.2445"></a>
+<span class="sourceLineNo">2446</span>   * @return cache configuration for this Store.<a name="line.2446"></a>
+<span class="sourceLineNo">2447</span>   */<a name="line.2447"></a>
+<span class="sourceLineNo">2448</span>  public CacheConfig getCacheConfig() {<a name="line.2448"></a>
+<span class="sourceLineNo">2449</span>    return storeContext.getCacheConf();<a name="line.2449"></a>
+<span class="sourceLineNo">2450</span>  }<a name="line.2450"></a>
+<span class="sourceLineNo">2451</span><a name="line.2451"></a>
+<span class="sourceLineNo">2452</span>  public static final long FIXED_OVERHEAD = ClassSize.estimateBase(HStore.class, false);<a name="line.2452"></a>
+<span class="sourceLineNo">2453</span><a name="line.2453"></a>
+<span class="sourceLineNo">2454</span>  public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD<a name="line.2454"></a>
+<span class="sourceLineNo">2455</span>      + ClassSize.OBJECT + ClassSize.REENTRANT_LOCK<a name="line.2455"></a>
+<span class="sourceLineNo">2456</span>      + ClassSize.CONCURRENT_SKIPLISTMAP<a name="line.2456"></a>
+<span class="sourceLineNo">2457</span>      + ClassSize.CONCURRENT_SKIPLISTMAP_ENTRY + ClassSize.OBJECT<a name="line.2457"></a>
+<span class="sourceLineNo">2458</span>      + ScanInfo.FIXED_OVERHEAD);<a name="line.2458"></a>
+<span class="sourceLineNo">2459</span><a name="line.2459"></a>
+<span class="sourceLineNo">2460</span>  @Override<a name="line.2460"></a>
+<span class="sourceLineNo">2461</span>  public long heapSize() {<a name="line.2461"></a>
+<span class="sourceLineNo">2462</span>    MemStoreSize memstoreSize = this.memstore.size();<a name="line.2462"></a>
+<span class="sourceLineNo">2463</span>    return DEEP_OVERHEAD + memstoreSize.getHeapSize() + storeContext.heapSize();<a name="line.2463"></a>
+<span class="sourceLineNo">2464</span>  }<a name="line.2464"></a>
 <span class="sourceLineNo">2465</span><a name="line.2465"></a>
-<span class="sourceLineNo">2466</span>  public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD<a name="line.2466"></a>
-<span class="sourceLineNo">2467</span>      + ClassSize.OBJECT + ClassSize.REENTRANT_LOCK<a name="line.2467"></a>
-<span class="sourceLineNo">2468</span>      + ClassSize.CONCURRENT_SKIPLISTMAP<a name="line.2468"></a>
-<span class="sourceLineNo">2469</span>      + ClassSize.CONCURRENT_SKIPLISTMAP_ENTRY + ClassSize.OBJECT<a name="line.2469"></a>
-<span class="sourceLineNo">2470</span>      + ScanInfo.FIXED_OVERHEAD);<a name="line.2470"></a>
-<span class="sourceLineNo">2471</span><a name="line.2471"></a>
-<span class="sourceLineNo">2472</span>  @Override<a name="line.2472"></a>
-<span class="sourceLineNo">2473</span>  public long heapSize() {<a name="line.2473"></a>
-<span class="sourceLineNo">2474</span>    MemStoreSize memstoreSize = this.memstore.size();<a name="line.2474"></a>
-<span class="sourceLineNo">2475</span>    return DEEP_OVERHEAD + memstoreSize.getHeapSize() + storeContext.heapSize();<a name="line.2475"></a>
-<span class="sourceLineNo">2476</span>  }<a name="line.2476"></a>
-<span class="sourceLineNo">2477</span><a name="line.2477"></a>
-<span class="sourceLineNo">2478</span>  @Override<a name="line.2478"></a>
-<span class="sourceLineNo">2479</span>  public CellComparator getComparator() {<a name="line.2479"></a>
-<span class="sourceLineNo">2480</span>    return storeContext.getComparator();<a name="line.2480"></a>
+<span class="sourceLineNo">2466</span>  @Override<a name="line.2466"></a>
+<span class="sourceLineNo">2467</span>  public CellComparator getComparator() {<a name="line.2467"></a>
+<span class="sourceLineNo">2468</span>    return storeContext.getComparator();<a name="line.2468"></a>
+<span class="sourceLineNo">2469</span>  }<a name="line.2469"></a>
+<span class="sourceLineNo">2470</span><a name="line.2470"></a>
+<span class="sourceLineNo">2471</span>  public ScanInfo getScanInfo() {<a name="line.2471"></a>
+<span class="sourceLineNo">2472</span>    return scanInfo;<a name="line.2472"></a>
+<span class="sourceLineNo">2473</span>  }<a name="line.2473"></a>
+<span class="sourceLineNo">2474</span><a name="line.2474"></a>
+<span class="sourceLineNo">2475</span>  /**<a name="line.2475"></a>
+<span class="sourceLineNo">2476</span>   * Set scan info, used by test<a name="line.2476"></a>
+<span class="sourceLineNo">2477</span>   * @param scanInfo new scan info to use for test<a name="line.2477"></a>
+<span class="sourceLineNo">2478</span>   */<a name="line.2478"></a>
+<span class="sourceLineNo">2479</span>  void setScanInfo(ScanInfo scanInfo) {<a name="line.2479"></a>
+<span class="sourceLineNo">2480</span>    this.scanInfo = scanInfo;<a name="line.2480"></a>
 <span class="sourceLineNo">2481</span>  }<a name="line.2481"></a>
 <span class="sourceLineNo">2482</span><a name="line.2482"></a>
-<span class="sourceLineNo">2483</span>  public ScanInfo getScanInfo() {<a name="line.2483"></a>
-<span class="sourceLineNo">2484</span>    return scanInfo;<a name="line.2484"></a>
-<span class="sourceLineNo">2485</span>  }<a name="line.2485"></a>
-<span class="sourceLineNo">2486</span><a name="line.2486"></a>
-<span class="sourceLineNo">2487</span>  /**<a name="line.2487"></a>
-<span class="sourceLineNo">2488</span>   * Set scan info, used by test<a name="line.2488"></a>
-<span class="sourceLineNo">2489</span>   * @param scanInfo new scan info to use for test<a name="line.2489"></a>
-<span class="sourceLineNo">2490</span>   */<a name="line.2490"></a>
-<span class="sourceLineNo">2491</span>  void setScanInfo(ScanInfo scanInfo) {<a name="line.2491"></a>
-<span class="sourceLineNo">2492</span>    this.scanInfo = scanInfo;<a name="line.2492"></a>
-<span class="sourceLineNo">2493</span>  }<a name="line.2493"></a>
-<span class="sourceLineNo">2494</span><a name="line.2494"></a>
-<span class="sourceLineNo">2495</span>  @Override<a name="line.2495"></a>
-<span class="sourceLineNo">2496</span>  public boolean hasTooManyStoreFiles() {<a name="line.2496"></a>
-<span class="sourceLineNo">2497</span>    return getStorefilesCount() &gt; this.blockingFileCount;<a name="line.2497"></a>
-<span class="sourceLineNo">2498</span>  }<a name="line.2498"></a>
-<span class="sourceLineNo">2499</span><a name="line.2499"></a>
-<span class="sourceLineNo">2500</span>  @Override<a name="line.2500"></a>
-<span class="sourceLineNo">2501</span>  public long getFlushedCellsCount() {<a name="line.2501"></a>
-<span class="sourceLineNo">2502</span>    return flushedCellsCount.get();<a name="line.2502"></a>
-<span class="sourceLineNo">2503</span>  }<a name="line.2503"></a>
-<span class="sourceLineNo">2504</span><a name="line.2504"></a>
-<span class="sourceLineNo">2505</span>  @Override<a name="line.2505"></a>
-<span class="sourceLineNo">2506</span>  public long getFlushedCellsSize() {<a name="line.2506"></a>
-<span class="sourceLineNo">2507</span>    return flushedCellsSize.get();<a name="line.2507"></a>
-<span class="sourceLineNo">2508</span>  }<a name="line.2508"></a>
-<span class="sourceLineNo">2509</span><a name="line.2509"></a>
-<span class="sourceLineNo">2510</span>  @Override<a name="line.2510"></a>
-<span class="sourceLineNo">2511</span>  public long getFlushedOutputFileSize() {<a name="line.2511"></a>
-<span class="sourceLineNo">2512</span>    return flushedOutputFileSize.get();<a name="line.2512"></a>
-<span class="sourceLineNo">2513</span>  }<a name="line.2513"></a>
-<span class="sourceLineNo">2514</span><a name="line.2514"></a>
-<span class="sourceLineNo">2515</span>  @Override<a name="line.2515"></a>
-<span class="sourceLineNo">2516</span>  public long getCompactedCellsCount() {<a name="line.2516"></a>
-<span class="sourceLineNo">2517</span>    return compactedCellsCount.get();<a name="line.2517"></a>
-<span class="sourceLineNo">2518</span>  }<a name="line.2518"></a>
-<span class="sourceLineNo">2519</span><a name="line.2519"></a>
-<span class="sourceLineNo">2520</span>  @Override<a name="line.2520"></a>
-<span class="sourceLineNo">2521</span>  public long getCompactedCellsSize() {<a name="line.2521"></a>
-<span class="sourceLineNo">2522</span>    return compactedCellsSize.get();<a name="line.2522"></a>
-<span class="sourceLineNo">2523</span>  }<a name="line.2523"></a>
-<span class="sourceLineNo">2524</span><a name="line.2524"></a>
-<span class="sourceLineNo">2525</span>  @Override<a name="line.2525"></a>
-<span class="sourceLineNo">2526</span>  public long getMajorCompactedCellsCount() {<a name="line.2526"></a>
-<span class="sourceLineNo">2527</span>    return majorCompactedCellsCount.get();<a name="line.2527"></a>
-<span class="sourceLineNo">2528</span>  }<a name="line.2528"></a>
-<span class="sourceLineNo">2529</span><a name="line.2529"></a>
-<span class="sourceLineNo">2530</span>  @Override<a name="line.2530"></a>
-<span class="sourceLineNo">2531</span>  public long getMajorCompactedCellsSize() {<a name="line.2531"></a>
-<span class="sourceLineNo">2532</span>    return majorCompactedCellsSize.get();<a name="line.2532"></a>
+<span class="sourceLineNo">2483</span>  @Override<a name="line.2483"></a>
+<span class="sourceLineNo">2484</span>  public boolean hasTooManyStoreFiles() {<a name="line.2484"></a>
+<span class="sourceLineNo">2485</span>    return getStorefilesCount() &gt; this.blockingFileCount;<a name="line.2485"></a>
+<span class="sourceLineNo">2486</span>  }<a name="line.2486"></a>
+<span class="sourceLineNo">2487</span><a name="line.2487"></a>
+<span class="sourceLineNo">2488</span>  @Override<a name="line.2488"></a>
+<span class="sourceLineNo">2489</span>  public long getFlushedCellsCount() {<a name="line.2489"></a>
+<span class="sourceLineNo">2490</span>    return flushedCellsCount.get();<a name="line.2490"></a>
+<span class="sourceLineNo">2491</span>  }<a name="line.2491"></a>
+<span class="sourceLineNo">2492</span><a name="line.2492"></a>
+<span class="sourceLineNo">2493</span>  @Override<a name="line.2493"></a>
+<span class="sourceLineNo">2494</span>  public long getFlushedCellsSize() {<a name="line.2494"></a>
+<span class="sourceLineNo">2495</span>    return flushedCellsSize.get();<a name="line.2495"></a>
+<span class="sourceLineNo">2496</span>  }<a name="line.2496"></a>
+<span class="sourceLineNo">2497</span><a name="line.2497"></a>
+<span class="sourceLineNo">2498</span>  @Override<a name="line.2498"></a>
+<span class="sourceLineNo">2499</span>  public long getFlushedOutputFileSize() {<a name="line.2499"></a>
+<span class="sourceLineNo">2500</span>    return flushedOutputFileSize.get();<a name="line.2500"></a>
+<span class="sourceLineNo">2501</span>  }<a name="line.2501"></a>
+<span class="sourceLineNo">2502</span><a name="line.2502"></a>
+<span class="sourceLineNo">2503</span>  @Override<a name="line.2503"></a>
+<span class="sourceLineNo">2504</span>  public long getCompactedCellsCount() {<a name="line.2504"></a>
+<span class="sourceLineNo">2505</span>    return compactedCellsCount.get();<a name="line.2505"></a>
+<span class="sourceLineNo">2506</span>  }<a name="line.2506"></a>
+<span class="sourceLineNo">2507</span><a name="line.2507"></a>
+<span class="sourceLineNo">2508</span>  @Override<a name="line.2508"></a>
+<span class="sourceLineNo">2509</span>  public long getCompactedCellsSize() {<a name="line.2509"></a>
+<span class="sourceLineNo">2510</span>    return compactedCellsSize.get();<a name="line.2510"></a>
+<span class="sourceLineNo">2511</span>  }<a name="line.2511"></a>
+<span class="sourceLineNo">2512</span><a name="line.2512"></a>
+<span class="sourceLineNo">2513</span>  @Override<a name="line.2513"></a>
+<span class="sourceLineNo">2514</span>  public long getMajorCompactedCellsCount() {<a name="line.2514"></a>
+<span class="sourceLineNo">2515</span>    return majorCompactedCellsCount.get();<a name="line.2515"></a>
+<span class="sourceLineNo">2516</span>  }<a name="line.2516"></a>
+<span class="sourceLineNo">2517</span><a name="line.2517"></a>
+<span class="sourceLineNo">2518</span>  @Override<a name="line.2518"></a>
+<span class="sourceLineNo">2519</span>  public long getMajorCompactedCellsSize() {<a name="line.2519"></a>
+<span class="sourceLineNo">2520</span>    return majorCompactedCellsSize.get();<a name="line.2520"></a>
+<span class="sourceLineNo">2521</span>  }<a name="line.2521"></a>
+<span class="sourceLineNo">2522</span><a name="line.2522"></a>
+<span class="sourceLineNo">2523</span>  /**<a name="line.2523"></a>
+<span class="sourceLineNo">2524</span>   * Returns the StoreEngine that is backing this concrete implementation of Store.<a name="line.2524"></a>
+<span class="sourceLineNo">2525</span>   * @return Returns the {@link StoreEngine} object used internally inside this HStore object.<a name="line.2525"></a>
+<span class="sourceLineNo">2526</span>   */<a name="line.2526"></a>
+<span class="sourceLineNo">2527</span>  public StoreEngine&lt;?, ?, ?, ?&gt; getStoreEngine() {<a name="line.2527"></a>
+<span class="sourceLineNo">2528</span>    return this.storeEngine;<a name="line.2528"></a>
+<span class="sourceLineNo">2529</span>  }<a name="line.2529"></a>
+<span class="sourceLineNo">2530</span><a name="line.2530"></a>
+<span class="sourceLineNo">2531</span>  protected OffPeakHours getOffPeakHours() {<a name="line.2531"></a>
+<span class="sourceLineNo">2532</span>    return this.offPeakHours;<a name="line.2532"></a>
 <span class="sourceLineNo">2533</span>  }<a name="line.2533"></a>
 <span class="sourceLineNo">2534</span><a name="line.2534"></a>
 <span class="sourceLineNo">2535</span>  /**<a name="line.2535"></a>
-<span class="sourceLineNo">2536</span>   * Returns the StoreEngine that is backing this concrete implementation of Store.<a name="line.2536"></a>
-<span class="sourceLineNo">2537</span>   * @return Returns the {@link StoreEngine} object used internally inside this HStore object.<a name="line.2537"></a>
-<span class="sourceLineNo">2538</span>   */<a name="line.2538"></a>
-<span class="sourceLineNo">2539</span>  public StoreEngine&lt;?, ?, ?, ?&gt; getStoreEngine() {<a name="line.2539"></a>
-<span class="sourceLineNo">2540</span>    return this.storeEngine;<a name="line.2540"></a>
-<span class="sourceLineNo">2541</span>  }<a name="line.2541"></a>
-<span class="sourceLineNo">2542</span><a name="line.2542"></a>
-<span class="sourceLineNo">2543</span>  protected OffPeakHours getOffPeakHours() {<a name="line.2543"></a>
-<span class="sourceLineNo">2544</span>    return this.offPeakHours;<a name="line.2544"></a>
+<span class="sourceLineNo">2536</span>   * {@inheritDoc}<a name="line.2536"></a>
+<span class="sourceLineNo">2537</span>   */<a name="line.2537"></a>
+<span class="sourceLineNo">2538</span>  @Override<a name="line.2538"></a>
+<span class="sourceLineNo">2539</span>  public void onConfigurationChange(Configuration conf) {<a name="line.2539"></a>
+<span class="sourceLineNo">2540</span>    this.conf = new CompoundConfiguration()<a name="line.2540"></a>
+<span class="sourceLineNo">2541</span>            .add(conf)<a name="line.2541"></a>
+<span class="sourceLineNo">2542</span>            .addBytesMap(getColumnFamilyDescriptor().getValues());<a name="line.2542"></a>
+<span class="sourceLineNo">2543</span>    this.storeEngine.compactionPolicy.setConf(conf);<a name="line.2543"></a>
+<span class="sourceLineNo">2544</span>    this.offPeakHours = OffPeakHours.getInstance(conf);<a name="line.2544"></a>
 <span class="sourceLineNo">2545</span>  }<a name="line.2545"></a>
 <span class="sourceLineNo">2546</span><a name="line.2546"></a>
 <span class="sourceLineNo">2547</span>  /**<a name="line.2547"></a>
 <span class="sourceLineNo">2548</span>   * {@inheritDoc}<a name="line.2548"></a>
 <span class="sourceLineNo">2549</span>   */<a name="line.2549"></a>
 <span class="sourceLineNo">2550</span>  @Override<a name="line.2550"></a>
-<span class="sourceLineNo">2551</span>  public void onConfigurationChange(Configuration conf) {<a name="line.2551"></a>
-<span class="sourceLineNo">2552</span>    this.conf = new CompoundConfiguration()<a name="line.2552"></a>
-<span class="sourceLineNo">2553</span>            .add(conf)<a name="line.2553"></a>
-<span class="sourceLineNo">2554</span>            .addBytesMap(getColumnFamilyDescriptor().getValues());<a name="line.2554"></a>
-<span class="sourceLineNo">2555</span>    this.storeEngine.compactionPolicy.setConf(conf);<a name="line.2555"></a>
-<span class="sourceLineNo">2556</span>    this.offPeakHours = OffPeakHours.getInstance(conf);<a name="line.2556"></a>
-<span class="sourceLineNo">2557</span>  }<a name="line.2557"></a>
-<span class="sourceLineNo">2558</span><a name="line.2558"></a>
-<span class="sourceLineNo">2559</span>  /**<a name="line.2559"></a>
-<span class="sourceLineNo">2560</span>   * {@inheritDoc}<a name="line.2560"></a>
-<span class="sourceLineNo">2561</span>   */<a name="line.2561"></a>
-<span class="sourceLineNo">2562</span>  @Override<a name="line.2562"></a>
-<span class="sourceLineNo">2563</span>  public void registerChildren(ConfigurationManager manager) {<a name="line.2563"></a>
-<span class="sourceLineNo">2564</span>    // No children to register<a name="line.2564"></a>
-<span class="sourceLineNo">2565</span>  }<a name="line.2565"></a>
-<span class="sourceLineNo">2566</span><a name="line.2566"></a>
-<span class="sourceLineNo">2567</span>  /**<a name="line.2567"></a>
-<span class="sourceLineNo">2568</span>   * {@inheritDoc}<a name="line.2568"></a>
-<span class="sourceLineNo">2569</span>   */<a name="line.2569"></a>
-<span class="sourceLineNo">2570</span>  @Override<a name="line.2570"></a>
-<span class="sourceLineNo">2571</span>  public void deregisterChildren(ConfigurationManager manager) {<a name="line.2571"></a>
-<span class="sourceLineNo">2572</span>    // No children to deregister<a name="line.2572"></a>
-<span class="sourceLineNo">2573</span>  }<a name="line.2573"></a>
-<span class="sourceLineNo">2574</span><a name="line.2574"></a>
-<span class="sourceLineNo">2575</span>  @Override<a name="line.2575"></a>
-<span class="sourceLineNo">2576</span>  public double getCompactionPressure() {<a name="line.2576"></a>
-<span class="sourceLineNo">2577</span>    return storeEngine.getStoreFileManager().getCompactionPressure();<a name="line.2577"></a>
-<span class="sourceLineNo">2578</span>  }<a name="line.2578"></a>
-<span class="sourceLineNo">2579</span><a name="line.2579"></a>
-<span class="sourceLineNo">2580</span>  @Override<a name="line.2580"></a>
-<span class="sourceLineNo">2581</span>  public boolean isPrimaryReplicaStore() {<a name="line.2581"></a>
-<span class="sourceLineNo">2582</span>    return getRegionInfo().getReplicaId() == RegionInfo.DEFAULT_REPLICA_ID;<a name="line.2582"></a>
-<span class="sourceLineNo">2583</span>  }<a name="line.2583"></a>
-<span class="sourceLineNo">2584</span><a name="line.2584"></a>
-<span class="sourceLineNo">2585</span>  /**<a name="line.2585"></a>
-<span class="sourceLineNo">2586</span>   * Sets the store up for a region level snapshot operation.<a name="line.2586"></a>
-<span class="sourceLineNo">2587</span>   * @see #postSnapshotOperation()<a name="line.2587"></a>
-<span class="sourceLineNo">2588</span>   */<a name="line.2588"></a>
-<span class="sourceLineNo">2589</span>  public void preSnapshotOperation() {<a name="line.2589"></a>
-<span class="sourceLineNo">2590</span>    archiveLock.lock();<a name="line.2590"></a>
-<span class="sourceLineNo">2591</span>  }<a name="line.2591"></a>
-<span class="sourceLineNo">2592</span><a name="line.2592"></a>
-<span class="sourceLineNo">2593</span>  /**<a name="line.2593"></a>
-<span class="sourceLineNo">2594</span>   * Perform tasks needed after the completion of snapshot operation.<a name="line.2594"></a>
-<span class="sourceLineNo">2595</span>   * @see #preSnapshotOperation()<a name="line.2595"></a>
-<span class="sourceLineNo">2596</span>   */<a name="line.2596"></a>
-<span class="sourceLineNo">2597</span>  public void postSnapshotOperation() {<a name="line.2597"></a>
-<span class="sourceLineNo">2598</span>    archiveLock.unlock();<a name="line.2598"></a>
-<span class="sourceLineNo">2599</span>  }<a name="line.2599"></a>
-<span class="sourceLineNo">2600</span><a name="line.2600"></a>
-<span class="sourceLineNo">2601</span>  /**<a name="line.2601"></a>
-<span class="sourceLineNo">2602</span>   * Closes and archives the compacted files under this store<a name="line.2602"></a>
-<span class="sourceLineNo">2603</span>   */<a name="line.2603"></a>
-<span class="sourceLineNo">2604</span>  public synchronized void closeAndArchiveCompactedFiles() throws IOException {<a name="line.2604"></a>
-<span class="sourceLineNo">2605</span>    // ensure other threads do not attempt to archive the same files on close()<a name="line.2605"></a>
-<span class="sourceLineNo">2606</span>    archiveLock.lock();<a name="line.2606"></a>
-<span class="sourceLineNo">2607</span>    try {<a name="line.2607"></a>
-<span class="sourceLineNo">2608</span>      lock.readLock().lock();<a name="line.2608"></a>
-<span class="sourceLineNo">2609</span>      Collection&lt;HStoreFile&gt; copyCompactedfiles = null;<a name="line.2609"></a>
-<span class="sourceLineNo">2610</span>      try {<a name="line.2610"></a>
-<span class="sourceLineNo">2611</span>        Collection&lt;HStoreFile&gt; compactedfiles =<a name="line.2611"></a>
-<span class="sourceLineNo">2612</span>            this.getStoreEngine().getStoreFileManager().getCompactedfiles();<a name="line.2612"></a>
-<span class="sourceLineNo">2613</span>        if (CollectionUtils.isNotEmpty(compactedfiles)) {<a name="line.2613"></a>
-<span class="sourceLineNo">2614</span>          // Do a copy under read lock<a name="line.2614"></a>
-<span class="sourceLineNo">2615</span>          copyCompactedfiles = new ArrayList&lt;&gt;(compactedfiles);<a name="line.2615"></a>
-<span class="sourceLineNo">2616</span>        } else {<a name="line.2616"></a>
-<span class="sourceLineNo">2617</span>          LOG.trace("No compacted files to archive");<a name="line.2617"></a>
-<span class="sourceLineNo">2618</span>        }<a name="line.2618"></a>
-<span class="sourceLineNo">2619</span>      } finally {<a name="line.2619"></a>
-<span class="sourceLineNo">2620</span>        lock.readLock().unlock();<a name="line.2620"></a>
-<span class="sourceLineNo">2621</span>      }<a name="line.2621"></a>
-<span class="sourceLineNo">2622</span>      if (CollectionUtils.isNotEmpty(copyCompactedfiles)) {<a name="line.2622"></a>
-<span class="sourceLineNo">2623</span>        removeCompactedfiles(copyCompactedfiles, true);<a name="line.2623"></a>
-<span class="sourceLineNo">2624</span>      }<a name="line.2624"></a>
-<span class="sourceLineNo">2625</span>    } finally {<a name="line.2625"></a>
-<span class="sourceLineNo">2626</span>      archiveLock.unlock();<a name="line.2626"></a>
-<span class="sourceLineNo">2627</span>    }<a name="line.2627"></a>
-<span class="sourceLineNo">2628</span>  }<a name="line.2628"></a>
-<span class="sourceLineNo">2629</span><a name="line.2629"></a>
-<span class="sourceLineNo">2630</span>  /**<a name="line.2630"></a>
-<span class="sourceLineNo">2631</span>   * Archives and removes the compacted files<a name="line.2631"></a>
-<span class="sourceLineNo">2632</span>   * @param compactedfiles The compacted files in this store that are not active in reads<a name="line.2632"></a>
-<span class="sourceLineNo">2633</span>   * @param evictOnClose true if blocks should be evicted from the cache when an HFile reader is<a name="line.2633"></a>
-<span class="sourceLineNo">2634</span>   *   closed, false if not<a name="line.2634"></a>
-<span class="sourceLineNo">2635</span>   */<a name="line.2635"></a>
-<span class="sourceLineNo">2636</span>  private void removeCompactedfiles(Collection&lt;HStoreFile&gt; compactedfiles, boolean evictOnClose)<a name="line.2636"></a>
-<span class="sourceLineNo">2637</span>      throws IOException {<a name="line.2637"></a>
-<span class="sourceLineNo">2638</span>    final List&lt;HStoreFile&gt; filesToRemove = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2638"></a>
-<span class="sourceLineNo">2639</span>    final List&lt;Long&gt; storeFileSizes = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2639"></a>
-<span class="sourceLineNo">2640</span>    for (final HStoreFile file : compactedfiles) {<a name="line.2640"></a>
-<span class="sourceLineNo">2641</span>      synchronized (file) {<a name="line.2641"></a>
-<span class="sourceLineNo">2642</span>        try {<a name="line.2642"></a>
-<span class="sourceLineNo">2643</span>          StoreFileReader r = file.getReader();<a name="line.2643"></a>
-<span class="sourceLineNo">2644</span>          if (r == null) {<a name="line.2644"></a>
-<span class="sourceLineNo">2645</span>            LOG.debug("The file {} was closed but still not archived", file);<a name="line.2645"></a>
-<span class="sourceLineNo">2646</span>            // HACK: Temporarily re-open the reader so we can get the size of the file. Ideally,<a name="line.2646"></a>
-<span class="sourceLineNo">2647</span>            // we should know the size of an HStoreFile without having to ask the HStoreFileReader<a name="line.2647"></a>
-<span class="sourceLineNo">2648</span>            // for that.<a name="line.2648"></a>
-<span class="sourceLineNo">2649</span>            long length = getStoreFileSize(file);<a name="line.2649"></a>
-<span class="sourceLineNo">2650</span>            filesToRemove.add(file);<a name="line.2650"></a>
-<span class="sourceLineNo">2651</span>            storeFileSizes.add(length);<a name="line.2651"></a>
-<span class="sourceLineNo">2652</span>            continue;<a name="line.2652"></a>
-<span class="sourceLineNo">2653</span>          }<a name="line.2653"></a>
-<span class="sourceLineNo">2654</span><a name="line.2654"></a>
-<span class="sourceLineNo">2655</span>          if (file.isCompactedAway() &amp;&amp; !file.isReferencedInReads()) {<a name="line.2655"></a>
-<span class="sourceLineNo">2656</span>            // Even if deleting fails we need not bother as any new scanners won't be<a name="line.2656"></a>
-<span class="sourceLineNo">2657</span>            // able to use the compacted file as the status is already compactedAway<a name="line.2657"></a>
-<span class="sourceLineNo">2658</span>            LOG.trace("Closing and archiving the file {}", file);<a name="line.2658"></a>
-<span class="sourceLineNo">2659</span>            // Copy the file size before closing the reader<a name="line.2659"></a>
-<span class="sourceLineNo">2660</span>            final long length = r.length();<a name="line.2660"></a>
-<span class="sourceLineNo">2661</span>            r.close(evictOnClose);<a name="line.2661"></a>
-<span class="sourceLineNo">2662</span>            // Just close and return<a name="line.2662"></a>
-<span class="sourceLineNo">2663</span>            filesToRemove.add(file);<a name="line.2663"></a>
-<span class="sourceLineNo">2664</span>            // Only add the length if we successfully added the file to `filesToRemove`<a name="line.2664"></a>
-<span class="sourceLineNo">2665</span>            storeFileSizes.add(length);<a name="line.2665"></a>
-<span class="sourceLineNo">2666</span>          } else {<a name="line.2666"></a>
-<span class="sourceLineNo">2667</span>            LOG.info("Can't archive compacted file " + file.getPath()<a name="line.2667"></a>
-<span class="sourceLineNo">2668</span>                + " because of either isCompactedAway=" + file.isCompactedAway()<a name="line.2668"></a>
-<span class="sourceLineNo">2669</span>                + " or file has reference, isReferencedInReads=" + file.isReferencedInReads()<a name="line.2669"></a>
-<span class="sourceLineNo">2670</span>                + ", refCount=" + r.getRefCount() + ", skipping for now.");<a name="line.2670"></a>
-<span class="sourceLineNo">2671</span>          }<a name="line.2671"></a>
-<span class="sourceLineNo">2672</span>        } catch (Exception e) {<a name="line.2672"></a>
-<span class="sourceLineNo">2673</span>          LOG.error("Exception while trying to close the compacted store file {}", file.getPath(),<a name="line.2673"></a>
-<span class="sourceLineNo">2674</span>              e);<a name="line.2674"></a>
-<span class="sourceLineNo">2675</span>        }<a name="line.2675"></a>
-<span class="sourceLineNo">2676</span>      }<a name="line.2676"></a>
-<span class="sourceLineNo">2677</span>    }<a name="line.2677"></a>
-<span class="sourceLineNo">2678</span>    if (this.isPrimaryReplicaStore()) {<a name="line.2678"></a>
-<span class="sourceLineNo">2679</span>      // Only the primary region is allowed to move the file to archive.<a name="line.2679"></a>
-<span class="sourceLineNo">2680</span>      // The secondary region does not move the files to archive. Any active reads from<a name="line.2680"></a>
-<span class="sourceLineNo">2681</span>      // the secondary region will still work because the file as such has active readers on it.<a name="line.2681"></a>
-<span class="sourceLineNo">2682</span>      if (!filesToRemove.isEmpty()) {<a name="line.2682"></a>
-<span class="sourceLineNo">2683</span>        LOG.debug("Moving the files {} to archive", filesToRemove);<a name="line.2683"></a>
-<span class="sourceLineNo">2684</span>        // Only if this is successful it has to be removed<a name="line.2684"></a>
-<span class="sourceLineNo">2685</span>        try {<a name="line.2685"></a>
-<span class="sourceLineNo">2686</span>          getRegionFileSystem()<a name="line.2686"></a>
-<span class="sourceLineNo">2687</span>            .removeStoreFiles(this.getColumnFamilyDescriptor().getNameAsString(), filesToRemove);<a name="line.2687"></a>
-<span class="sourceLineNo">2688</span>        } catch (FailedArchiveException fae) {<a name="line.2688"></a>
-<span class="sourceLineNo">2689</span>          // Even if archiving some files failed, we still need to clear out any of the<a name="line.2689"></a>
-<span class="sourceLineNo">2690</span>          // files which were successfully archived.  Otherwise we will receive a<a name="line.2690"></a>
-<span class="sourceLineNo">2691</span>          // FileNotFoundException when we attempt to re-archive them in the next go around.<a name="line.2691"></a>
-<span class="sourceLineNo">2692</span>          Collection&lt;Path&gt; failedFiles = fae.getFailedFiles();<a name="line.2692"></a>
-<span class="sourceLineNo">2693</span>          Iterator&lt;HStoreFile&gt; iter = filesToRemove.iterator();<a name="line.2693"></a>
-<span class="sourceLineNo">2694</span>          Iterator&lt;Long&gt; sizeIter = storeFileSizes.iterator();<a name="line.2694"></a>
-<span class="sourceLineNo">2695</span>          while (iter.hasNext()) {<a name="line.2695"></a>
-<span class="sourceLineNo">2696</span>            sizeIter.next();<a name="line.2696"></a>
-<span class="sourceLineNo">2697</span>            if (failedFiles.contains(iter.next().getPath())) {<a name="line.2697"></a>
-<span class="sourceLineNo">2698</span>              iter.remove();<a name="line.2698"></a>
-<span class="sourceLineNo">2699</span>              sizeIter.remove();<a name="line.2699"></a>
-<span class="sourceLineNo">2700</span>            }<a name="line.2700"></a>
-<span class="sourceLineNo">2701</span>          }<a name="line.2701"></a>
-<span class="sourceLineNo">2702</span>          if (!filesToRemove.isEmpty()) {<a name="line.2702"></a>
-<span class="sourceLineNo">2703</span>            clearCompactedfiles(filesToRemove);<a name="line.2703"></a>
-<span class="sourceLineNo">2704</span>          }<a name="line.2704"></a>
-<span class="sourceLineNo">2705</span>          throw fae;<a name="line.2705"></a>
-<span class="sourceLineNo">2706</span>        }<a name="line.2706"></a>
-<span class="sourceLineNo">2707</span>      }<a name="line.2707"></a>
-<span class="sourceLineNo">2708</span>    }<a name="line.2708"></a>
-<span class="sourceLineNo">2709</span>    if (!filesToRemove.isEmpty()) {<a name="line.2709"></a>
-<span class="sourceLineNo">2710</span>      // Clear the compactedfiles from the store file manager<a name="line.2710"></a>
-<span class="sourceLineNo">2711</span>      clearCompactedfiles(filesToRemove);<a name="line.2711"></a>
-<span class="sourceLineNo">2712</span>      // Try to send report of this archival to the Master for updating quota usage faster<a name="line.2712"></a>
-<span class="sourceLineNo">2713</span>      reportArchivedFilesForQuota(filesToRemove, storeFileSizes);<a name="line.2713"></a>
-<span class="sourceLineNo">2714</span>    }<a name="line.2714"></a>
-<span class="sourceLineNo">2715</span>  }<a name="line.2715"></a>
-<span class="sourceLineNo">2716</span><a name="line.2716"></a>
-<span class="sourceLineNo">2717</span>  /**<a name="line.2717"></a>
-<span class="sourceLineNo">2718</span>   * Computes the length of a store file without succumbing to any errors along the way. If an<a name="line.2718"></a>
-<span class="sourceLineNo">2719</span>   * error is encountered, the implementation returns {@code 0} instead of the actual size.<a name="line.2719"></a>
-<span class="sourceLineNo">2720</span>   *<a name="line.2720"></a>
-<span class="sourceLineNo">2721</span>   * @param file The file to compute the size of.<a name="line.2721"></a>
-<span class="sourceLineNo">2722</span>   * @return The size in bytes of the provided {@code file}.<a name="line.2722"></a>
-<span class="sourceLineNo">2723</span>   */<a name="line.2723"></a>
-<span class="sourceLineNo">2724</span>  long getStoreFileSize(HStoreFile file) {<a name="line.2724"></a>
-<span class="sourceLineNo">2725</span>    long length = 0;<a name="line.2725"></a>
-<span class="sourceLineNo">2726</span>    try {<a name="line.2726"></a>
-<span class="sourceLineNo">2727</span>      file.initReader();<a name="line.2727"></a>
-<span class="sourceLineNo">2728</span>      length = file.getReader().length();<a name="line.2728"></a>
-<span class="sourceLineNo">2729</span>    } catch (IOException e) {<a name="line.2729"></a>
-<span class="sourceLineNo">2730</span>      LOG.trace("Failed to open reader when trying to compute store file size for {}, ignoring",<a name="line.2730"></a>
-<span class="sourceLineNo">2731</span>        file, e);<a name="line.2731"></a>
-<span class="sourceLineNo">2732</span>    } finally {<a name="line.2732"></a>
-<span class="sourceLineNo">2733</span>      try {<a name="line.2733"></a>
-<span class="sourceLineNo">2734</span>        file.closeStoreFile(<a name="line.2734"></a>
-<span class="sourceLineNo">2735</span>            file.getCacheConf() != null ? file.getCacheConf().shouldEvictOnClose() : true);<a name="line.2735"></a>
-<span class="sourceLineNo">2736</span>      } catch (IOException e) {<a name="line.2736"></a>
-<span class="sourceLineNo">2737</span>        LOG.trace("Failed to close reader after computing store file size for {}, ignoring",<a name="line.2737"></a>
-<span class="sourceLineNo">2738</span>          file, e);<a name="line.2738"></a>
-<span class="sourceLineNo">2739</span>      }<a name="line.2739"></a>
-<span class="sourceLineNo">2740</span>    }<a name="line.2740"></a>
-<span class="sourceLineNo">2741</span>    return length;<a name="line.2741"></a>
-<span class="sourceLineNo">2742</span>  }<a name="line.2742"></a>
-<span class="sourceLineNo">2743</span><a name="line.2743"></a>
-<span class="sourceLineNo">2744</span>  public Long preFlushSeqIDEstimation() {<a name="line.2744"></a>
-<span class="sourceLineNo">2745</span>    return memstore.preFlushSeqIDEstimation();<a name="line.2745"></a>
-<span class="sourceLineNo">2746</span>  }<a name="line.2746"></a>
-<span class="sourceLineNo">2747</span><a name="line.2747"></a>
-<span class="sourceLineNo">2748</span>  @Override<a name="line.2748"></a>
-<span class="sourceLineNo">2749</span>  public boolean isSloppyMemStore() {<a name="line.2749"></a>
-<span class="sourceLineNo">2750</span>    return this.memstore.isSloppy();<a name="line.2750"></a>
-<span class="sourceLineNo">2751</span>  }<a name="line.2751"></a>
-<span class="sourceLineNo">2752</span><a name="line.2752"></a>
-<span class="sourceLineNo">2753</span>  private void clearCompactedfiles(List&lt;HStoreFile&gt; filesToRemove) throws IOException {<a name="line.2753"></a>
-<span class="sourceLineNo">2754</span>    LOG.trace("Clearing the compacted file {} from this store", filesToRemove);<a name="line.2754"></a>
-<span class="sourceLineNo">2755</span>    try {<a name="line.2755"></a>
-<span class="sourceLineNo">2756</span>      lock.writeLock().lock();<a name="line.2756"></a>
-<span class="sourceLineNo">2757</span>      this.getStoreEngine().getStoreFileManager().removeCompactedFiles(filesToRemove);<a name="line.2757"></a>
-<span class="sourceLineNo">2758</span>    } finally {<a name="line.2758"></a>
-<span class="sourceLineNo">2759</span>      lock.writeLock().unlock();<a name="line.2759"></a>
-<span class="sourceLineNo">2760</span>    }<a name="line.2760"></a>
-<span class="sourceLineNo">2761</span>  }<a name="line.2761"></a>
-<span class="sourceLineNo">2762</span><a name="line.2762"></a>
-<span class="sourceLineNo">2763</span>  void reportArchivedFilesForQuota(List&lt;? extends StoreFile&gt; archivedFiles, List&lt;Long&gt; fileSizes) {<a name="line.2763"></a>
-<span class="sourceLineNo">2764</span>    // Sanity check from the caller<a name="line.2764"></a>
-<span class="sourceLineNo">2765</span>    if (archivedFiles.size() != fileSizes.size()) {<a name="line.2765"></a>
-<span class="sourceLineNo">2766</span>      throw new RuntimeException("Coding error: should never see lists of varying size");<a name="line.2766"></a>
+<span class="sourceLineNo">2551</span>  public void registerChildren(ConfigurationManager manager) {<a name="line.2551"></a>
+<span class="sourceLineNo">2552</span>    // No children to register<a name="line.2552"></a>
+<span class="sourceLineNo">2553</span>  }<a name="line.2553"></a>
+<span class="sourceLineNo">2554</span><a name="line.2554"></a>
+<span class="sourceLineNo">2555</span>  /**<a name="line.2555"></a>
+<span class="sourceLineNo">2556</span>   * {@inheritDoc}<a name="line.2556"></a>
+<span class="sourceLineNo">2557</span>   */<a name="line.2557"></a>
+<span class="sourceLineNo">2558</span>  @Override<a name="line.2558"></a>
+<span class="sourceLineNo">2559</span>  public void deregisterChildren(ConfigurationManager manager) {<a name="line.2559"></a>
+<span class="sourceLineNo">2560</span>    // No children to deregister<a name="line.2560"></a>
+<span class="sourceLineNo">2561</span>  }<a name="line.2561"></a>
+<span class="sourceLineNo">2562</span><a name="line.2562"></a>
+<span class="sourceLineNo">2563</span>  @Override<a name="line.2563"></a>
+<span class="sourceLineNo">2564</span>  public double getCompactionPressure() {<a name="line.2564"></a>
+<span class="sourceLineNo">2565</span>    return storeEngine.getStoreFileManager().getCompactionPressure();<a name="line.2565"></a>
+<span class="sourceLineNo">2566</span>  }<a name="line.2566"></a>
+<span class="sourceLineNo">2567</span><a name="line.2567"></a>
+<span class="sourceLineNo">2568</span>  @Override<a name="line.2568"></a>
+<span class="sourceLineNo">2569</span>  public boolean isPrimaryReplicaStore() {<a name="line.2569"></a>
+<span class="sourceLineNo">2570</span>    return getRegionInfo().getReplicaId() == RegionInfo.DEFAULT_REPLICA_ID;<a name="line.2570"></a>
+<span class="sourceLineNo">2571</span>  }<a name="line.2571"></a>
+<span class="sourceLineNo">2572</span><a name="line.2572"></a>
+<span class="sourceLineNo">2573</span>  /**<a name="line.2573"></a>
+<span class="sourceLineNo">2574</span>   * Sets the store up for a region level snapshot operation.<a name="line.2574"></a>
+<span class="sourceLineNo">2575</span>   * @see #postSnapshotOperation()<a name="line.2575"></a>
+<span class="sourceLineNo">2576</span>   */<a name="line.2576"></a>
+<span class="sourceLineNo">2577</span>  public void preSnapshotOperation() {<a name="line.2577"></a>
+<span class="sourceLineNo">2578</span>    archiveLock.lock();<a name="line.2578"></a>
+<span class="sourceLineNo">2579</span>  }<a name="line.2579"></a>
+<span class="sourceLineNo">2580</span><a name="line.2580"></a>
+<span class="sourceLineNo">2581</span>  /**<a name="line.2581"></a>
+<span class="sourceLineNo">2582</span>   * Perform tasks needed after the completion of snapshot operation.<a name="line.2582"></a>
+<span class="sourceLineNo">2583</span>   * @see #preSnapshotOperation()<a name="line.2583"></a>
+<span class="sourceLineNo">2584</span>   */<a name="line.2584"></a>
+<span class="sourceLineNo">2585</span>  public void postSnapshotOperation() {<a name="line.2585"></a>
+<span class="sourceLineNo">2586</span>    archiveLock.unlock();<a name="line.2586"></a>
+<span class="sourceLineNo">2587</span>  }<a name="line.2587"></a>
+<span class="sourceLineNo">2588</span><a name="line.2588"></a>
+<span class="sourceLineNo">2589</span>  /**<a name="line.2589"></a>
+<span class="sourceLineNo">2590</span>   * Closes and archives the compacted files under this store<a name="line.2590"></a>
+<span class="sourceLineNo">2591</span>   */<a name="line.2591"></a>
+<span class="sourceLineNo">2592</span>  public synchronized void closeAndArchiveCompactedFiles() throws IOException {<a name="line.2592"></a>
+<span class="sourceLineNo">2593</span>    // ensure other threads do not attempt to archive the same files on close()<a name="line.2593"></a>
+<span class="sourceLineNo">2594</span>    archiveLock.lock();<a name="line.2594"></a>
+<span class="sourceLineNo">2595</span>    try {<a name="line.2595"></a>
+<span class="sourceLineNo">2596</span>      lock.readLock().lock();<a name="line.2596"></a>
+<span class="sourceLineNo">2597</span>      Collection&lt;HStoreFile&gt; copyCompactedfiles = null;<a name="line.2597"></a>
+<span class="sourceLineNo">2598</span>      try {<a name="line.2598"></a>
+<span class="sourceLineNo">2599</span>        Collection&lt;HStoreFile&gt; compactedfiles =<a name="line.2599"></a>
+<span class="sourceLineNo">2600</span>            this.getStoreEngine().getStoreFileManager().getCompactedfiles();<a name="line.2600"></a>
+<span class="sourceLineNo">2601</span>        if (CollectionUtils.isNotEmpty(compactedfiles)) {<a name="line.2601"></a>
+<span class="sourceLineNo">2602</span>          // Do a copy under read lock<a name="line.2602"></a>
+<span class="sourceLineNo">2603</span>          copyCompactedfiles = new ArrayList&lt;&gt;(compactedfiles);<a name="line.2603"></a>
+<span class="sourceLineNo">2604</span>        } else {<a name="line.2604"></a>
+<span class="sourceLineNo">2605</span>          LOG.trace("No compacted files to archive");<a name="line.2605"></a>
+<span class="sourceLineNo">2606</span>        }<a name="line.2606"></a>
+<span class="sourceLineNo">2607</span>      } finally {<a name="line.2607"></a>
+<span class="sourceLineNo">2608</span>        lock.readLock().unlock();<a name="line.2608"></a>
+<span class="sourceLineNo">2609</span>      }<a name="line.2609"></a>
+<span class="sourceLineNo">2610</span>      if (CollectionUtils.isNotEmpty(copyCompactedfiles)) {<a name="line.2610"></a>
+<span class="sourceLineNo">2611</span>        removeCompactedfiles(copyCompactedfiles, true);<a name="line.2611"></a>
+<span class="sourceLineNo">2612</span>      }<a name="line.2612"></a>
+<span class="sourceLineNo">2613</span>    } finally {<a name="line.2613"></a>
+<span class="sourceLineNo">2614</span>      archiveLock.unlock();<a name="line.2614"></a>
+<span class="sourceLineNo">2615</span>    }<a name="line.2615"></a>
+<span class="sourceLineNo">2616</span>  }<a name="line.2616"></a>
+<span class="sourceLineNo">2617</span><a name="line.2617"></a>
+<span class="sourceLineNo">2618</span>  /**<a name="line.2618"></a>
+<span class="sourceLineNo">2619</span>   * Archives and removes the compacted files<a name="line.2619"></a>
+<span class="sourceLineNo">2620</span>   * @param compactedfiles The compacted files in this store that are not active in reads<a name="line.2620"></a>
+<span class="sourceLineNo">2621</span>   * @param evictOnClose true if blocks should be evicted from the cache when an HFile reader is<a name="line.2621"></a>
+<span class="sourceLineNo">2622</span>   *   closed, false if not<a name="line.2622"></a>
+<span class="sourceLineNo">2623</span>   */<a name="line.2623"></a>
+<span class="sourceLineNo">2624</span>  private void removeCompactedfiles(Collection&lt;HStoreFile&gt; compactedfiles, boolean evictOnClose)<a name="line.2624"></a>
+<span class="sourceLineNo">2625</span>      throws IOException {<a name="line.2625"></a>
+<span class="sourceLineNo">2626</span>    final List&lt;HStoreFile&gt; filesToRemove = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2626"></a>
+<span class="sourceLineNo">2627</span>    final List&lt;Long&gt; storeFileSizes = new ArrayList&lt;&gt;(compactedfiles.size());<a name="line.2627"></a>
+<span class="sourceLineNo">2628</span>    for (final HStoreFile file : compactedfiles) {<a name="line.2628"></a>
+<span class="sourceLineNo">2629</span>      synchronized (file) {<a name="line.2629"></a>
+<span class="sourceLineNo">2630</span>        try {<a name="line.2630"></a>
+<span class="sourceLineNo">2631</span>          StoreFileReader r = file.getReader();<a name="line.2631"></a>
+<span class="sourceLineNo">2632</span>          if (r == null) {<a name="line.2632"></a>
+<span class="sourceLineNo">2633</span>            LOG.debug("The file {} was closed but still not archived", file);<a name="line.2633"></a>
+<span class="sourceLineNo">2634</span>            // HACK: Temporarily re-open the reader so we can get the size of the file. Ideally,<a name="line.2634"></a>
+<span class="sourceLineNo">2635</span>            // we should know the size of an HStoreFile without having to ask the HStoreFileReader<a name="line.2635"></a>
+<span class="sourceLineNo">2636</span>            // for that.<a name="line.2636"></a>
+<span class="sourceLineNo">2637</span>            long length = getStoreFileSize(file);<a name="line.2637"></a>
+<span class="sourceLineNo">2638</span>            filesToRemove.add(file);<a name="line.2638"></a>
+<span class="sourceLineNo">2639</span>            storeFileSizes.add(length);<a name="line.2639"></a>
+<span class="sourceLineNo">2640</span>            continue;<a name="line.2640"></a>
+<span class="sourceLineNo">2641</span>          }<a name="line.2641"></a>
+<span class="sourceLineNo">2642</span><a name="line.2642"></a>
+<span class="sourceLineNo">2643</span>          if (file.isCompactedAway() &amp;&amp; !file.isReferencedInReads()) {<a name="line.2643"></a>
+<span class="sourceLineNo">2644</span>            // Even if deleting fails we need not bother as any new scanners won't be<a name="line.2644"></a>
+<span class="sourceLineNo">2645</span>            // able to use the compacted file as the status is already compactedAway<a name="line.2645"></a>
+<span class="sourceLineNo">2646</span>            LOG.trace("Closing and archiving the file {}", file);<a name="line.2646"></a>
+<span class="sourceLineNo">2647</span>            // Copy the file size before closing the reader<a name="line.2647"></a>
+<span class="sourceLineNo">2648</span>            final long length = r.length();<a name="line.2648"></a>
+<span class="sourceLineNo">2649</span>            r.close(evictOnClose);<a name="line.2649"></a>
+<span class="sourceLineNo">2650</span>            // Just close and return<a name="line.2650"></a>
+<span class="sourceLineNo">2651</span>            filesToRemove.add(file);<a name="line.2651"></a>
+<span class="sourceLineNo">2652</span>            // Only add the length if we successfully added the file to `filesToRemove`<a name="line.2652"></a>
+<span class="sourceLineNo">2653</span>            storeFileSizes.add(length);<a name="line.2653"></a>
+<span class="sourceLineNo">2654</span>          } else {<a name="line.2654"></a>
+<span class="sourceLineNo">2655</span>            LOG.info("Can't archive compacted file " + file.getPath()<a name="line.2655"></a>
+<span class="sourceLineNo">2656</span>                + " because of either isCompactedAway=" + file.isCompactedAway()<a name="line.2656"></a>
+<span class="sourceLineNo">2657</span>                + " or file has reference, isReferencedInReads=" + file.isReferencedInReads()<a name="line.2657"></a>
+<span class="sourceLineNo">2658</span>                + ", refCount=" + r.getRefCount() + ", skipping for now.");<a name="line.2658"></a>
+<span class="sourceLineNo">2659</span>          }<a name="line.2659"></a>
+<span class="sourceLineNo">2660</span>        } catch (Exception e) {<a name="line.2660"></a>
+<span class="sourceLineNo">2661</span>          LOG.error("Exception while trying to close the compacted store file {}", file.getPath(),<a name="line.2661"></a>
+<span class="sourceLineNo">2662</span>              e);<a name="line.2662"></a>
+<span class="sourceLineNo">2663</span>        }<a name="line.2663"></a>
+<span class="sourceLineNo">2664</span>      }<a name="line.2664"></a>
+<span class="sourceLineNo">2665</span>    }<a name="line.2665"></a>
+<span class="sourceLineNo">2666</span>    if (this.isPrimaryReplicaStore()) {<a name="line.2666"></a>
+<span class="sourceLineNo">2667</span>      // Only the primary region is allowed to move the file to archive.<a name="line.2667"></a>
+<span class="sourceLineNo">2668</span>      // The secondary region does not move the files to archive. Any active reads from<a name="line.2668"></a>
+<span class="sourceLineNo">2669</span>      // the secondary region will still work because the file as such has active readers on it.<a name="line.2669"></a>
+<span class="sourceLineNo">2670</span>      if (!filesToRemove.isEmpty()) {<a name="line.2670"></a>
+<span class="sourceLineNo">2671</span>        LOG.debug("Moving the files {} to archive", filesToRemove);<a name="line.2671"></a>
+<span class="sourceLineNo">2672</span>        // Only if this is successful it has to be removed<a name="line.2672"></a>
+<span class="sourceLineNo">2673</span>        try {<a name="line.2673"></a>
+<span class="sourceLineNo">2674</span>          getRegionFileSystem()<a name="line.2674"></a>
+<span class="sourceLineNo">2675</span>            .removeStoreFiles(this.getColumnFamilyDescriptor().getNameAsString(), filesToRemove);<a name="line.2675"></a>
+<span class="sourceLineNo">2676</span>        } catch (FailedArchiveException fae) {<a name="line.2676"></a>
+<span class="sourceLineNo">2677</span>          // Even if archiving some files failed, we still need to clear out any of the<a name="line.2677"></a>
+<span class="sourceLineNo">2678</span>          // files which were successfully archived.  Otherwise we will receive a<a name="line.2678"></a>
+<span class="sourceLineNo">2679</span>          // FileNotFoundException when we attempt to re-archive them in the next go around.<a name="line.2679"></a>
+<span class="sourceLineNo">2680</span>          Collection&lt;Path&gt; failedFiles = fae.getFailedFiles();<a name="line.2680"></a>
+<span class="sourceLineNo">2681</span>          Iterator&lt;HStoreFile&gt; iter = filesToRemove.iterator();<a name="line.2681"></a>
+<span class="sourceLineNo">2682</span>          Iterator&lt;Long&gt; sizeIter = storeFileSizes.iterator();<a name="line.2682"></a>
+<span class="sourceLineNo">2683</span>          while (iter.hasNext()) {<a name="line.2683"></a>
+<span class="sourceLineNo">2684</span>            sizeIter.next();<a name="line.2684"></a>
+<span class="sourceLineNo">2685</span>            if (failedFiles.contains(iter.next().getPath())) {<a name="line.2685"></a>
+<span class="sourceLineNo">2686</span>              iter.remove();<a name="line.2686"></a>
+<span class="sourceLineNo">2687</span>              sizeIter.remove();<a name="line.2687"></a>
+<span class="sourceLineNo">2688</span>            }<a name="line.2688"></a>
+<span class="sourceLineNo">2689</span>          }<a name="line.2689"></a>
+<span class="sourceLineNo">2690</span>          if (!filesToRemove.isEmpty()) {<a name="line.2690"></a>
+<span class="sourceLineNo">2691</span>            clearCompactedfiles(filesToRemove);<a name="line.2691"></a>
+<span class="sourceLineNo">2692</span>          }<a name="line.2692"></a>
+<span class="sourceLineNo">2693</span>          throw fae;<a name="line.2693"></a>
+<span class="sourceLineNo">2694</span>        }<a name="line.2694"></a>
+<span class="sourceLineNo">2695</span>      }<a name="line.2695"></a>
+<span class="sourceLineNo">2696</span>    }<a name="line.2696"></a>
+<span class="sourceLineNo">2697</span>    if (!filesToRemove.isEmpty()) {<a name="line.2697"></a>
+<span class="sourceLineNo">2698</span>      // Clear the compactedfiles from the store file manager<a name="line.2698"></a>
+<span class="sourceLineNo">2699</span>      clearCompactedfiles(filesToRemove);<a name="line.2699"></a>
+<span class="sourceLineNo">2700</span>      // Try to send report of this archival to the Master for updating quota usage faster<a name="line.2700"></a>
+<span class="sourceLineNo">2701</span>      reportArchivedFilesForQuota(filesToRemove, storeFileSizes);<a name="line.2701"></a>
+<span class="sourceLineNo">2702</span>    }<a name="line.2702"></a>
+<span class="sourceLineNo">2703</span>  }<a name="line.2703"></a>
+<span class="sourceLineNo">2704</span><a name="line.2704"></a>
+<span class="sourceLineNo">2705</span>  /**<a name="line.2705"></a>
+<span class="sourceLineNo">2706</span>   * Computes the length of a store file without succumbing to any errors along the way. If an<a name="line.2706"></a>
+<span class="sourceLineNo">2707</span>   * error is encountered, the implementation returns {@code 0} instead of the actual size.<a name="line.2707"></a>
+<span class="sourceLineNo">2708</span>   *<a name="line.2708"></a>
+<span class="sourceLineNo">2709</span>   * @param file The file to compute the size of.<a name="line.2709"></a>
+<span class="sourceLineNo">2710</span>   * @return The size in bytes of the provided {@code file}.<a name="line.2710"></a>
+<span class="sourceLineNo">2711</span>   */<a name="line.2711"></a>
+<span class="sourceLineNo">2712</span>  long getStoreFileSize(HStoreFile file) {<a name="line.2712"></a>
+<span class="sourceLineNo">2713</span>    long length = 0;<a name="line.2713"></a>
+<span class="sourceLineNo">2714</span>    try {<a name="line.2714"></a>
+<span class="sourceLineNo">2715</span>      file.initReader();<a name="line.2715"></a>
+<span class="sourceLineNo">2716</span>      length = file.getReader().length();<a name="line.2716"></a>
+<span class="sourceLineNo">2717</span>    } catch (IOException e) {<a name="line.2717"></a>
+<span class="sourceLineNo">2718</span>      LOG.trace("Failed to open reader when trying to compute store file size for {}, ignoring",<a name="line.2718"></a>
+<span class="sourceLineNo">2719</span>        file, e);<a name="line.2719"></a>
+<span class="sourceLineNo">2720</span>    } finally {<a name="line.2720"></a>
+<span class="sourceLineNo">2721</span>      try {<a name="line.2721"></a>
+<span class="sourceLineNo">2722</span>        file.closeStoreFile(<a name="line.2722"></a>
+<span class="sourceLineNo">2723</span>            file.getCacheConf() != null ? file.getCacheConf().shouldEvictOnClose() : true);<a name="line.2723"></a>
+<span class="sourceLineNo">2724</span>      } catch (IOException e) {<a name="line.2724"></a>
+<span class="sourceLineNo">2725</span>        LOG.trace("Failed to close reader after computing store file size for {}, ignoring",<a name="line.2725"></a>
+<span class="sourceLineNo">2726</span>          file, e);<a name="line.2726"></a>
+<span class="sourceLineNo">2727</span>      }<a name="line.2727"></a>
+<span class="sourceLineNo">2728</span>    }<a name="line.2728"></a>
+<span class="sourceLineNo">2729</span>    return length;<a name="line.2729"></a>
+<span class="sourceLineNo">2730</span>  }<a name="line.2730"></a>
+<span class="sourceLineNo">2731</span><a name="line.2731"></a>
+<span class="sourceLineNo">2732</span>  public Long preFlushSeqIDEstimation() {<a name="line.2732"></a>
+<span class="sourceLineNo">2733</span>    return memstore.preFlushSeqIDEstimation();<a name="line.2733"></a>
+<span class="sourceLineNo">2734</span>  }<a name="line.2734"></a>
+<span class="sourceLineNo">2735</span><a name="line.2735"></a>
+<span class="sourceLineNo">2736</span>  @Override<a name="line.2736"></a>
+<span class="sourceLineNo">2737</span>  public boolean isSloppyMemStore() {<a name="line.2737"></a>
+<span class="sourceLineNo">2738</span>    return this.memstore.isSloppy();<a name="line.2738"></a>
+<span class="sourceLineNo">2739</span>  }<a name="line.2739"></a>
+<span class="sourceLineNo">2740</span><a name="line.2740"></a>
+<span class="sourceLineNo">2741</span>  private void clearCompactedfiles(List&lt;HStoreFile&gt; filesToRemove) throws IOException {<a name="line.2741"></a>
+<span class="sourceLineNo">2742</span>    LOG.trace("Clearing the compacted file {} from this store", filesToRemove);<a name="line.2742"></a>
+<span class="sourceLineNo">2743</span>    try {<a name="line.2743"></a>
+<span class="sourceLineNo">2744</span>      lock.writeLock().lock();<a name="line.2744"></a>
+<span class="sourceLineNo">2745</span>      this.getStoreEngine().getStoreFileManager().removeCompactedFiles(filesToRemove);<a name="line.2745"></a>
+<span class="sourceLineNo">2746</span>    } finally {<a name="line.2746"></a>
+<span class="sourceLineNo">2747</span>      lock.writeLock().unlock();<a name="line.2747"></a>
+<span class="sourceLineNo">2748</span>    }<a name="line.2748"></a>
+<span class="sourceLineNo">2749</span>  }<a name="line.2749"></a>
+<span class="sourceLineNo">2750</span><a name="line.2750"></a>
+<span class="sourceLineNo">2751</span>  void reportArchivedFilesForQuota(List&lt;? extends StoreFile&gt; archivedFiles, List&lt;Long&gt; fileSizes) {<a name="line.2751"></a>
+<span class="sourceLineNo">2752</span>    // Sanity check from the caller<a name="line.2752"></a>
+<span class="sourceLineNo">2753</span>    if (archivedFiles.size() != fileSizes.size()) {<a name="line.2753"></a>
+<span class="sourceLineNo">2754</span>      throw new RuntimeException("Coding error: should never see lists of varying size");<a name="line.2754"></a>
+<span class="sourceLineNo">2755</span>    }<a name="line.2755"></a>
+<span class="sourceLineNo">2756</span>    RegionServerServices rss = this.region.getRegionServerServices();<a name="line.2756"></a>
+<span class="sourceLineNo">2757</span>    if (rss == null) {<a name="line.2757"></a>
+<span class="sourceLineNo">2758</span>      return;<a name="line.2758"></a>
+<span class="sourceLineNo">2759</span>    }<a name="line.2759"></a>
+<span class="sourceLineNo">2760</span>    List&lt;Entry&lt;String,Long&gt;&gt; filesWithSizes = new ArrayList&lt;&gt;(archivedFiles.size());<a name="line.2760"></a>
+<span class="sourceLineNo">2761</span>    Iterator&lt;Long&gt; fileSizeIter = fileSizes.iterator();<a name="line.2761"></a>
+<span class="sourceLineNo">2762</span>    for (StoreFile storeFile : archivedFiles) {<a name="line.2762"></a>
+<span class="sourceLineNo">2763</span>      final long fileSize = fileSizeIter.next();<a name="line.2763"></a>
+<span class="sourceLineNo">2764</span>      if (storeFile.isHFile() &amp;&amp; fileSize != 0) {<a name="line.2764"></a>
+<span class="sourceLineNo">2765</span>        filesWithSizes.add(Maps.immutableEntry(storeFile.getPath().getName(), fileSize));<a name="line.2765"></a>
+<span class="sourceLineNo">2766</span>      }<a name="line.2766"></a>
 <span class="sourceLineNo">2767</span>    }<a name="line.2767"></a>
-<span class="sourceLineNo">2768</span>    RegionServerServices rss = this.region.getRegionServerServices();<a name="line.2768"></a>
-<span class="sourceLineNo">2769</span>    if (rss == null) {<a name="line.2769"></a>
-<span class="sourceLineNo">2770</span>      return;<a name="line.2770"></a>
+<span class="sourceLineNo">2768</span>    if (LOG.isTraceEnabled()) {<a name="line.2768"></a>
+<span class="sourceLineNo">2769</span>      LOG.trace("Files archived: " + archivedFiles + ", reporting the following to the Master: "<a name="line.2769"></a>
+<span class="sourceLineNo">2770</span>          + filesWithSizes);<a name="line.2770"></a>
 <span class="sourceLineNo">2771</span>    }<a name="line.2771"></a>
-<span class="sourceLineNo">2772</span>    List&lt;Entry&lt;String,Long&gt;&gt; filesWithSizes = new ArrayList&lt;&gt;(archivedFiles.size());<a name="line.2772"></a>
-<span class="sourceLineNo">2773</span>    Iterator&lt;Long&gt; fileSizeIter = fileSizes.iterator();<a name="line.2773"></a>
-<span class="sourceLineNo">2774</span>    for (StoreFile storeFile : archivedFiles) {<a name="line.2774"></a>
-<span class="sourceLineNo">2775</span>      final long fileSize = fileSizeIter.next();<a name="line.2775"></a>
-<span class="sourceLineNo">2776</span>      if (storeFile.isHFile() &amp;&amp; fileSize != 0) {<a name="line.2776"></a>
-<span class="sourceLineNo">2777</span>        filesWithSizes.add(Maps.immutableEntry(storeFile.getPath().getName(), fileSize));<a name="line.2777"></a>
-<span class="sourceLineNo">2778</span>      }<a name="line.2778"></a>
-<span class="sourceLineNo">2779</span>    }<a name="line.2779"></a>
-<span class="sourceLineNo">2780</span>    if (LOG.isTraceEnabled()) {<a name="line.2780"></a>
-<span class="sourceLineNo">2781</span>      LOG.trace("Files archived: " + archivedFiles + ", reporting the following to the Master: "<a name="line.2781"></a>
-<span class="sourceLineNo">2782</span>          + filesWithSizes);<a name="line.2782"></a>
-<span class="sourceLineNo">2783</span>    }<a name="line.2783"></a>
-<span class="sourceLineNo">2784</span>    boolean success = rss.reportFileArchivalForQuotas(getTableName(), filesWithSizes);<a name="line.2784"></a>
-<span class="sourceLineNo">2785</span>    if (!success) {<a name="line.2785"></a>
-<span class="sourceLineNo">2786</span>      LOG.warn("Failed to report archival of files: " + filesWithSizes);<a name="line.2786"></a>
-<span class="sourceLineNo">2787</span>    }<a name="line.2787"></a>
-<span class="sourceLineNo">2788</span>  }<a name="line.2788"></a>
-<span class="sourceLineNo">2789</span><a name="line.2789"></a>
-<span class="sourceLineNo">2790</span>  @Override<a name="line.2790"></a>
-<span class="sourceLineNo">2791</span>  public int getCurrentParallelPutCount() {<a name="line.2791"></a>
-<span class="sourceLineNo">2792</span>    return currentParallelPutCount.get();<a name="line.2792"></a>
-<span class="sourceLineNo">2793</span>  }<a name="line.2793"></a>
-<span class="sourceLineNo">2794</span><a name="line.2794"></a>
-<span class="sourceLineNo">2795</span>  public int getStoreRefCount() {<a name="line.2795"></a>
-<span class="sourceLineNo">2796</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2796"></a>
-<span class="sourceLineNo">2797</span>      .filter(sf -&gt; sf.getReader() != null).filter(HStoreFile::isHFile)<a name="line.2797"></a>
-<span class="sourceLineNo">2798</span>      .mapToInt(HStoreFile::getRefCount).sum();<a name="line.2798"></a>
-<span class="sourceLineNo">2799</span>  }<a name="line.2799"></a>
-<span class="sourceLineNo">2800</span><a name="line.2800"></a>
-<span class="sourceLineNo">2801</span>  /**<a name="line.2801"></a>
-<span class="sourceLineNo">2802</span>   * @return get maximum ref count of storeFile among all compacted HStore Files for the HStore<a name="line.2802"></a>
-<span class="sourceLineNo">2803</span>   */<a name="line.2803"></a>
-<span class="sourceLineNo">2804</span>  public int getMaxCompactedStoreFileRefCount() {<a name="line.2804"></a>
-<span class="sourceLineNo">2805</span>    OptionalInt maxCompactedStoreFileRefCount = this.storeEngine.getStoreFileManager()<a name="line.2805"></a>
-<span class="sourceLineNo">2806</span>      .getCompactedfiles()<a name="line.2806"></a>
-<span class="sourceLineNo">2807</span>      .stream()<a name="line.2807"></a>
-<span class="sourceLineNo">2808</span>      .filter(sf -&gt; sf.getReader() != null)<a name="line.2808"></a>
-<span class="sourceLineNo">2809</span>      .filter(HStoreFile::isHFile)<a name="line.2809"></a>
-<span class="sourceLineNo">2810</span>      .mapToInt(HStoreFile::getRefCount)<a name="line.2810"></a>
-<span class="sourceLineNo">2811</span>      .max();<a name="line.2811"></a>
-<span class="sourceLineNo">2812</span>    return maxCompactedStoreFileRefCount.isPresent()<a name="line.2812"></a>
-<span class="sourceLineNo">2813</span>      ? maxCompactedStoreFileRefCount.getAsInt() : 0;<a name="line.2813"></a>
-<span class="sourceLineNo">2814</span>  }<a name="line.2814"></a>
-<span class="sourceLineNo">2815</span><a name="line.2815"></a>
-<span class="sourceLineNo">2816</span>  @Override<a name="line.2816"></a>
-<span class="sourceLineNo">2817</span>  public long getMemstoreOnlyRowReadsCount() {<a name="line.2817"></a>
-<span class="sourceLineNo">2818</span>    return memstoreOnlyRowReadsCount.sum();<a name="line.2818"></a>
-<span class="sourceLineNo">2819</span>  }<a name="line.2819"></a>
-<span class="sourceLineNo">2820</span><a name="line.2820"></a>
-<span class="sourceLineNo">2821</span>  @Override<a name="line.2821"></a>
-<span class="sourceLineNo">2822</span>  public long getMixedRowReadsCount() {<a name="line.2822"></a>
-<span class="sourceLineNo">2823</span>    return mixedRowReadsCount.sum();<a name="line.2823"></a>
-<span class="sourceLineNo">2824</span>  }<a name="line.2824"></a>
-<span class="sourceLineNo">2825</span><a name="line.2825"></a>
-<span class="sourceLineNo">2826</span>  void updateMetricsStore(boolean memstoreRead) {<a name="line.2826"></a>
-<span class="sourceLineNo">2827</span>    if (memstoreRead) {<a name="line.2827"></a>
-<span class="sourceLineNo">2828</span>      memstoreOnlyRowReadsCount.increment();<a name="line.2828"></a>
-<span class="sourceLineNo">2829</span>    } else {<a name="line.2829"></a>
-<span class="sourceLineNo">2830</span>      mixedRowReadsCount.increment();<a name="line.2830"></a>
-<span class="sourceLineNo">2831</span>    }<a name="line.2831"></a>
-<span class="sourceLineNo">2832</span>  }<a name="line.2832"></a>
-<span class="sourceLineNo">2833</span>}<a name="line.2833"></a>
+<span class="sourceLineNo">2772</span>    boolean success = rss.reportFileArchivalForQuotas(getTableName(), filesWithSizes);<a name="line.2772"></a>
+<span class="sourceLineNo">2773</span>    if (!success) {<a name="line.2773"></a>
+<span class="sourceLineNo">2774</span>      LOG.warn("Failed to report archival of files: " + filesWithSizes);<a name="line.2774"></a>
+<span class="sourceLineNo">2775</span>    }<a name="line.2775"></a>
+<span class="sourceLineNo">2776</span>  }<a name="line.2776"></a>
+<span class="sourceLineNo">2777</span><a name="line.2777"></a>
+<span class="sourceLineNo">2778</span>  @Override<a name="line.2778"></a>
+<span class="sourceLineNo">2779</span>  public int getCurrentParallelPutCount() {<a name="line.2779"></a>
+<span class="sourceLineNo">2780</span>    return currentParallelPutCount.get();<a name="line.2780"></a>
+<span class="sourceLineNo">2781</span>  }<a name="line.2781"></a>
+<span class="sourceLineNo">2782</span><a name="line.2782"></a>
+<span class="sourceLineNo">2783</span>  public int getStoreRefCount() {<a name="line.2783"></a>
+<span class="sourceLineNo">2784</span>    return this.storeEngine.getStoreFileManager().getStorefiles().stream()<a name="line.2784"></a>
+<span class="sourceLineNo">2785</span>      .filter(sf -&gt; sf.getReader() != null).filter(HStoreFile::isHFile)<a name="line.2785"></a>
+<span class="sourceLineNo">2786</span>      .mapToInt(HStoreFile::getRefCount).sum();<a name="line.2786"></a>
+<span class="sourceLineNo">2787</span>  }<a name="line.2787"></a>
+<span class="sourceLineNo">2788</span><a name="line.2788"></a>
+<span class="sourceLineNo">2789</span>  /**<a name="line.2789"></a>
+<span class="sourceLineNo">2790</span>   * @return get maximum ref count of storeFile among all compacted HStore Files for the HStore<a name="line.2790"></a>
+<span class="sourceLineNo">2791</span>   */<a name="line.2791"></a>
+<span class="sourceLineNo">2792</span>  public int getMaxCompactedStoreFileRefCount() {<a name="line.2792"></a>
+<span class="sourceLineNo">2793</span>    OptionalInt maxCompactedStoreFileRefCount = this.storeEngine.getStoreFileManager()<a name="line.2793"></a>
+<span class="sourceLineNo">2794</span>      .getCompactedfiles()<a name="line.2794"></a>
+<span class="sourceLineNo">2795</span>      .stream()<a name="line.2795"></a>
+<span class="sourceLineNo">2796</span>      .filter(sf -&gt; sf.getReader() != null)<a name="line.2796"></a>
+<span class="sourceLineNo">2797</span>      .filter(HStoreFile::isHFile)<a name="line.2797"></a>
+<span class="sourceLineNo">2798</span>      .mapToInt(HStoreFile::getRefCount)<a name="line.2798"></a>
+<span class="sourceLineNo">2799</span>      .max();<a name="line.2799"></a>
+<span class="sourceLineNo">2800</span>    return maxCompactedStoreFileRefCount.isPresent()<a name="line.2800"></a>
+<span class="sourceLineNo">2801</span>      ? maxCompactedStoreFileRefCount.getAsInt() : 0;<a name="line.2801"></a>
+<span class="sourceLineNo">2802</span>  }<a name="line.2802"></a>
+<span class="sourceLineNo">2803</span><a name="line.2803"></a>
+<span class="sourceLineNo">2804</span>  @Override<a name="line.2804"></a>
+<span class="sourceLineNo">2805</span>  public long getMemstoreOnlyRowReadsCount() {<a name="line.2805"></a>
+<span class="sourceLineNo">2806</span>    return memstoreOnlyRowReadsCount.sum();<a name="line.2806"></a>
+<span class="sourceLineNo">2807</span>  }<a name="line.2807"></a>
+<span class="sourceLineNo">2808</span><a name="line.2808"></a>
+<span class="sourceLineNo">2809</span>  @Override<a name="line.2809"></a>
+<span class="sourceLineNo">2810</span>  public long getMixedRowReadsCount() {<a name="line.2810"></a>
+<span class="sourceLineNo">2811</span>    return mixedRowReadsCount.sum();<a name="line.2811"></a>
+<span class="sourceLineNo">2812</span>  }<a name="line.2812"></a>
+<span class="sourceLineNo">2813</span><a name="line.2813"></a>
+<span class="sourceLineNo">2814</span>  void updateMetricsStore(boolean memstoreRead) {<a name="line.2814"></a>
+<span class="sourceLineNo">2815</span>    if (memstoreRead) {<a name="line.2815"></a>
+<span class="sourceLineNo">2816</span>      memstoreOnlyRowReadsCount.increment();<a name="line.2816"></a>
+<span class="sourceLineNo">2817</span>    } else {<a name="line.2817"></a>
+<span class="sourceLineNo">2818</span>      mixedRowReadsCount.increment();<a name="line.2818"></a>
+<span class="sourceLineNo">2819</span>    }<a name="line.2819"></a>
+<span class="sourceLineNo">2820</span>  }<a name="line.2820"></a>
+<span class="sourceLineNo">2821</span>}<a name="line.2821"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html
index 3155476..091b9b2 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogWriter.html
@@ -30,121 +30,134 @@
 <span class="sourceLineNo">022</span>import java.util.concurrent.atomic.AtomicLong;<a name="line.22"></a>
 <span class="sourceLineNo">023</span><a name="line.23"></a>
 <span class="sourceLineNo">024</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.hadoop.fs.FileSystem;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.hadoop.fs.Path;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import org.apache.hadoop.hbase.Cell;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import org.apache.hadoop.hbase.util.AtomicUtils;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import org.apache.hadoop.hbase.util.CommonFSUtils.StreamLacksCapabilityException;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import org.apache.hadoop.hbase.wal.FSHLogProvider;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import org.apache.hadoop.hbase.wal.WAL.Entry;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>import org.slf4j.Logger;<a name="line.35"></a>
-<span class="sourceLineNo">036</span>import org.slf4j.LoggerFactory;<a name="line.36"></a>
-<span class="sourceLineNo">037</span><a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALTrailer;<a name="line.39"></a>
-<span class="sourceLineNo">040</span><a name="line.40"></a>
-<span class="sourceLineNo">041</span>/**<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * Writer for protobuf-based WAL.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> */<a name="line.43"></a>
-<span class="sourceLineNo">044</span>@InterfaceAudience.Private<a name="line.44"></a>
-<span class="sourceLineNo">045</span>public class ProtobufLogWriter extends AbstractProtobufLogWriter<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    implements FSHLogProvider.Writer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>  private static final Logger LOG = LoggerFactory.getLogger(ProtobufLogWriter.class);<a name="line.48"></a>
+<span class="sourceLineNo">025</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.25"></a>
+<span class="sourceLineNo">026</span>import org.apache.hadoop.fs.FileSystem;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import org.apache.hadoop.fs.Path;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import org.apache.hadoop.fs.StreamCapabilities;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import org.apache.hadoop.hbase.Cell;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import org.apache.hadoop.hbase.util.AtomicUtils;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import org.apache.hadoop.hbase.util.CommonFSUtils;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import org.apache.hadoop.hbase.util.CommonFSUtils.StreamLacksCapabilityException;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import org.apache.hadoop.hbase.wal.FSHLogProvider;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import org.apache.hadoop.hbase.wal.WAL.Entry;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import org.apache.hadoop.hdfs.DistributedFileSystem;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>import org.slf4j.Logger;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.slf4j.LoggerFactory;<a name="line.38"></a>
+<span class="sourceLineNo">039</span><a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALHeader;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALTrailer;<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>/**<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * Writer for protobuf-based WAL.<a name="line.44"></a>
+<span class="sourceLineNo">045</span> */<a name="line.45"></a>
+<span class="sourceLineNo">046</span>@InterfaceAudience.Private<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class ProtobufLogWriter extends AbstractProtobufLogWriter<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    implements FSHLogProvider.Writer {<a name="line.48"></a>
 <span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span>  protected FSDataOutputStream output;<a name="line.50"></a>
+<span class="sourceLineNo">050</span>  private static final Logger LOG = LoggerFactory.getLogger(ProtobufLogWriter.class);<a name="line.50"></a>
 <span class="sourceLineNo">051</span><a name="line.51"></a>
-<span class="sourceLineNo">052</span>  private final AtomicLong syncedLength = new AtomicLong(0);<a name="line.52"></a>
+<span class="sourceLineNo">052</span>  protected FSDataOutputStream output;<a name="line.52"></a>
 <span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>  @Override<a name="line.54"></a>
-<span class="sourceLineNo">055</span>  public void append(Entry entry) throws IOException {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    entry.getKey().getBuilder(compressor).<a name="line.56"></a>
-<span class="sourceLineNo">057</span>        setFollowingKvCount(entry.getEdit().size()).build().writeDelimitedTo(output);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>    for (Cell cell : entry.getEdit().getCells()) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      // cellEncoder must assume little about the stream, since we write PB and cells in turn.<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      cellEncoder.write(cell);<a name="line.60"></a>
-<span class="sourceLineNo">061</span>    }<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    length.set(output.getPos());<a name="line.62"></a>
-<span class="sourceLineNo">063</span>  }<a name="line.63"></a>
-<span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>  @Override<a name="line.65"></a>
-<span class="sourceLineNo">066</span>  public void close() throws IOException {<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    if (this.output != null) {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>      try {<a name="line.68"></a>
-<span class="sourceLineNo">069</span>        if (!trailerWritten) {<a name="line.69"></a>
-<span class="sourceLineNo">070</span>          writeWALTrailer();<a name="line.70"></a>
-<span class="sourceLineNo">071</span>        }<a name="line.71"></a>
-<span class="sourceLineNo">072</span>        this.output.close();<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      } catch (NullPointerException npe) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>        // Can get a NPE coming up from down in DFSClient$DFSOutputStream#close<a name="line.74"></a>
-<span class="sourceLineNo">075</span>        LOG.warn(npe.toString(), npe);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      }<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      this.output = null;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    }<a name="line.78"></a>
-<span class="sourceLineNo">079</span>  }<a name="line.79"></a>
-<span class="sourceLineNo">080</span><a name="line.80"></a>
-<span class="sourceLineNo">081</span>  @Override<a name="line.81"></a>
-<span class="sourceLineNo">082</span>  public void sync(boolean forceSync) throws IOException {<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    FSDataOutputStream fsdos = this.output;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    if (fsdos == null) {<a name="line.84"></a>
-<span class="sourceLineNo">085</span>      return; // Presume closed<a name="line.85"></a>
-<span class="sourceLineNo">086</span>    }<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    fsdos.flush();<a name="line.87"></a>
-<span class="sourceLineNo">088</span>    if (forceSync) {<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      fsdos.hsync();<a name="line.89"></a>
-<span class="sourceLineNo">090</span>    } else {<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      fsdos.hflush();<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    }<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    AtomicUtils.updateMax(this.syncedLength, fsdos.getPos());<a name="line.93"></a>
-<span class="sourceLineNo">094</span>  }<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>  @Override<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  public long getSyncedLength() {<a name="line.97"></a>
-<span class="sourceLineNo">098</span>    return this.syncedLength.get();<a name="line.98"></a>
-<span class="sourceLineNo">099</span>  }<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  public FSDataOutputStream getStream() {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    return this.output;<a name="line.102"></a>
-<span class="sourceLineNo">103</span>  }<a name="line.103"></a>
-<span class="sourceLineNo">104</span><a name="line.104"></a>
-<span class="sourceLineNo">105</span>  @Override<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected void initOutput(FileSystem fs, Path path, boolean overwritable, int bufferSize,<a name="line.106"></a>
-<span class="sourceLineNo">107</span>      short replication, long blockSize) throws IOException, StreamLacksCapabilityException {<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    this.output = CommonFSUtils.createForWal(fs, path, overwritable, bufferSize, replication,<a name="line.108"></a>
-<span class="sourceLineNo">109</span>        blockSize, false);<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    if (fs.getConf().getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE, true)) {<a name="line.110"></a>
-<span class="sourceLineNo">111</span>      if (!output.hasCapability(StreamCapabilities.HFLUSH)) {<a name="line.111"></a>
-<span class="sourceLineNo">112</span>        throw new StreamLacksCapabilityException(StreamCapabilities.HFLUSH);<a name="line.112"></a>
-<span class="sourceLineNo">113</span>      }<a name="line.113"></a>
-<span class="sourceLineNo">114</span>      if (!output.hasCapability(StreamCapabilities.HSYNC)) {<a name="line.114"></a>
-<span class="sourceLineNo">115</span>        throw new StreamLacksCapabilityException(StreamCapabilities.HSYNC);<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      }<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>  }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>  @Override<a name="line.120"></a>
-<span class="sourceLineNo">121</span>  protected long writeMagicAndWALHeader(byte[] magic, WALHeader header) throws IOException {<a name="line.121"></a>
-<span class="sourceLineNo">122</span>    output.write(magic);<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    header.writeDelimitedTo(output);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    return output.getPos();<a name="line.124"></a>
-<span class="sourceLineNo">125</span>  }<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>  @Override<a name="line.127"></a>
-<span class="sourceLineNo">128</span>  protected OutputStream getOutputStreamForCellEncoder() {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    return this.output;<a name="line.129"></a>
-<span class="sourceLineNo">130</span>  }<a name="line.130"></a>
-<span class="sourceLineNo">131</span><a name="line.131"></a>
-<span class="sourceLineNo">132</span>  @Override<a name="line.132"></a>
-<span class="sourceLineNo">133</span>  protected long writeWALTrailerAndMagic(WALTrailer trailer, byte[] magic) throws IOException {<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    trailer.writeTo(output);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    output.writeInt(trailer.getSerializedSize());<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    output.write(magic);<a name="line.136"></a>
+<span class="sourceLineNo">054</span>  private final AtomicLong syncedLength = new AtomicLong(0);<a name="line.54"></a>
+<span class="sourceLineNo">055</span><a name="line.55"></a>
+<span class="sourceLineNo">056</span>  @Override<a name="line.56"></a>
+<span class="sourceLineNo">057</span>  public void append(Entry entry) throws IOException {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    entry.getKey().getBuilder(compressor).<a name="line.58"></a>
+<span class="sourceLineNo">059</span>        setFollowingKvCount(entry.getEdit().size()).build().writeDelimitedTo(output);<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    for (Cell cell : entry.getEdit().getCells()) {<a name="line.60"></a>
+<span class="sourceLineNo">061</span>      // cellEncoder must assume little about the stream, since we write PB and cells in turn.<a name="line.61"></a>
+<span class="sourceLineNo">062</span>      cellEncoder.write(cell);<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    }<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    length.set(output.getPos());<a name="line.64"></a>
+<span class="sourceLineNo">065</span>  }<a name="line.65"></a>
+<span class="sourceLineNo">066</span><a name="line.66"></a>
+<span class="sourceLineNo">067</span>  @Override<a name="line.67"></a>
+<span class="sourceLineNo">068</span>  public void close() throws IOException {<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    if (this.output != null) {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      try {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>        if (!trailerWritten) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>          writeWALTrailer();<a name="line.72"></a>
+<span class="sourceLineNo">073</span>        }<a name="line.73"></a>
+<span class="sourceLineNo">074</span>        this.output.close();<a name="line.74"></a>
+<span class="sourceLineNo">075</span>      } catch (NullPointerException npe) {<a name="line.75"></a>
+<span class="sourceLineNo">076</span>        // Can get a NPE coming up from down in DFSClient$DFSOutputStream#close<a name="line.76"></a>
+<span class="sourceLineNo">077</span>        LOG.warn(npe.toString(), npe);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      }<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      this.output = null;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    }<a name="line.80"></a>
+<span class="sourceLineNo">081</span>  }<a name="line.81"></a>
+<span class="sourceLineNo">082</span><a name="line.82"></a>
+<span class="sourceLineNo">083</span>  @Override<a name="line.83"></a>
+<span class="sourceLineNo">084</span>  public void sync(boolean forceSync) throws IOException {<a name="line.84"></a>
+<span class="sourceLineNo">085</span>    FSDataOutputStream fsdos = this.output;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    if (fsdos == null) {<a name="line.86"></a>
+<span class="sourceLineNo">087</span>      return; // Presume closed<a name="line.87"></a>
+<span class="sourceLineNo">088</span>    }<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    fsdos.flush();<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    if (forceSync) {<a name="line.90"></a>
+<span class="sourceLineNo">091</span>      fsdos.hsync();<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    } else {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      fsdos.hflush();<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    }<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    AtomicUtils.updateMax(this.syncedLength, fsdos.getPos());<a name="line.95"></a>
+<span class="sourceLineNo">096</span>  }<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @Override<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public long getSyncedLength() {<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    return this.syncedLength.get();<a name="line.100"></a>
+<span class="sourceLineNo">101</span>  }<a name="line.101"></a>
+<span class="sourceLineNo">102</span><a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public FSDataOutputStream getStream() {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>    return this.output;<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  }<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  @Override<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  protected void initOutput(FileSystem fs, Path path, boolean overwritable, int bufferSize,<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      short replication, long blockSize) throws IOException, StreamLacksCapabilityException {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      .createFile(path)<a name="line.111"></a>
+<span class="sourceLineNo">112</span>      .overwrite(overwritable)<a name="line.112"></a>
+<span class="sourceLineNo">113</span>      .bufferSize(bufferSize)<a name="line.113"></a>
+<span class="sourceLineNo">114</span>      .replication(replication)<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      .blockSize(blockSize);<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    if (builder instanceof DistributedFileSystem.HdfsDataOutputStreamBuilder) {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>      this.output = ((DistributedFileSystem.HdfsDataOutputStreamBuilder) builder)<a name="line.117"></a>
+<span class="sourceLineNo">118</span>        .replicate().build();<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    } else {<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      this.output = builder.build();<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    }<a name="line.121"></a>
+<span class="sourceLineNo">122</span><a name="line.122"></a>
+<span class="sourceLineNo">123</span>    if (fs.getConf().getBoolean(CommonFSUtils.UNSAFE_STREAM_CAPABILITY_ENFORCE, true)) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      if (!output.hasCapability(StreamCapabilities.HFLUSH)) {<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        throw new StreamLacksCapabilityException(StreamCapabilities.HFLUSH);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>      if (!output.hasCapability(StreamCapabilities.HSYNC)) {<a name="line.127"></a>
+<span class="sourceLineNo">128</span>        throw new StreamLacksCapabilityException(StreamCapabilities.HSYNC);<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      }<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    }<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  }<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  @Override<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  protected long writeMagicAndWALHeader(byte[] magic, WALHeader header) throws IOException {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    output.write(magic);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    header.writeDelimitedTo(output);<a name="line.136"></a>
 <span class="sourceLineNo">137</span>    return output.getPos();<a name="line.137"></a>
 <span class="sourceLineNo">138</span>  }<a name="line.138"></a>
-<span class="sourceLineNo">139</span>}<a name="line.139"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>  @Override<a name="line.140"></a>
+<span class="sourceLineNo">141</span>  protected OutputStream getOutputStreamForCellEncoder() {<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    return this.output;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>  }<a name="line.143"></a>
+<span class="sourceLineNo">144</span><a name="line.144"></a>
+<span class="sourceLineNo">145</span>  @Override<a name="line.145"></a>
+<span class="sourceLineNo">146</span>  protected long writeWALTrailerAndMagic(WALTrailer trailer, byte[] magic) throws IOException {<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    trailer.writeTo(output);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    output.writeInt(trailer.getSerializedSize());<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    output.write(magic);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    return output.getPos();<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  }<a name="line.151"></a>
+<span class="sourceLineNo">152</span>}<a name="line.152"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html b/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html
deleted file mode 100644
index b763e74..0000000
--- a/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.DfsBuilderUtility.html
+++ /dev/null
@@ -1,924 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html lang="en">
-<head>
-<title>Source code</title>
-<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
-</head>
-<body>
-<div class="sourceContainer">
-<pre><span class="sourceLineNo">001</span>/*<a name="line.1"></a>
-<span class="sourceLineNo">002</span> *<a name="line.2"></a>
-<span class="sourceLineNo">003</span> * Licensed to the Apache Software Foundation (ASF) under one<a name="line.3"></a>
-<span class="sourceLineNo">004</span> * or more contributor license agreements.  See the NOTICE file<a name="line.4"></a>
-<span class="sourceLineNo">005</span> * distributed with this work for additional information<a name="line.5"></a>
-<span class="sourceLineNo">006</span> * regarding copyright ownership.  The ASF licenses this file<a name="line.6"></a>
-<span class="sourceLineNo">007</span> * to you under the Apache License, Version 2.0 (the<a name="line.7"></a>
-<span class="sourceLineNo">008</span> * "License"); you may not use this file except in compliance<a name="line.8"></a>
-<span class="sourceLineNo">009</span> * with the License.  You may obtain a copy of the License at<a name="line.9"></a>
-<span class="sourceLineNo">010</span> *<a name="line.10"></a>
-<span class="sourceLineNo">011</span> *     http://www.apache.org/licenses/LICENSE-2.0<a name="line.11"></a>
-<span class="sourceLineNo">012</span> *<a name="line.12"></a>
-<span class="sourceLineNo">013</span> * Unless required by applicable law or agreed to in writing, software<a name="line.13"></a>
-<span class="sourceLineNo">014</span> * distributed under the License is distributed on an "AS IS" BASIS,<a name="line.14"></a>
-<span class="sourceLineNo">015</span> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<a name="line.15"></a>
-<span class="sourceLineNo">016</span> * See the License for the specific language governing permissions and<a name="line.16"></a>
-<span class="sourceLineNo">017</span> * limitations under the License.<a name="line.17"></a>
-<span class="sourceLineNo">018</span> */<a name="line.18"></a>
-<span class="sourceLineNo">019</span>package org.apache.hadoop.hbase.util;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>import java.io.FileNotFoundException;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import java.io.IOException;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import java.lang.reflect.InvocationTargetException;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import java.lang.reflect.Method;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import java.net.URI;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import java.net.URISyntaxException;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import java.util.List;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import java.util.Locale;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import java.util.Map;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import java.util.concurrent.ConcurrentHashMap;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import org.apache.hadoop.conf.Configuration;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import org.apache.hadoop.fs.FileStatus;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.FileSystem;<a name="line.35"></a>
-<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.LocatedFileStatus;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.Path;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.PathFilter;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.RemoteIterator;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.permission.FsPermission;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.HConstants;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.TableName;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.slf4j.Logger;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.slf4j.LoggerFactory;<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>/**<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * Utility methods for interacting with the underlying file system.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * &lt;p/&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * Note that {@link #setStoragePolicy(FileSystem, Path, String)} is tested in TestFSUtils and<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * pre-commit will run the hbase-server tests if there's code change in this class. See<a name="line.53"></a>
-<span class="sourceLineNo">054</span> * &lt;a href="https://issues.apache.org/jira/browse/HBASE-20838"&gt;HBASE-20838&lt;/a&gt; for more details.<a name="line.54"></a>
-<span class="sourceLineNo">055</span> */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>@InterfaceAudience.Private<a name="line.56"></a>
-<span class="sourceLineNo">057</span>public final class CommonFSUtils {<a name="line.57"></a>
-<span class="sourceLineNo">058</span>  private static final Logger LOG = LoggerFactory.getLogger(CommonFSUtils.class);<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>  /** Parameter name for HBase WAL directory */<a name="line.60"></a>
-<span class="sourceLineNo">061</span>  public static final String HBASE_WAL_DIR = "hbase.wal.dir";<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>  /** Parameter to disable stream capability enforcement checks */<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  public static final String UNSAFE_STREAM_CAPABILITY_ENFORCE =<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    "hbase.unsafe.stream.capability.enforce";<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>  /** Full access permissions (starting point for a umask) */<a name="line.67"></a>
-<span class="sourceLineNo">068</span>  public static final String FULL_RWX_PERMISSIONS = "777";<a name="line.68"></a>
-<span class="sourceLineNo">069</span><a name="line.69"></a>
-<span class="sourceLineNo">070</span>  private CommonFSUtils() {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
-<span class="sourceLineNo">072</span><a name="line.72"></a>
-<span class="sourceLineNo">073</span>  /**<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   * Compare of path component. Does not consider schema; i.e. if schemas<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   * different but &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;,<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   * then the function returns true<a name="line.76"></a>
-<span class="sourceLineNo">077</span>   * @param rootPath value to check for<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   * @param path subject to check<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   * @return True if &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   */<a name="line.80"></a>
-<span class="sourceLineNo">081</span>  public static boolean isStartingWithPath(final Path rootPath, final String path) {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    String uriRootPath = rootPath.toUri().getPath();<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    String tailUriPath = (new Path(path)).toUri().getPath();<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    return tailUriPath.startsWith(uriRootPath);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>  }<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>  /**<a name="line.87"></a>
-<span class="sourceLineNo">088</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.88"></a>
-<span class="sourceLineNo">089</span>   * '/a/b/c' part. Does not consider schema; i.e. if schemas different but path or subpath matches,<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   * the two will equate.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>   * @param pathToSearch Path we will be trying to match against.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   * @param pathTail what to match<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   */<a name="line.94"></a>
-<span class="sourceLineNo">095</span>  public static boolean isMatchingTail(final Path pathToSearch, String pathTail) {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    return isMatchingTail(pathToSearch, new Path(pathTail));<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  /**<a name="line.99"></a>
-<span class="sourceLineNo">100</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.100"></a>
-<span class="sourceLineNo">101</span>   * '/a/b/c' part. If you passed in 'hdfs://a/b/c and b/c, it would return true.  Does not consider<a name="line.101"></a>
-<span class="sourceLineNo">102</span>   * schema; i.e. if schemas different but path or subpath matches, the two will equate.<a name="line.102"></a>
-<span class="sourceLineNo">103</span>   * @param pathToSearch Path we will be trying to match agains against<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   * @param pathTail what to match<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.105"></a>
-<span class="sourceLineNo">106</span>   */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>  public static boolean isMatchingTail(final Path pathToSearch, final Path pathTail) {<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    if (pathToSearch.depth() != pathTail.depth()) {<a name="line.108"></a>
-<span class="sourceLineNo">109</span>      return false;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    }<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    Path tailPath = pathTail;<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    String tailName;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    Path toSearch = pathToSearch;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    String toSearchName;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    boolean result = false;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    do {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      tailName = tailPath.getName();<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      if (tailName == null || tailName.length() &lt;= 0) {<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        result = true;<a name="line.119"></a>
-<span class="sourceLineNo">120</span>        break;<a name="line.120"></a>
-<span class="sourceLineNo">121</span>      }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>      toSearchName = toSearch.getName();<a name="line.122"></a>
-<span class="sourceLineNo">123</span>      if (toSearchName == null || toSearchName.length() &lt;= 0) {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        break;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>      }<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      // Move up a parent on each path for next go around.  Path doesn't let us go off the end.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>      tailPath = tailPath.getParent();<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      toSearch = toSearch.getParent();<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    } while(tailName.equals(toSearchName));<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    return result;<a name="line.130"></a>
-<span class="sourceLineNo">131</span>  }<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>  /**<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   * Delete if exists.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>   * @param fs filesystem object<a name="line.135"></a>
-<span class="sourceLineNo">136</span>   * @param dir directory to delete<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   * @return True if deleted &lt;code&gt;dir&lt;/code&gt;<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   * @throws IOException e<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>  public static boolean deleteDirectory(final FileSystem fs, final Path dir) throws IOException {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    return fs.exists(dir) &amp;&amp; fs.delete(dir, true);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>  }<a name="line.142"></a>
-<span class="sourceLineNo">143</span><a name="line.143"></a>
-<span class="sourceLineNo">144</span>  /**<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   * Return the number of bytes that large input files should be optimally<a name="line.145"></a>
-<span class="sourceLineNo">146</span>   * be split into to minimize i/o time.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   *<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   * @param fs filesystem object<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   * @return the default block size for the path's filesystem<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>  public static long getDefaultBlockSize(final FileSystem fs, final Path path) {<a name="line.151"></a>
-<span class="sourceLineNo">152</span>    return fs.getDefaultBlockSize(path);<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  }<a name="line.153"></a>
-<span class="sourceLineNo">154</span><a name="line.154"></a>
-<span class="sourceLineNo">155</span>  /*<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   * Get the default replication.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   *<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   * @param fs filesystem object<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   * @param f path of file<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * @return default replication for the path's filesystem<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  public static short getDefaultReplication(final FileSystem fs, final Path path) {<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    return fs.getDefaultReplication(path);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  }<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>  /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>   * Returns the default buffer size to use during writes.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>   * The size of the buffer should probably be a multiple of hardware<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   * page size (4096 on Intel x86), and it determines how much data is<a name="line.170"></a>
-<span class="sourceLineNo">171</span>   * buffered during read and write operations.<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   *<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   * @param fs filesystem object<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   * @return default buffer size to use during writes<a name="line.174"></a>
-<span class="sourceLineNo">175</span>   */<a name="line.175"></a>
-<span class="sourceLineNo">176</span>  public static int getDefaultBufferSize(final FileSystem fs) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    return fs.getConf().getInt("io.file.buffer.size", 4096);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>  /**<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   * Create the specified file on the filesystem. By default, this will:<a name="line.181"></a>
-<span class="sourceLineNo">182</span>   * &lt;ol&gt;<a name="line.182"></a>
-<span class="sourceLineNo">183</span>   * &lt;li&gt;apply the umask in the configuration (if it is enabled)&lt;/li&gt;<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   * &lt;li&gt;use the fs configured buffer size (or 4096 if not set)&lt;/li&gt;<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   * &lt;li&gt;use the default replication&lt;/li&gt;<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   * &lt;li&gt;use the default block size&lt;/li&gt;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   * &lt;li&gt;not track progress&lt;/li&gt;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   * &lt;/ol&gt;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   *<a name="line.189"></a>
-<span class="sourceLineNo">190</span>   * @param fs {@link FileSystem} on which to write the file<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   * @param path {@link Path} to the file to write<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   * @param perm intial permissions<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   * @param overwrite Whether or not the created file should be overwritten.<a name="line.193"></a>
-<span class="sourceLineNo">194</span>   * @return output stream to the created file<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   * @throws IOException if the file cannot be created<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   */<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  public static FSDataOutputStream create(FileSystem fs, Path path,<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      FsPermission perm, boolean overwrite) throws IOException {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    if (LOG.isTraceEnabled()) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      LOG.trace("Creating file={} with permission={}, overwrite={}", path, perm, overwrite);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    }<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    return fs.create(path, perm, overwrite, getDefaultBufferSize(fs),<a name="line.202"></a>
-<span class="sourceLineNo">203</span>        getDefaultReplication(fs, path), getDefaultBlockSize(fs, path), null);<a name="line.203"></a>
-<span class="sourceLineNo">204</span>  }<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>  /**<a name="line.206"></a>
-<span class="sourceLineNo">207</span>   * Get the file permissions specified in the configuration, if they are<a name="line.207"></a>
-<span class="sourceLineNo">208</span>   * enabled.<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   *<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   * @param fs filesystem that the file will be created on.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   * @param conf configuration to read for determining if permissions are<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   *          enabled and which to use<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   * @param permssionConfKey property key in the configuration to use when<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   *          finding the permission<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   * @return the permission to use when creating a new file on the fs. If<a name="line.215"></a>
-<span class="sourceLineNo">216</span>   *         special permissions are not specified in the configuration, then<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   *         the default permissions on the the fs will be returned.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>   */<a name="line.218"></a>
-<span class="sourceLineNo">219</span>  public static FsPermission getFilePermissions(final FileSystem fs,<a name="line.219"></a>
-<span class="sourceLineNo">220</span>      final Configuration conf, final String permssionConfKey) {<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    boolean enablePermissions = conf.getBoolean(<a name="line.221"></a>
-<span class="sourceLineNo">222</span>        HConstants.ENABLE_DATA_FILE_UMASK, false);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>    if (enablePermissions) {<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      try {<a name="line.225"></a>
-<span class="sourceLineNo">226</span>        FsPermission perm = new FsPermission(FULL_RWX_PERMISSIONS);<a name="line.226"></a>
-<span class="sourceLineNo">227</span>        // make sure that we have a mask, if not, go default.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        String mask = conf.get(permssionConfKey);<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        if (mask == null) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>          return FsPermission.getFileDefault();<a name="line.230"></a>
-<span class="sourceLineNo">231</span>        }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>        // appy the umask<a name="line.232"></a>
-<span class="sourceLineNo">233</span>        FsPermission umask = new FsPermission(mask);<a name="line.233"></a>
-<span class="sourceLineNo">234</span>        return perm.applyUMask(umask);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      } catch (IllegalArgumentException e) {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>        LOG.warn(<a name="line.236"></a>
-<span class="sourceLineNo">237</span>            "Incorrect umask attempted to be created: "<a name="line.237"></a>
-<span class="sourceLineNo">238</span>                + conf.get(permssionConfKey)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>                + ", using default file permissions.", e);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        return FsPermission.getFileDefault();<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>    }<a name="line.242"></a>
-<span class="sourceLineNo">243</span>    return FsPermission.getFileDefault();<a name="line.243"></a>
-<span class="sourceLineNo">244</span>  }<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>  /**<a name="line.246"></a>
-<span class="sourceLineNo">247</span>   * Verifies root directory path is a valid URI with a scheme<a name="line.247"></a>
-<span class="sourceLineNo">248</span>   *<a name="line.248"></a>
-<span class="sourceLineNo">249</span>   * @param root root directory path<a name="line.249"></a>
-<span class="sourceLineNo">250</span>   * @return Passed &lt;code&gt;root&lt;/code&gt; argument.<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   * @throws IOException if not a valid URI with a scheme<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   */<a name="line.252"></a>
-<span class="sourceLineNo">253</span>  public static Path validateRootPath(Path root) throws IOException {<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    try {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      URI rootURI = new URI(root.toString());<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      String scheme = rootURI.getScheme();<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      if (scheme == null) {<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        throw new IOException("Root directory does not have a scheme");<a name="line.258"></a>
-<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return root;<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    } catch (URISyntaxException e) {<a name="line.261"></a>
-<span class="sourceLineNo">262</span>      throw new IOException("Root directory path is not a valid " +<a name="line.262"></a>
-<span class="sourceLineNo">263</span>        "URI -- check your " + HConstants.HBASE_DIR + " configuration", e);<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
-<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>  /**<a name="line.267"></a>
-<span class="sourceLineNo">268</span>   * Checks for the presence of the WAL log root path (using the provided conf object) in the given<a name="line.268"></a>
-<span class="sourceLineNo">269</span>   * path. If it exists, this method removes it and returns the String representation of remaining<a name="line.269"></a>
-<span class="sourceLineNo">270</span>   * relative path.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>   * @param path must not be null<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   * @param conf must not be null<a name="line.272"></a>
-<span class="sourceLineNo">273</span>   * @return String representation of the remaining relative path<a name="line.273"></a>
-<span class="sourceLineNo">274</span>   * @throws IOException from underlying filesystem<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   */<a name="line.275"></a>
-<span class="sourceLineNo">276</span>  public static String removeWALRootPath(Path path, final Configuration conf) throws IOException {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>    Path root = getWALRootDir(conf);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>    String pathStr = path.toString();<a name="line.278"></a>
-<span class="sourceLineNo">279</span>    // check that the path is absolute... it has the root path in it.<a name="line.279"></a>
-<span class="sourceLineNo">280</span>    if (!pathStr.startsWith(root.toString())) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      return pathStr;<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    }<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // if not, return as it is.<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    return pathStr.substring(root.toString().length() + 1);// remove the "/" too.<a name="line.284"></a>
-<span class="sourceLineNo">285</span>  }<a name="line.285"></a>
-<span class="sourceLineNo">286</span><a name="line.286"></a>
-<span class="sourceLineNo">287</span>  /**<a name="line.287"></a>
-<span class="sourceLineNo">288</span>   * Return the 'path' component of a Path.  In Hadoop, Path is a URI.  This<a name="line.288"></a>
-<span class="sourceLineNo">289</span>   * method returns the 'path' component of a Path's URI: e.g. If a Path is<a name="line.289"></a>
-<span class="sourceLineNo">290</span>   * &lt;code&gt;hdfs://example.org:9000/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;,<a name="line.290"></a>
-<span class="sourceLineNo">291</span>   * this method returns &lt;code&gt;/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;.<a name="line.291"></a>
-<span class="sourceLineNo">292</span>   * This method is useful if you want to print out a Path without qualifying<a name="line.292"></a>
-<span class="sourceLineNo">293</span>   * Filesystem instance.<a name="line.293"></a>
-<span class="sourceLineNo">294</span>   * @param p Filesystem Path whose 'path' component we are to return.<a name="line.294"></a>
-<span class="sourceLineNo">295</span>   * @return Path portion of the Filesystem<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   */<a name="line.296"></a>
-<span class="sourceLineNo">297</span>  public static String getPath(Path p) {<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    return p.toUri().getPath();<a name="line.298"></a>
-<span class="sourceLineNo">299</span>  }<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>  /**<a name="line.301"></a>
-<span class="sourceLineNo">302</span>   * @param c configuration<a name="line.302"></a>
-<span class="sourceLineNo">303</span>   * @return {@link Path} to hbase root directory from<a name="line.303"></a>
-<span class="sourceLineNo">304</span>   *     configuration as a qualified Path.<a name="line.304"></a>
-<span class="sourceLineNo">305</span>   * @throws IOException e<a name="line.305"></a>
-<span class="sourceLineNo">306</span>   */<a name="line.306"></a>
-<span class="sourceLineNo">307</span>  public static Path getRootDir(final Configuration c) throws IOException {<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    Path p = new Path(c.get(HConstants.HBASE_DIR));<a name="line.308"></a>
-<span class="sourceLineNo">309</span>    FileSystem fs = p.getFileSystem(c);<a name="line.309"></a>
-<span class="sourceLineNo">310</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.310"></a>
-<span class="sourceLineNo">311</span>  }<a name="line.311"></a>
-<span class="sourceLineNo">312</span><a name="line.312"></a>
-<span class="sourceLineNo">313</span>  public static void setRootDir(final Configuration c, final Path root) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>    c.set(HConstants.HBASE_DIR, root.toString());<a name="line.314"></a>
-<span class="sourceLineNo">315</span>  }<a name="line.315"></a>
-<span class="sourceLineNo">316</span><a name="line.316"></a>
-<span class="sourceLineNo">317</span>  public static void setFsDefault(final Configuration c, final Path root) {<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    c.set("fs.defaultFS", root.toString());    // for hadoop 0.21+<a name="line.318"></a>
-<span class="sourceLineNo">319</span>  }<a name="line.319"></a>
-<span class="sourceLineNo">320</span><a name="line.320"></a>
-<span class="sourceLineNo">321</span>  public static void setFsDefault(final Configuration c, final String uri) {<a name="line.321"></a>
-<span class="sourceLineNo">322</span>    c.set("fs.defaultFS", uri); // for hadoop 0.21+<a name="line.322"></a>
-<span class="sourceLineNo">323</span>  }<a name="line.323"></a>
-<span class="sourceLineNo">324</span><a name="line.324"></a>
-<span class="sourceLineNo">325</span>  public static FileSystem getRootDirFileSystem(final Configuration c) throws IOException {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    Path p = getRootDir(c);<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return p.getFileSystem(c);<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  /**<a name="line.330"></a>
-<span class="sourceLineNo">331</span>   * @param c configuration<a name="line.331"></a>
-<span class="sourceLineNo">332</span>   * @return {@link Path} to hbase log root directory: e.g. {@value HBASE_WAL_DIR} from<a name="line.332"></a>
-<span class="sourceLineNo">333</span>   *     configuration as a qualified Path. Defaults to HBase root dir.<a name="line.333"></a>
-<span class="sourceLineNo">334</span>   * @throws IOException e<a name="line.334"></a>
-<span class="sourceLineNo">335</span>   */<a name="line.335"></a>
-<span class="sourceLineNo">336</span>  public static Path getWALRootDir(final Configuration c) throws IOException {<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    Path p = new Path(c.get(HBASE_WAL_DIR, c.get(HConstants.HBASE_DIR)));<a name="line.337"></a>
-<span class="sourceLineNo">338</span>    if (!isValidWALRootDir(p, c)) {<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      return getRootDir(c);<a name="line.339"></a>
-<span class="sourceLineNo">340</span>    }<a name="line.340"></a>
-<span class="sourceLineNo">341</span>    FileSystem fs = p.getFileSystem(c);<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.342"></a>
-<span class="sourceLineNo">343</span>  }<a name="line.343"></a>
-<span class="sourceLineNo">344</span><a name="line.344"></a>
-<span class="sourceLineNo">345</span>  /**<a name="line.345"></a>
-<span class="sourceLineNo">346</span>   * Returns the URI in the string format<a name="line.346"></a>
-<span class="sourceLineNo">347</span>   * @param c configuration<a name="line.347"></a>
-<span class="sourceLineNo">348</span>   * @param p path<a name="line.348"></a>
-<span class="sourceLineNo">349</span>   * @return - the URI's to string format<a name="line.349"></a>
-<span class="sourceLineNo">350</span>   * @throws IOException<a name="line.350"></a>
-<span class="sourceLineNo">351</span>   */<a name="line.351"></a>
-<span class="sourceLineNo">352</span>  public static String getDirUri(final Configuration c, Path p) throws IOException {<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    if (p.toUri().getScheme() != null) {<a name="line.353"></a>
-<span class="sourceLineNo">354</span>      return p.toUri().toString();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    }<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    return null;<a name="line.356"></a>
-<span class="sourceLineNo">357</span>  }<a name="line.357"></a>
-<span class="sourceLineNo">358</span><a name="line.358"></a>
-<span class="sourceLineNo">359</span>  public static void setWALRootDir(final Configuration c, final Path root) {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    c.set(HBASE_WAL_DIR, root.toString());<a name="line.360"></a>
-<span class="sourceLineNo">361</span>  }<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>  public static FileSystem getWALFileSystem(final Configuration c) throws IOException {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>    Path p = getWALRootDir(c);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    FileSystem fs = p.getFileSystem(c);<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    // hadoop-core does fs caching, so need to propagate this if set<a name="line.366"></a>
-<span class="sourceLineNo">367</span>    String enforceStreamCapability = c.get(UNSAFE_STREAM_CAPABILITY_ENFORCE);<a name="line.367"></a>
-<span class="sourceLineNo">368</span>    if (enforceStreamCapability != null) {<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      fs.getConf().set(UNSAFE_STREAM_CAPABILITY_ENFORCE, enforceStreamCapability);<a name="line.369"></a>
-<span class="sourceLineNo">370</span>    }<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    return fs;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  }<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  private static boolean isValidWALRootDir(Path walDir, final Configuration c) throws IOException {<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    Path rootDir = getRootDir(c);<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    FileSystem fs = walDir.getFileSystem(c);<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    Path qualifiedWalDir = walDir.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.377"></a>
-<span class="sourceLineNo">378</span>    if (!qualifiedWalDir.equals(rootDir)) {<a name="line.378"></a>
-<span class="sourceLineNo">379</span>      if (qualifiedWalDir.toString().startsWith(rootDir.toString() + "/")) {<a name="line.379"></a>
-<span class="sourceLineNo">380</span>        throw new IllegalStateException("Illegal WAL directory specified. " +<a name="line.380"></a>
-<span class="sourceLineNo">381</span>          "WAL directories are not permitted to be under root directory: rootDir=" +<a name="line.381"></a>
-<span class="sourceLineNo">382</span>          rootDir.toString() + ", qualifiedWALDir=" + qualifiedWalDir);<a name="line.382"></a>
-<span class="sourceLineNo">383</span>      }<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    }<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    return true;<a name="line.385"></a>
-<span class="sourceLineNo">386</span>  }<a name="line.386"></a>
-<span class="sourceLineNo">387</span><a name="line.387"></a>
-<span class="sourceLineNo">388</span>  /**<a name="line.388"></a>
-<span class="sourceLineNo">389</span>   * Returns the WAL region directory based on the given table name and region name<a name="line.389"></a>
-<span class="sourceLineNo">390</span>   * @param conf configuration to determine WALRootDir<a name="line.390"></a>
-<span class="sourceLineNo">391</span>   * @param tableName Table that the region is under<a name="line.391"></a>
-<span class="sourceLineNo">392</span>   * @param encodedRegionName Region name used for creating the final region directory<a name="line.392"></a>
-<span class="sourceLineNo">393</span>   * @return the region directory used to store WALs under the WALRootDir<a name="line.393"></a>
-<span class="sourceLineNo">394</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.394"></a>
-<span class="sourceLineNo">395</span>   */<a name="line.395"></a>
-<span class="sourceLineNo">396</span>  public static Path getWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.396"></a>
-<span class="sourceLineNo">397</span>      final String encodedRegionName) throws IOException {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    return new Path(getWALTableDir(conf, tableName), encodedRegionName);<a name="line.398"></a>
-<span class="sourceLineNo">399</span>  }<a name="line.399"></a>
-<span class="sourceLineNo">400</span><a name="line.400"></a>
-<span class="sourceLineNo">401</span>  /**<a name="line.401"></a>
-<span class="sourceLineNo">402</span>   * Returns the Table directory under the WALRootDir for the specified table name<a name="line.402"></a>
-<span class="sourceLineNo">403</span>   * @param conf configuration used to get the WALRootDir<a name="line.403"></a>
-<span class="sourceLineNo">404</span>   * @param tableName Table to get the directory for<a name="line.404"></a>
-<span class="sourceLineNo">405</span>   * @return a path to the WAL table directory for the specified table<a name="line.405"></a>
-<span class="sourceLineNo">406</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.406"></a>
-<span class="sourceLineNo">407</span>   */<a name="line.407"></a>
-<span class="sourceLineNo">408</span>  public static Path getWALTableDir(final Configuration conf, final TableName tableName)<a name="line.408"></a>
-<span class="sourceLineNo">409</span>      throws IOException {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Path baseDir = new Path(getWALRootDir(conf), HConstants.BASE_NAMESPACE_DIR);<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    return new Path(new Path(baseDir, tableName.getNamespaceAsString()),<a name="line.411"></a>
-<span class="sourceLineNo">412</span>      tableName.getQualifierAsString());<a name="line.412"></a>
-<span class="sourceLineNo">413</span>  }<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>  /**<a name="line.415"></a>
-<span class="sourceLineNo">416</span>   * For backward compatibility with HBASE-20734, where we store recovered edits in a wrong<a name="line.416"></a>
-<span class="sourceLineNo">417</span>   * directory without BASE_NAMESPACE_DIR. See HBASE-22617 for more details.<a name="line.417"></a>
-<span class="sourceLineNo">418</span>   * @deprecated For compatibility, will be removed in 4.0.0.<a name="line.418"></a>
-<span class="sourceLineNo">419</span>   */<a name="line.419"></a>
-<span class="sourceLineNo">420</span>  @Deprecated<a name="line.420"></a>
-<span class="sourceLineNo">421</span>  public static Path getWrongWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.421"></a>
-<span class="sourceLineNo">422</span>      final String encodedRegionName) throws IOException {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>    Path wrongTableDir = new Path(new Path(getWALRootDir(conf), tableName.getNamespaceAsString()),<a name="line.423"></a>
-<span class="sourceLineNo">424</span>      tableName.getQualifierAsString());<a name="line.424"></a>
-<span class="sourceLineNo">425</span>    return new Path(wrongTableDir, encodedRegionName);<a name="line.425"></a>
-<span class="sourceLineNo">426</span>  }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>  /**<a name="line.428"></a>
-<span class="sourceLineNo">429</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the table directory under<a name="line.429"></a>
-<span class="sourceLineNo">430</span>   * path rootdir<a name="line.430"></a>
-<span class="sourceLineNo">431</span>   *<a name="line.431"></a>
-<span class="sourceLineNo">432</span>   * @param rootdir qualified path of HBase root directory<a name="line.432"></a>
-<span class="sourceLineNo">433</span>   * @param tableName name of table<a name="line.433"></a>
-<span class="sourceLineNo">434</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.434"></a>
-<span class="sourceLineNo">435</span>   */<a name="line.435"></a>
-<span class="sourceLineNo">436</span>  public static Path getTableDir(Path rootdir, final TableName tableName) {<a name="line.436"></a>
-<span class="sourceLineNo">437</span>    return new Path(getNamespaceDir(rootdir, tableName.getNamespaceAsString()),<a name="line.437"></a>
-<span class="sourceLineNo">438</span>        tableName.getQualifierAsString());<a name="line.438"></a>
-<span class="sourceLineNo">439</span>  }<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>  /**<a name="line.441"></a>
-<span class="sourceLineNo">442</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the region directory under<a name="line.442"></a>
-<span class="sourceLineNo">443</span>   * path rootdir<a name="line.443"></a>
-<span class="sourceLineNo">444</span>   *<a name="line.444"></a>
-<span class="sourceLineNo">445</span>   * @param rootdir qualified path of HBase root directory<a name="line.445"></a>
-<span class="sourceLineNo">446</span>   * @param tableName name of table<a name="line.446"></a>
-<span class="sourceLineNo">447</span>   * @param regionName The encoded region name<a name="line.447"></a>
-<span class="sourceLineNo">448</span>   * @return {@link org.apache.hadoop.fs.Path} for region<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   */<a name="line.449"></a>
-<span class="sourceLineNo">450</span>  public static Path getRegionDir(Path rootdir, TableName tableName, String regionName) {<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    return new Path(getTableDir(rootdir, tableName), regionName);<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  }<a name="line.452"></a>
-<span class="sourceLineNo">453</span><a name="line.453"></a>
-<span class="sourceLineNo">454</span>  /**<a name="line.454"></a>
-<span class="sourceLineNo">455</span>   * Returns the {@link org.apache.hadoop.hbase.TableName} object representing<a name="line.455"></a>
-<span class="sourceLineNo">456</span>   * the table directory under<a name="line.456"></a>
-<span class="sourceLineNo">457</span>   * path rootdir<a name="line.457"></a>
-<span class="sourceLineNo">458</span>   *<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   * @param tablePath path of table<a name="line.459"></a>
-<span class="sourceLineNo">460</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.460"></a>
-<span class="sourceLineNo">461</span>   */<a name="line.461"></a>
-<span class="sourceLineNo">462</span>  public static TableName getTableName(Path tablePath) {<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    return TableName.valueOf(tablePath.getParent().getName(), tablePath.getName());<a name="line.463"></a>
-<span class="sourceLineNo">464</span>  }<a name="line.464"></a>
-<span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>  /**<a name="line.466"></a>
-<span class="sourceLineNo">467</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing<a name="line.467"></a>
-<span class="sourceLineNo">468</span>   * the namespace directory under path rootdir<a name="line.468"></a>
-<span class="sourceLineNo">469</span>   *<a name="line.469"></a>
-<span class="sourceLineNo">470</span>   * @param rootdir qualified path of HBase root directory<a name="line.470"></a>
-<span class="sourceLineNo">471</span>   * @param namespace namespace name<a name="line.471"></a>
-<span class="sourceLineNo">472</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.472"></a>
-<span class="sourceLineNo">473</span>   */<a name="line.473"></a>
-<span class="sourceLineNo">474</span>  public static Path getNamespaceDir(Path rootdir, final String namespace) {<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    return new Path(rootdir, new Path(HConstants.BASE_NAMESPACE_DIR,<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        new Path(namespace)));<a name="line.476"></a>
-<span class="sourceLineNo">477</span>  }<a name="line.477"></a>
-<span class="sourceLineNo">478</span><a name="line.478"></a>
-<span class="sourceLineNo">479</span>  // this mapping means that under a federated FileSystem implementation, we'll<a name="line.479"></a>
-<span class="sourceLineNo">480</span>  // only log the first failure from any of the underlying FileSystems at WARN and all others<a name="line.480"></a>
-<span class="sourceLineNo">481</span>  // will be at DEBUG.<a name="line.481"></a>
-<span class="sourceLineNo">482</span>  private static final Map&lt;FileSystem, Boolean&gt; warningMap = new ConcurrentHashMap&lt;&gt;();<a name="line.482"></a>
-<span class="sourceLineNo">483</span><a name="line.483"></a>
-<span class="sourceLineNo">484</span>  /**<a name="line.484"></a>
-<span class="sourceLineNo">485</span>   * Sets storage policy for given path.<a name="line.485"></a>
-<span class="sourceLineNo">486</span>   * If the passed path is a directory, we'll set the storage policy for all files<a name="line.486"></a>
-<span class="sourceLineNo">487</span>   * created in the future in said directory. Note that this change in storage<a name="line.487"></a>
-<span class="sourceLineNo">488</span>   * policy takes place at the FileSystem level; it will persist beyond this RS's lifecycle.<a name="line.488"></a>
-<span class="sourceLineNo">489</span>   * If we're running on a version of FileSystem that doesn't support the given storage policy<a name="line.489"></a>
-<span class="sourceLineNo">490</span>   * (or storage policies at all), then we'll issue a log message and continue.<a name="line.490"></a>
-<span class="sourceLineNo">491</span>   *<a name="line.491"></a>
-<span class="sourceLineNo">492</span>   * See http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html<a name="line.492"></a>
-<span class="sourceLineNo">493</span>   *<a name="line.493"></a>
-<span class="sourceLineNo">494</span>   * @param fs We only do anything it implements a setStoragePolicy method<a name="line.494"></a>
-<span class="sourceLineNo">495</span>   * @param path the Path whose storage policy is to be set<a name="line.495"></a>
-<span class="sourceLineNo">496</span>   * @param storagePolicy Policy to set on &lt;code&gt;path&lt;/code&gt;; see hadoop 2.6+<a name="line.496"></a>
-<span class="sourceLineNo">497</span>   *   org.apache.hadoop.hdfs.protocol.HdfsConstants for possible list e.g<a name="line.497"></a>
-<span class="sourceLineNo">498</span>   *   'COLD', 'WARM', 'HOT', 'ONE_SSD', 'ALL_SSD', 'LAZY_PERSIST'.<a name="line.498"></a>
-<span class="sourceLineNo">499</span>   */<a name="line.499"></a>
-<span class="sourceLineNo">500</span>  public static void setStoragePolicy(final FileSystem fs, final Path path,<a name="line.500"></a>
-<span class="sourceLineNo">501</span>      final String storagePolicy) {<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    try {<a name="line.502"></a>
-<span class="sourceLineNo">503</span>      setStoragePolicy(fs, path, storagePolicy, false);<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    } catch (IOException e) {<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      // should never arrive here<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      LOG.warn("We have chosen not to throw exception but some unexpectedly thrown out", e);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>    }<a name="line.507"></a>
-<span class="sourceLineNo">508</span>  }<a name="line.508"></a>
-<span class="sourceLineNo">509</span><a name="line.509"></a>
-<span class="sourceLineNo">510</span>  static void setStoragePolicy(final FileSystem fs, final Path path, final String storagePolicy,<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      boolean throwException) throws IOException {<a name="line.511"></a>
-<span class="sourceLineNo">512</span>    if (storagePolicy == null) {<a name="line.512"></a>
-<span class="sourceLineNo">513</span>      if (LOG.isTraceEnabled()) {<a name="line.513"></a>
-<span class="sourceLineNo">514</span>        LOG.trace("We were passed a null storagePolicy, exiting early.");<a name="line.514"></a>
-<span class="sourceLineNo">515</span>      }<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      return;<a name="line.516"></a>
-<span class="sourceLineNo">517</span>    }<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    String trimmedStoragePolicy = storagePolicy.trim();<a name="line.518"></a>
-<span class="sourceLineNo">519</span>    if (trimmedStoragePolicy.isEmpty()) {<a name="line.519"></a>
-<span class="sourceLineNo">520</span>      LOG.trace("We were passed an empty storagePolicy, exiting early.");<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      return;<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } else {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      trimmedStoragePolicy = trimmedStoragePolicy.toUpperCase(Locale.ROOT);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>    if (trimmedStoragePolicy.equals(HConstants.DEFER_TO_HDFS_STORAGE_POLICY)) {<a name="line.525"></a>
-<span class="sourceLineNo">526</span>      LOG.trace("We were passed the defer-to-hdfs policy {}, exiting early.", trimmedStoragePolicy);<a name="line.526"></a>
-<span class="sourceLineNo">527</span>      return;<a name="line.527"></a>
-<span class="sourceLineNo">528</span>    }<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    try {<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      invokeSetStoragePolicy(fs, path, trimmedStoragePolicy);<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    } catch (IOException e) {<a name="line.531"></a>
-<span class="sourceLineNo">532</span>      LOG.trace("Failed to invoke set storage policy API on FS", e);<a name="line.532"></a>
-<span class="sourceLineNo">533</span>      if (throwException) {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>        throw e;<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      }<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    }<a name="line.536"></a>
-<span class="sourceLineNo">537</span>  }<a name="line.537"></a>
-<span class="sourceLineNo">538</span><a name="line.538"></a>
-<span class="sourceLineNo">539</span>  /*<a name="line.539"></a>
-<span class="sourceLineNo">540</span>   * All args have been checked and are good. Run the setStoragePolicy invocation.<a name="line.540"></a>
-<span class="sourceLineNo">541</span>   */<a name="line.541"></a>
-<span class="sourceLineNo">542</span>  private static void invokeSetStoragePolicy(final FileSystem fs, final Path path,<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      final String storagePolicy) throws IOException {<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    Exception toThrow = null;<a name="line.544"></a>
-<span class="sourceLineNo">545</span><a name="line.545"></a>
-<span class="sourceLineNo">546</span>    try {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      fs.setStoragePolicy(path, storagePolicy);<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      LOG.debug("Set storagePolicy={} for path={}", storagePolicy, path);<a name="line.548"></a>
-<span class="sourceLineNo">549</span>    } catch (Exception e) {<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      toThrow = e;<a name="line.550"></a>
-<span class="sourceLineNo">551</span>      // This swallows FNFE, should we be throwing it? seems more likely to indicate dev<a name="line.551"></a>
-<span class="sourceLineNo">552</span>      // misuse than a runtime problem with HDFS.<a name="line.552"></a>
-<span class="sourceLineNo">553</span>      if (!warningMap.containsKey(fs)) {<a name="line.553"></a>
-<span class="sourceLineNo">554</span>        warningMap.put(fs, true);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>        LOG.warn("Unable to set storagePolicy=" + storagePolicy + " for path=" + path + ". " +<a name="line.555"></a>
-<span class="sourceLineNo">556</span>            "DEBUG log level might have more details.", e);<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      } else if (LOG.isDebugEnabled()) {<a name="line.557"></a>
-<span class="sourceLineNo">558</span>        LOG.debug("Unable to set storagePolicy=" + storagePolicy + " for path=" + path, e);<a name="line.558"></a>
-<span class="sourceLineNo">559</span>      }<a name="line.559"></a>
-<span class="sourceLineNo">560</span><a name="line.560"></a>
-<span class="sourceLineNo">561</span>      // Hadoop 2.8+, 3.0-a1+ added FileSystem.setStoragePolicy with a default implementation<a name="line.561"></a>
-<span class="sourceLineNo">562</span>      // that throws UnsupportedOperationException<a name="line.562"></a>
-<span class="sourceLineNo">563</span>      if (e instanceof UnsupportedOperationException) {<a name="line.563"></a>
-<span class="sourceLineNo">564</span>        if (LOG.isDebugEnabled()) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>          LOG.debug("The underlying FileSystem implementation doesn't support " +<a name="line.565"></a>
-<span class="sourceLineNo">566</span>              "setStoragePolicy. This is probably intentional on their part, since HDFS-9345 " +<a name="line.566"></a>
-<span class="sourceLineNo">567</span>              "appears to be present in your version of Hadoop. For more information check " +<a name="line.567"></a>
-<span class="sourceLineNo">568</span>              "the Hadoop documentation on 'ArchivalStorage', the Hadoop FileSystem " +<a name="line.568"></a>
-<span class="sourceLineNo">569</span>              "specification docs from HADOOP-11981, and/or related documentation from the " +<a name="line.569"></a>
-<span class="sourceLineNo">570</span>              "provider of the underlying FileSystem (its name should appear in the " +<a name="line.570"></a>
-<span class="sourceLineNo">571</span>              "stacktrace that accompanies this message). Note in particular that Hadoop's " +<a name="line.571"></a>
-<span class="sourceLineNo">572</span>              "local filesystem implementation doesn't support storage policies.", e);<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        }<a name="line.573"></a>
-<span class="sourceLineNo">574</span>      }<a name="line.574"></a>
-<span class="sourceLineNo">575</span>    }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>    if (toThrow != null) {<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      throw new IOException(toThrow);<a name="line.578"></a>
-<span class="sourceLineNo">579</span>    }<a name="line.579"></a>
-<span class="sourceLineNo">580</span>  }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>  /**<a name="line.582"></a>
-<span class="sourceLineNo">583</span>   * @param conf must not be null<a name="line.583"></a>
-<span class="sourceLineNo">584</span>   * @return True if this filesystem whose scheme is 'hdfs'.<a name="line.584"></a>
-<span class="sourceLineNo">585</span>   * @throws IOException from underlying FileSystem<a name="line.585"></a>
-<span class="sourceLineNo">586</span>   */<a name="line.586"></a>
-<span class="sourceLineNo">587</span>  public static boolean isHDFS(final Configuration conf) throws IOException {<a name="line.587"></a>
-<span class="sourceLineNo">588</span>    FileSystem fs = FileSystem.get(conf);<a name="line.588"></a>
-<span class="sourceLineNo">589</span>    String scheme = fs.getUri().getScheme();<a name="line.589"></a>
-<span class="sourceLineNo">590</span>    return scheme.equalsIgnoreCase("hdfs");<a name="line.590"></a>
-<span class="sourceLineNo">591</span>  }<a name="line.591"></a>
-<span class="sourceLineNo">592</span><a name="line.592"></a>
-<span class="sourceLineNo">593</span>  /**<a name="line.593"></a>
-<span class="sourceLineNo">594</span>   * Checks if the given path is the one with 'recovered.edits' dir.<a name="line.594"></a>
-<span class="sourceLineNo">595</span>   * @param path must not be null<a name="line.595"></a>
-<span class="sourceLineNo">596</span>   * @return True if we recovered edits<a name="line.596"></a>
-<span class="sourceLineNo">597</span>   */<a name="line.597"></a>
-<span class="sourceLineNo">598</span>  public static boolean isRecoveredEdits(Path path) {<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    return path.toString().contains(HConstants.RECOVERED_EDITS_DIR);<a name="line.599"></a>
-<span class="sourceLineNo">600</span>  }<a name="line.600"></a>
-<span class="sourceLineNo">601</span><a name="line.601"></a>
-<span class="sourceLineNo">602</span>  /**<a name="line.602"></a>
-<span class="sourceLineNo">603</span>   * @param conf must not be null<a name="line.603"></a>
-<span class="sourceLineNo">604</span>   * @return Returns the filesystem of the hbase rootdir.<a name="line.604"></a>
-<span class="sourceLineNo">605</span>   * @throws IOException from underlying FileSystem<a name="line.605"></a>
-<span class="sourceLineNo">606</span>   */<a name="line.606"></a>
-<span class="sourceLineNo">607</span>  public static FileSystem getCurrentFileSystem(Configuration conf) throws IOException {<a name="line.607"></a>
-<span class="sourceLineNo">608</span>    return getRootDir(conf).getFileSystem(conf);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>  }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>  /**<a name="line.611"></a>
-<span class="sourceLineNo">612</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.612"></a>
-<span class="sourceLineNo">613</span>   * This accommodates differences between hadoop versions, where hadoop 1<a name="line.613"></a>
-<span class="sourceLineNo">614</span>   * does not throw a FileNotFoundException, and return an empty FileStatus[]<a name="line.614"></a>
-<span class="sourceLineNo">615</span>   * while Hadoop 2 will throw FileNotFoundException.<a name="line.615"></a>
-<span class="sourceLineNo">616</span>   *<a name="line.616"></a>
-<span class="sourceLineNo">617</span>   * Where possible, prefer FSUtils#listStatusWithStatusFilter(FileSystem,<a name="line.617"></a>
-<span class="sourceLineNo">618</span>   * Path, FileStatusFilter) instead.<a name="line.618"></a>
-<span class="sourceLineNo">619</span>   *<a name="line.619"></a>
-<span class="sourceLineNo">620</span>   * @param fs file system<a name="line.620"></a>
-<span class="sourceLineNo">621</span>   * @param dir directory<a name="line.621"></a>
-<span class="sourceLineNo">622</span>   * @param filter path filter<a name="line.622"></a>
-<span class="sourceLineNo">623</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.623"></a>
-<span class="sourceLineNo">624</span>   */<a name="line.624"></a>
-<span class="sourceLineNo">625</span>  public static FileStatus[] listStatus(final FileSystem fs,<a name="line.625"></a>
-<span class="sourceLineNo">626</span>      final Path dir, final PathFilter filter) throws IOException {<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    FileStatus [] status = null;<a name="line.627"></a>
-<span class="sourceLineNo">628</span>    try {<a name="line.628"></a>
-<span class="sourceLineNo">629</span>      status = filter == null ? fs.listStatus(dir) : fs.listStatus(dir, filter);<a name="line.629"></a>
-<span class="sourceLineNo">630</span>    } catch (FileNotFoundException fnfe) {<a name="line.630"></a>
-<span class="sourceLineNo">631</span>      // if directory doesn't exist, return null<a name="line.631"></a>
-<span class="sourceLineNo">632</span>      if (LOG.isTraceEnabled()) {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>        LOG.trace("{} doesn't exist", dir);<a name="line.633"></a>
-<span class="sourceLineNo">634</span>      }<a name="line.634"></a>
-<span class="sourceLineNo">635</span>    }<a name="line.635"></a>
-<span class="sourceLineNo">636</span>    if (status == null || status.length &lt; 1) {<a name="line.636"></a>
-<span class="sourceLineNo">637</span>      return null;<a name="line.637"></a>
-<span class="sourceLineNo">638</span>    }<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    return status;<a name="line.639"></a>
-<span class="sourceLineNo">640</span>  }<a name="line.640"></a>
-<span class="sourceLineNo">641</span><a name="line.641"></a>
-<span class="sourceLineNo">642</span>  /**<a name="line.642"></a>
-<span class="sourceLineNo">643</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.643"></a>
-<span class="sourceLineNo">644</span>   * This would accommodates differences between hadoop versions<a name="line.644"></a>
-<span class="sourceLineNo">645</span>   *<a name="line.645"></a>
-<span class="sourceLineNo">646</span>   * @param fs file system<a name="line.646"></a>
-<span class="sourceLineNo">647</span>   * @param dir directory<a name="line.647"></a>
-<span class="sourceLineNo">648</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.648"></a>
-<span class="sourceLineNo">649</span>   */<a name="line.649"></a>
-<span class="sourceLineNo">650</span>  public static FileStatus[] listStatus(final FileSystem fs, final Path dir) throws IOException {<a name="line.650"></a>
-<span class="sourceLineNo">651</span>    return listStatus(fs, dir, null);<a name="line.651"></a>
-<span class="sourceLineNo">652</span>  }<a name="line.652"></a>
-<span class="sourceLineNo">653</span><a name="line.653"></a>
-<span class="sourceLineNo">654</span>  /**<a name="line.654"></a>
-<span class="sourceLineNo">655</span>   * Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call<a name="line.655"></a>
-<span class="sourceLineNo">656</span>   *<a name="line.656"></a>
-<span class="sourceLineNo">657</span>   * @param fs file system<a name="line.657"></a>
-<span class="sourceLineNo">658</span>   * @param dir directory<a name="line.658"></a>
-<span class="sourceLineNo">659</span>   * @return LocatedFileStatus list<a name="line.659"></a>
-<span class="sourceLineNo">660</span>   */<a name="line.660"></a>
-<span class="sourceLineNo">661</span>  public static List&lt;LocatedFileStatus&gt; listLocatedStatus(final FileSystem fs,<a name="line.661"></a>
-<span class="sourceLineNo">662</span>      final Path dir) throws IOException {<a name="line.662"></a>
-<span class="sourceLineNo">663</span>    List&lt;LocatedFileStatus&gt; status = null;<a name="line.663"></a>
-<span class="sourceLineNo">664</span>    try {<a name="line.664"></a>
-<span class="sourceLineNo">665</span>      RemoteIterator&lt;LocatedFileStatus&gt; locatedFileStatusRemoteIterator = fs<a name="line.665"></a>
-<span class="sourceLineNo">666</span>          .listFiles(dir, false);<a name="line.666"></a>
-<span class="sourceLineNo">667</span>      while (locatedFileStatusRemoteIterator.hasNext()) {<a name="line.667"></a>
-<span class="sourceLineNo">668</span>        if (status == null) {<a name="line.668"></a>
-<span class="sourceLineNo">669</span>          status = Lists.newArrayList();<a name="line.669"></a>
-<span class="sourceLineNo">670</span>        }<a name="line.670"></a>
-<span class="sourceLineNo">671</span>        status.add(locatedFileStatusRemoteIterator.next());<a name="line.671"></a>
-<span class="sourceLineNo">672</span>      }<a name="line.672"></a>
-<span class="sourceLineNo">673</span>    } catch (FileNotFoundException fnfe) {<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      // if directory doesn't exist, return null<a name="line.674"></a>
-<span class="sourceLineNo">675</span>      if (LOG.isTraceEnabled()) {<a name="line.675"></a>
-<span class="sourceLineNo">676</span>        LOG.trace("{} doesn't exist", dir);<a name="line.676"></a>
-<span class="sourceLineNo">677</span>      }<a name="line.677"></a>
-<span class="sourceLineNo">678</span>    }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>    return status;<a name="line.679"></a>
-<span class="sourceLineNo">680</span>  }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>  /**<a name="line.682"></a>
-<span class="sourceLineNo">683</span>   * Calls fs.delete() and returns the value returned by the fs.delete()<a name="line.683"></a>
-<span class="sourceLineNo">684</span>   *<a name="line.684"></a>
-<span class="sourceLineNo">685</span>   * @param fs must not be null<a name="line.685"></a>
-<span class="sourceLineNo">686</span>   * @param path must not be null<a name="line.686"></a>
-<span class="sourceLineNo">687</span>   * @param recursive delete tree rooted at path<a name="line.687"></a>
-<span class="sourceLineNo">688</span>   * @return the value returned by the fs.delete()<a name="line.688"></a>
-<span class="sourceLineNo">689</span>   * @throws IOException from underlying FileSystem<a name="line.689"></a>
-<span class="sourceLineNo">690</span>   */<a name="line.690"></a>
-<span class="sourceLineNo">691</span>  public static boolean delete(final FileSystem fs, final Path path, final boolean recursive)<a name="line.691"></a>
-<span class="sourceLineNo">692</span>      throws IOException {<a name="line.692"></a>
-<span class="sourceLineNo">693</span>    return fs.delete(path, recursive);<a name="line.693"></a>
-<span class="sourceLineNo">694</span>  }<a name="line.694"></a>
-<span class="sourceLineNo">695</span><a name="line.695"></a>
-<span class="sourceLineNo">696</span>  /**<a name="line.696"></a>
-<span class="sourceLineNo">697</span>   * Calls fs.exists(). Checks if the specified path exists<a name="line.697"></a>
-<span class="sourceLineNo">698</span>   *<a name="line.698"></a>
-<span class="sourceLineNo">699</span>   * @param fs must not be null<a name="line.699"></a>
-<span class="sourceLineNo">700</span>   * @param path must not be null<a name="line.700"></a>
-<span class="sourceLineNo">701</span>   * @return the value returned by fs.exists()<a name="line.701"></a>
-<span class="sourceLineNo">702</span>   * @throws IOException from underlying FileSystem<a name="line.702"></a>
-<span class="sourceLineNo">703</span>   */<a name="line.703"></a>
-<span class="sourceLineNo">704</span>  public static boolean isExists(final FileSystem fs, final Path path) throws IOException {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>    return fs.exists(path);<a name="line.705"></a>
-<span class="sourceLineNo">706</span>  }<a name="line.706"></a>
-<span class="sourceLineNo">707</span><a name="line.707"></a>
-<span class="sourceLineNo">708</span>  /**<a name="line.708"></a>
-<span class="sourceLineNo">709</span>   * Log the current state of the filesystem from a certain root directory<a name="line.709"></a>
-<span class="sourceLineNo">710</span>   * @param fs filesystem to investigate<a name="line.710"></a>
-<span class="sourceLineNo">711</span>   * @param root root file/directory to start logging from<a name="line.711"></a>
-<span class="sourceLineNo">712</span>   * @param log log to output information<a name="line.712"></a>
-<span class="sourceLineNo">713</span>   * @throws IOException if an unexpected exception occurs<a name="line.713"></a>
-<span class="sourceLineNo">714</span>   */<a name="line.714"></a>
-<span class="sourceLineNo">715</span>  public static void logFileSystemState(final FileSystem fs, final Path root, Logger log)<a name="line.715"></a>
-<span class="sourceLineNo">716</span>      throws IOException {<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    log.debug("File system contents for path {}", root);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    logFSTree(log, fs, root, "|-");<a name="line.718"></a>
-<span class="sourceLineNo">719</span>  }<a name="line.719"></a>
-<span class="sourceLineNo">720</span><a name="line.720"></a>
-<span class="sourceLineNo">721</span>  /**<a name="line.721"></a>
-<span class="sourceLineNo">722</span>   * Recursive helper to log the state of the FS<a name="line.722"></a>
-<span class="sourceLineNo">723</span>   *<a name="line.723"></a>
-<span class="sourceLineNo">724</span>   * @see #logFileSystemState(FileSystem, Path, Logger)<a name="line.724"></a>
-<span class="sourceLineNo">725</span>   */<a name="line.725"></a>
-<span class="sourceLineNo">726</span>  private static void logFSTree(Logger log, final FileSystem fs, final Path root, String prefix)<a name="line.726"></a>
-<span class="sourceLineNo">727</span>      throws IOException {<a name="line.727"></a>
-<span class="sourceLineNo">728</span>    FileStatus[] files = listStatus(fs, root, null);<a name="line.728"></a>
-<span class="sourceLineNo">729</span>    if (files == null) {<a name="line.729"></a>
-<span class="sourceLineNo">730</span>      return;<a name="line.730"></a>
-<span class="sourceLineNo">731</span>    }<a name="line.731"></a>
-<span class="sourceLineNo">732</span><a name="line.732"></a>
-<span class="sourceLineNo">733</span>    for (FileStatus file : files) {<a name="line.733"></a>
-<span class="sourceLineNo">734</span>      if (file.isDirectory()) {<a name="line.734"></a>
-<span class="sourceLineNo">735</span>        log.debug(prefix + file.getPath().getName() + "/");<a name="line.735"></a>
-<span class="sourceLineNo">736</span>        logFSTree(log, fs, file.getPath(), prefix + "---");<a name="line.736"></a>
-<span class="sourceLineNo">737</span>      } else {<a name="line.737"></a>
-<span class="sourceLineNo">738</span>        log.debug(prefix + file.getPath().getName());<a name="line.738"></a>
-<span class="sourceLineNo">739</span>      }<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    }<a name="line.740"></a>
-<span class="sourceLineNo">741</span>  }<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>  public static boolean renameAndSetModifyTime(final FileSystem fs, final Path src, final Path dest)<a name="line.743"></a>
-<span class="sourceLineNo">744</span>      throws IOException {<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    // set the modify time for TimeToLive Cleaner<a name="line.745"></a>
-<span class="sourceLineNo">746</span>    fs.setTimes(src, EnvironmentEdgeManager.currentTime(), -1);<a name="line.746"></a>
-<span class="sourceLineNo">747</span>    return fs.rename(src, dest);<a name="line.747"></a>
-<span class="sourceLineNo">748</span>  }<a name="line.748"></a>
-<span class="sourceLineNo">749</span><a name="line.749"></a>
-<span class="sourceLineNo">750</span>  /**<a name="line.750"></a>
-<span class="sourceLineNo">751</span>   * Check if short circuit read buffer size is set and if not, set it to hbase value.<a name="line.751"></a>
-<span class="sourceLineNo">752</span>   * @param conf must not be null<a name="line.752"></a>
-<span class="sourceLineNo">753</span>   */<a name="line.753"></a>
-<span class="sourceLineNo">754</span>  public static void checkShortCircuitReadBufferSize(final Configuration conf) {<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    final int defaultSize = HConstants.DEFAULT_BLOCKSIZE * 2;<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    final int notSet = -1;<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    // DFSConfigKeys.DFS_CLIENT_READ_SHORTCIRCUIT_BUFFER_SIZE_KEY is only defined in h2<a name="line.757"></a>
-<span class="sourceLineNo">758</span>    final String dfsKey = "dfs.client.read.shortcircuit.buffer.size";<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    int size = conf.getInt(dfsKey, notSet);<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    // If a size is set, return -- we will use it.<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    if (size != notSet) {<a name="line.761"></a>
-<span class="sourceLineNo">762</span>      return;<a name="line.762"></a>
-<span class="sourceLineNo">763</span>    }<a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // But short circuit buffer size is normally not set.  Put in place the hbase wanted size.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    int hbaseSize = conf.getInt("hbase." + dfsKey, defaultSize);<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    conf.setIfUnset(dfsKey, Integer.toString(hbaseSize));<a name="line.766"></a>
-<span class="sourceLineNo">767</span>  }<a name="line.767"></a>
-<span class="sourceLineNo">768</span><a name="line.768"></a>
-<span class="sourceLineNo">769</span>  private static final class DfsBuilderUtility {<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    private static final Class&lt;?&gt; BUILDER;<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    private static final Method REPLICATE;<a name="line.771"></a>
-<span class="sourceLineNo">772</span><a name="line.772"></a>
-<span class="sourceLineNo">773</span>    static {<a name="line.773"></a>
-<span class="sourceLineNo">774</span>      String builderName = "org.apache.hadoop.hdfs.DistributedFileSystem$HdfsDataOutputStreamBuilder";<a name="line.774"></a>
-<span class="sourceLineNo">775</span>      Class&lt;?&gt; builderClass = null;<a name="line.775"></a>
-<span class="sourceLineNo">776</span>      try {<a name="line.776"></a>
-<span class="sourceLineNo">777</span>        builderClass = Class.forName(builderName);<a name="line.777"></a>
-<span class="sourceLineNo">778</span>      } catch (ClassNotFoundException e) {<a name="line.778"></a>
-<span class="sourceLineNo">779</span>        LOG.debug("{} not available, will not set replicate when creating output stream", builderName);<a name="line.779"></a>
-<span class="sourceLineNo">780</span>      }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>      Method replicateMethod = null;<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      if (builderClass != null) {<a name="line.782"></a>
-<span class="sourceLineNo">783</span>        try {<a name="line.783"></a>
-<span class="sourceLineNo">784</span>          replicateMethod = builderClass.getMethod("replicate");<a name="line.784"></a>
-<span class="sourceLineNo">785</span>          LOG.debug("Using builder API via reflection for DFS file creation.");<a name="line.785"></a>
-<span class="sourceLineNo">786</span>        } catch (NoSuchMethodException e) {<a name="line.786"></a>
-<span class="sourceLineNo">787</span>          LOG.debug("Could not find replicate method on builder; will not set replicate when" +<a name="line.787"></a>
-<span class="sourceLineNo">788</span>            " creating output stream", e);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>        }<a name="line.789"></a>
-<span class="sourceLineNo">790</span>      }<a name="line.790"></a>
-<span class="sourceLineNo">791</span>      BUILDER = builderClass;<a name="line.791"></a>
-<span class="sourceLineNo">792</span>      REPLICATE = replicateMethod;<a name="line.792"></a>
-<span class="sourceLineNo">793</span>    }<a name="line.793"></a>
-<span class="sourceLineNo">794</span><a name="line.794"></a>
-<span class="sourceLineNo">795</span>    /**<a name="line.795"></a>
-<span class="sourceLineNo">796</span>     * Attempt to use builder API via reflection to call the replicate method on the given builder.<a name="line.796"></a>
-<span class="sourceLineNo">797</span>     */<a name="line.797"></a>
-<span class="sourceLineNo">798</span>    static void replicate(FSDataOutputStreamBuilder&lt;?, ?&gt; builder) {<a name="line.798"></a>
-<span class="sourceLineNo">799</span>      if (BUILDER != null &amp;&amp; REPLICATE != null &amp;&amp; BUILDER.isAssignableFrom(builder.getClass())) {<a name="line.799"></a>
-<span class="sourceLineNo">800</span>        try {<a name="line.800"></a>
-<span class="sourceLineNo">801</span>          REPLICATE.invoke(builder);<a name="line.801"></a>
-<span class="sourceLineNo">802</span>        } catch (IllegalAccessException | InvocationTargetException e) {<a name="line.802"></a>
-<span class="sourceLineNo">803</span>          // Should have caught this failure during initialization, so log full trace here<a name="line.803"></a>
-<span class="sourceLineNo">804</span>          LOG.warn("Couldn't use reflection with builder API", e);<a name="line.804"></a>
-<span class="sourceLineNo">805</span>        }<a name="line.805"></a>
-<span class="sourceLineNo">806</span>      }<a name="line.806"></a>
-<span class="sourceLineNo">807</span>    }<a name="line.807"></a>
-<span class="sourceLineNo">808</span>  }<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>  /**<a name="line.810"></a>
-<span class="sourceLineNo">811</span>   * Attempt to use builder API via reflection to create a file with the given parameters and<a name="line.811"></a>
-<span class="sourceLineNo">812</span>   * replication enabled.<a name="line.812"></a>
-<span class="sourceLineNo">813</span>   * &lt;p/&gt;<a name="line.813"></a>
-<span class="sourceLineNo">814</span>   * Will not attempt to enable replication when passed an HFileSystem.<a name="line.814"></a>
-<span class="sourceLineNo">815</span>   */<a name="line.815"></a>
-<span class="sourceLineNo">816</span>  public static FSDataOutputStream createForWal(FileSystem fs, Path path, boolean overwrite)<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    throws IOException {<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(path).overwrite(overwrite);<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    DfsBuilderUtility.replicate(builder);<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    return builder.build();<a name="line.820"></a>
-<span class="sourceLineNo">821</span>  }<a name="line.821"></a>
-<span class="sourceLineNo">822</span><a name="line.822"></a>
-<span class="sourceLineNo">823</span>  /**<a name="line.823"></a>
-<span class="sourceLineNo">824</span>   * Attempt to use builder API via reflection to create a file with the given parameters and<a name="line.824"></a>
-<span class="sourceLineNo">825</span>   * replication enabled.<a name="line.825"></a>
-<span class="sourceLineNo">826</span>   * &lt;p/&gt;<a name="line.826"></a>
-<span class="sourceLineNo">827</span>   * Will not attempt to enable replication when passed an HFileSystem.<a name="line.827"></a>
-<span class="sourceLineNo">828</span>   */<a name="line.828"></a>
-<span class="sourceLineNo">829</span>  public static FSDataOutputStream createForWal(FileSystem fs, Path path, boolean overwrite,<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    int bufferSize, short replication, long blockSize, boolean isRecursive) throws IOException {<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(path).overwrite(overwrite)<a name="line.831"></a>
-<span class="sourceLineNo">832</span>      .bufferSize(bufferSize).replication(replication).blockSize(blockSize);<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    if (isRecursive) {<a name="line.833"></a>
-<span class="sourceLineNo">834</span>      builder.recursive();<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    }<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    DfsBuilderUtility.replicate(builder);<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    return builder.build();<a name="line.837"></a>
-<span class="sourceLineNo">838</span>  }<a name="line.838"></a>
-<span class="sourceLineNo">839</span><a name="line.839"></a>
-<span class="sourceLineNo">840</span>  /**<a name="line.840"></a>
-<span class="sourceLineNo">841</span>   * Helper exception for those cases where the place where we need to check a stream capability<a name="line.841"></a>
-<span class="sourceLineNo">842</span>   * is not where we have the needed context to explain the impact and mitigation for a lack.<a name="line.842"></a>
-<span class="sourceLineNo">843</span>   */<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  public static class StreamLacksCapabilityException extends Exception {<a name="line.844"></a>
-<span class="sourceLineNo">845</span>    public StreamLacksCapabilityException(String message, Throwable cause) {<a name="line.845"></a>
-<span class="sourceLineNo">846</span>      super(message, cause);<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    }<a name="line.847"></a>
-<span class="sourceLineNo">848</span>    public StreamLacksCapabilityException(String message) {<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      super(message);<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span>}<a name="line.852"></a>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-</pre>
-</div>
-</body>
-</html>
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html b/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html
index b763e74..1492d61 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.StreamLacksCapabilityException.html
@@ -28,836 +28,762 @@
 <span class="sourceLineNo">020</span><a name="line.20"></a>
 <span class="sourceLineNo">021</span>import java.io.FileNotFoundException;<a name="line.21"></a>
 <span class="sourceLineNo">022</span>import java.io.IOException;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import java.lang.reflect.InvocationTargetException;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import java.lang.reflect.Method;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import java.net.URI;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import java.net.URISyntaxException;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import java.util.List;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import java.util.Locale;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import java.util.Map;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import java.util.concurrent.ConcurrentHashMap;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import org.apache.hadoop.conf.Configuration;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import org.apache.hadoop.fs.FileStatus;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.FileSystem;<a name="line.35"></a>
-<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.LocatedFileStatus;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.Path;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.PathFilter;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.RemoteIterator;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.permission.FsPermission;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.HConstants;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.TableName;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.slf4j.Logger;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.slf4j.LoggerFactory;<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>/**<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * Utility methods for interacting with the underlying file system.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * &lt;p/&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * Note that {@link #setStoragePolicy(FileSystem, Path, String)} is tested in TestFSUtils and<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * pre-commit will run the hbase-server tests if there's code change in this class. See<a name="line.53"></a>
-<span class="sourceLineNo">054</span> * &lt;a href="https://issues.apache.org/jira/browse/HBASE-20838"&gt;HBASE-20838&lt;/a&gt; for more details.<a name="line.54"></a>
-<span class="sourceLineNo">055</span> */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>@InterfaceAudience.Private<a name="line.56"></a>
-<span class="sourceLineNo">057</span>public final class CommonFSUtils {<a name="line.57"></a>
-<span class="sourceLineNo">058</span>  private static final Logger LOG = LoggerFactory.getLogger(CommonFSUtils.class);<a name="line.58"></a>
+<span class="sourceLineNo">023</span>import java.net.URI;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import java.net.URISyntaxException;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import java.util.List;<a name="line.25"></a>
+<span class="sourceLineNo">026</span>import java.util.Locale;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import java.util.Map;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import java.util.concurrent.ConcurrentHashMap;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import org.apache.hadoop.conf.Configuration;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import org.apache.hadoop.fs.FileStatus;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import org.apache.hadoop.fs.FileSystem;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import org.apache.hadoop.fs.LocatedFileStatus;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import org.apache.hadoop.fs.Path;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.PathFilter;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.RemoteIterator;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.permission.FsPermission;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.HConstants;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.TableName;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.slf4j.Logger;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.slf4j.LoggerFactory;<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>/**<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * Utility methods for interacting with the underlying file system.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * &lt;p/&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * Note that {@link #setStoragePolicy(FileSystem, Path, String)} is tested in TestFSUtils and<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * pre-commit will run the hbase-server tests if there's code change in this class. See<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;a href="https://issues.apache.org/jira/browse/HBASE-20838"&gt;HBASE-20838&lt;/a&gt; for more details.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>@InterfaceAudience.Private<a name="line.53"></a>
+<span class="sourceLineNo">054</span>public final class CommonFSUtils {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>  private static final Logger LOG = LoggerFactory.getLogger(CommonFSUtils.class);<a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>  /** Parameter name for HBase WAL directory */<a name="line.57"></a>
+<span class="sourceLineNo">058</span>  public static final String HBASE_WAL_DIR = "hbase.wal.dir";<a name="line.58"></a>
 <span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>  /** Parameter name for HBase WAL directory */<a name="line.60"></a>
-<span class="sourceLineNo">061</span>  public static final String HBASE_WAL_DIR = "hbase.wal.dir";<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>  /** Parameter to disable stream capability enforcement checks */<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  public static final String UNSAFE_STREAM_CAPABILITY_ENFORCE =<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    "hbase.unsafe.stream.capability.enforce";<a name="line.65"></a>
+<span class="sourceLineNo">060</span>  /** Parameter to disable stream capability enforcement checks */<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  public static final String UNSAFE_STREAM_CAPABILITY_ENFORCE =<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    "hbase.unsafe.stream.capability.enforce";<a name="line.62"></a>
+<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">064</span>  /** Full access permissions (starting point for a umask) */<a name="line.64"></a>
+<span class="sourceLineNo">065</span>  public static final String FULL_RWX_PERMISSIONS = "777";<a name="line.65"></a>
 <span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>  /** Full access permissions (starting point for a umask) */<a name="line.67"></a>
-<span class="sourceLineNo">068</span>  public static final String FULL_RWX_PERMISSIONS = "777";<a name="line.68"></a>
+<span class="sourceLineNo">067</span>  private CommonFSUtils() {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>  }<a name="line.68"></a>
 <span class="sourceLineNo">069</span><a name="line.69"></a>
-<span class="sourceLineNo">070</span>  private CommonFSUtils() {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
-<span class="sourceLineNo">072</span><a name="line.72"></a>
-<span class="sourceLineNo">073</span>  /**<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   * Compare of path component. Does not consider schema; i.e. if schemas<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   * different but &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;,<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   * then the function returns true<a name="line.76"></a>
-<span class="sourceLineNo">077</span>   * @param rootPath value to check for<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   * @param path subject to check<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   * @return True if &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   */<a name="line.80"></a>
-<span class="sourceLineNo">081</span>  public static boolean isStartingWithPath(final Path rootPath, final String path) {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    String uriRootPath = rootPath.toUri().getPath();<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    String tailUriPath = (new Path(path)).toUri().getPath();<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    return tailUriPath.startsWith(uriRootPath);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>  }<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>  /**<a name="line.87"></a>
-<span class="sourceLineNo">088</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.88"></a>
-<span class="sourceLineNo">089</span>   * '/a/b/c' part. Does not consider schema; i.e. if schemas different but path or subpath matches,<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   * the two will equate.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>   * @param pathToSearch Path we will be trying to match against.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   * @param pathTail what to match<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   */<a name="line.94"></a>
-<span class="sourceLineNo">095</span>  public static boolean isMatchingTail(final Path pathToSearch, String pathTail) {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    return isMatchingTail(pathToSearch, new Path(pathTail));<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  /**<a name="line.99"></a>
-<span class="sourceLineNo">100</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.100"></a>
-<span class="sourceLineNo">101</span>   * '/a/b/c' part. If you passed in 'hdfs://a/b/c and b/c, it would return true.  Does not consider<a name="line.101"></a>
-<span class="sourceLineNo">102</span>   * schema; i.e. if schemas different but path or subpath matches, the two will equate.<a name="line.102"></a>
-<span class="sourceLineNo">103</span>   * @param pathToSearch Path we will be trying to match agains against<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   * @param pathTail what to match<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.105"></a>
-<span class="sourceLineNo">106</span>   */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>  public static boolean isMatchingTail(final Path pathToSearch, final Path pathTail) {<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    if (pathToSearch.depth() != pathTail.depth()) {<a name="line.108"></a>
-<span class="sourceLineNo">109</span>      return false;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    }<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    Path tailPath = pathTail;<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    String tailName;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    Path toSearch = pathToSearch;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    String toSearchName;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    boolean result = false;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    do {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      tailName = tailPath.getName();<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      if (tailName == null || tailName.length() &lt;= 0) {<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        result = true;<a name="line.119"></a>
-<span class="sourceLineNo">120</span>        break;<a name="line.120"></a>
-<span class="sourceLineNo">121</span>      }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>      toSearchName = toSearch.getName();<a name="line.122"></a>
-<span class="sourceLineNo">123</span>      if (toSearchName == null || toSearchName.length() &lt;= 0) {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        break;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>      }<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      // Move up a parent on each path for next go around.  Path doesn't let us go off the end.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>      tailPath = tailPath.getParent();<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      toSearch = toSearch.getParent();<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    } while(tailName.equals(toSearchName));<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    return result;<a name="line.130"></a>
-<span class="sourceLineNo">131</span>  }<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>  /**<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   * Delete if exists.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>   * @param fs filesystem object<a name="line.135"></a>
-<span class="sourceLineNo">136</span>   * @param dir directory to delete<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   * @return True if deleted &lt;code&gt;dir&lt;/code&gt;<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   * @throws IOException e<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>  public static boolean deleteDirectory(final FileSystem fs, final Path dir) throws IOException {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    return fs.exists(dir) &amp;&amp; fs.delete(dir, true);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>  }<a name="line.142"></a>
-<span class="sourceLineNo">143</span><a name="line.143"></a>
-<span class="sourceLineNo">144</span>  /**<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   * Return the number of bytes that large input files should be optimally<a name="line.145"></a>
-<span class="sourceLineNo">146</span>   * be split into to minimize i/o time.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   *<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   * @param fs filesystem object<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   * @return the default block size for the path's filesystem<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>  public static long getDefaultBlockSize(final FileSystem fs, final Path path) {<a name="line.151"></a>
-<span class="sourceLineNo">152</span>    return fs.getDefaultBlockSize(path);<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  }<a name="line.153"></a>
-<span class="sourceLineNo">154</span><a name="line.154"></a>
-<span class="sourceLineNo">155</span>  /*<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   * Get the default replication.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   *<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   * @param fs filesystem object<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   * @param f path of file<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * @return default replication for the path's filesystem<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  public static short getDefaultReplication(final FileSystem fs, final Path path) {<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    return fs.getDefaultReplication(path);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  }<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>  /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>   * Returns the default buffer size to use during writes.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>   * The size of the buffer should probably be a multiple of hardware<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   * page size (4096 on Intel x86), and it determines how much data is<a name="line.170"></a>
-<span class="sourceLineNo">171</span>   * buffered during read and write operations.<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   *<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   * @param fs filesystem object<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   * @return default buffer size to use during writes<a name="line.174"></a>
-<span class="sourceLineNo">175</span>   */<a name="line.175"></a>
-<span class="sourceLineNo">176</span>  public static int getDefaultBufferSize(final FileSystem fs) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    return fs.getConf().getInt("io.file.buffer.size", 4096);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>  /**<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   * Create the specified file on the filesystem. By default, this will:<a name="line.181"></a>
-<span class="sourceLineNo">182</span>   * &lt;ol&gt;<a name="line.182"></a>
-<span class="sourceLineNo">183</span>   * &lt;li&gt;apply the umask in the configuration (if it is enabled)&lt;/li&gt;<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   * &lt;li&gt;use the fs configured buffer size (or 4096 if not set)&lt;/li&gt;<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   * &lt;li&gt;use the default replication&lt;/li&gt;<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   * &lt;li&gt;use the default block size&lt;/li&gt;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   * &lt;li&gt;not track progress&lt;/li&gt;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   * &lt;/ol&gt;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   *<a name="line.189"></a>
-<span class="sourceLineNo">190</span>   * @param fs {@link FileSystem} on which to write the file<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   * @param path {@link Path} to the file to write<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   * @param perm intial permissions<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   * @param overwrite Whether or not the created file should be overwritten.<a name="line.193"></a>
-<span class="sourceLineNo">194</span>   * @return output stream to the created file<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   * @throws IOException if the file cannot be created<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   */<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  public static FSDataOutputStream create(FileSystem fs, Path path,<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      FsPermission perm, boolean overwrite) throws IOException {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    if (LOG.isTraceEnabled()) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      LOG.trace("Creating file={} with permission={}, overwrite={}", path, perm, overwrite);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    }<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    return fs.create(path, perm, overwrite, getDefaultBufferSize(fs),<a name="line.202"></a>
-<span class="sourceLineNo">203</span>        getDefaultReplication(fs, path), getDefaultBlockSize(fs, path), null);<a name="line.203"></a>
-<span class="sourceLineNo">204</span>  }<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>  /**<a name="line.206"></a>
-<span class="sourceLineNo">207</span>   * Get the file permissions specified in the configuration, if they are<a name="line.207"></a>
-<span class="sourceLineNo">208</span>   * enabled.<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   *<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   * @param fs filesystem that the file will be created on.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   * @param conf configuration to read for determining if permissions are<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   *          enabled and which to use<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   * @param permssionConfKey property key in the configuration to use when<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   *          finding the permission<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   * @return the permission to use when creating a new file on the fs. If<a name="line.215"></a>
-<span class="sourceLineNo">216</span>   *         special permissions are not specified in the configuration, then<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   *         the default permissions on the the fs will be returned.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>   */<a name="line.218"></a>
-<span class="sourceLineNo">219</span>  public static FsPermission getFilePermissions(final FileSystem fs,<a name="line.219"></a>
-<span class="sourceLineNo">220</span>      final Configuration conf, final String permssionConfKey) {<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    boolean enablePermissions = conf.getBoolean(<a name="line.221"></a>
-<span class="sourceLineNo">222</span>        HConstants.ENABLE_DATA_FILE_UMASK, false);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>    if (enablePermissions) {<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      try {<a name="line.225"></a>
-<span class="sourceLineNo">226</span>        FsPermission perm = new FsPermission(FULL_RWX_PERMISSIONS);<a name="line.226"></a>
-<span class="sourceLineNo">227</span>        // make sure that we have a mask, if not, go default.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        String mask = conf.get(permssionConfKey);<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        if (mask == null) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>          return FsPermission.getFileDefault();<a name="line.230"></a>
-<span class="sourceLineNo">231</span>        }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>        // appy the umask<a name="line.232"></a>
-<span class="sourceLineNo">233</span>        FsPermission umask = new FsPermission(mask);<a name="line.233"></a>
-<span class="sourceLineNo">234</span>        return perm.applyUMask(umask);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      } catch (IllegalArgumentException e) {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>        LOG.warn(<a name="line.236"></a>
-<span class="sourceLineNo">237</span>            "Incorrect umask attempted to be created: "<a name="line.237"></a>
-<span class="sourceLineNo">238</span>                + conf.get(permssionConfKey)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>                + ", using default file permissions.", e);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        return FsPermission.getFileDefault();<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>    }<a name="line.242"></a>
-<span class="sourceLineNo">243</span>    return FsPermission.getFileDefault();<a name="line.243"></a>
-<span class="sourceLineNo">244</span>  }<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>  /**<a name="line.246"></a>
-<span class="sourceLineNo">247</span>   * Verifies root directory path is a valid URI with a scheme<a name="line.247"></a>
-<span class="sourceLineNo">248</span>   *<a name="line.248"></a>
-<span class="sourceLineNo">249</span>   * @param root root directory path<a name="line.249"></a>
-<span class="sourceLineNo">250</span>   * @return Passed &lt;code&gt;root&lt;/code&gt; argument.<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   * @throws IOException if not a valid URI with a scheme<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   */<a name="line.252"></a>
-<span class="sourceLineNo">253</span>  public static Path validateRootPath(Path root) throws IOException {<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    try {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      URI rootURI = new URI(root.toString());<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      String scheme = rootURI.getScheme();<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      if (scheme == null) {<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        throw new IOException("Root directory does not have a scheme");<a name="line.258"></a>
-<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return root;<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    } catch (URISyntaxException e) {<a name="line.261"></a>
-<span class="sourceLineNo">262</span>      throw new IOException("Root directory path is not a valid " +<a name="line.262"></a>
-<span class="sourceLineNo">263</span>        "URI -- check your " + HConstants.HBASE_DIR + " configuration", e);<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
-<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>  /**<a name="line.267"></a>
-<span class="sourceLineNo">268</span>   * Checks for the presence of the WAL log root path (using the provided conf object) in the given<a name="line.268"></a>
-<span class="sourceLineNo">269</span>   * path. If it exists, this method removes it and returns the String representation of remaining<a name="line.269"></a>
-<span class="sourceLineNo">270</span>   * relative path.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>   * @param path must not be null<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   * @param conf must not be null<a name="line.272"></a>
-<span class="sourceLineNo">273</span>   * @return String representation of the remaining relative path<a name="line.273"></a>
-<span class="sourceLineNo">274</span>   * @throws IOException from underlying filesystem<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   */<a name="line.275"></a>
-<span class="sourceLineNo">276</span>  public static String removeWALRootPath(Path path, final Configuration conf) throws IOException {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>    Path root = getWALRootDir(conf);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>    String pathStr = path.toString();<a name="line.278"></a>
-<span class="sourceLineNo">279</span>    // check that the path is absolute... it has the root path in it.<a name="line.279"></a>
-<span class="sourceLineNo">280</span>    if (!pathStr.startsWith(root.toString())) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      return pathStr;<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    }<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // if not, return as it is.<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    return pathStr.substring(root.toString().length() + 1);// remove the "/" too.<a name="line.284"></a>
-<span class="sourceLineNo">285</span>  }<a name="line.285"></a>
-<span class="sourceLineNo">286</span><a name="line.286"></a>
-<span class="sourceLineNo">287</span>  /**<a name="line.287"></a>
-<span class="sourceLineNo">288</span>   * Return the 'path' component of a Path.  In Hadoop, Path is a URI.  This<a name="line.288"></a>
-<span class="sourceLineNo">289</span>   * method returns the 'path' component of a Path's URI: e.g. If a Path is<a name="line.289"></a>
-<span class="sourceLineNo">290</span>   * &lt;code&gt;hdfs://example.org:9000/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;,<a name="line.290"></a>
-<span class="sourceLineNo">291</span>   * this method returns &lt;code&gt;/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;.<a name="line.291"></a>
-<span class="sourceLineNo">292</span>   * This method is useful if you want to print out a Path without qualifying<a name="line.292"></a>
-<span class="sourceLineNo">293</span>   * Filesystem instance.<a name="line.293"></a>
-<span class="sourceLineNo">294</span>   * @param p Filesystem Path whose 'path' component we are to return.<a name="line.294"></a>
-<span class="sourceLineNo">295</span>   * @return Path portion of the Filesystem<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   */<a name="line.296"></a>
-<span class="sourceLineNo">297</span>  public static String getPath(Path p) {<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    return p.toUri().getPath();<a name="line.298"></a>
-<span class="sourceLineNo">299</span>  }<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>  /**<a name="line.301"></a>
-<span class="sourceLineNo">302</span>   * @param c configuration<a name="line.302"></a>
-<span class="sourceLineNo">303</span>   * @return {@link Path} to hbase root directory from<a name="line.303"></a>
-<span class="sourceLineNo">304</span>   *     configuration as a qualified Path.<a name="line.304"></a>
-<span class="sourceLineNo">305</span>   * @throws IOException e<a name="line.305"></a>
-<span class="sourceLineNo">306</span>   */<a name="line.306"></a>
-<span class="sourceLineNo">307</span>  public static Path getRootDir(final Configuration c) throws IOException {<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    Path p = new Path(c.get(HConstants.HBASE_DIR));<a name="line.308"></a>
-<span class="sourceLineNo">309</span>    FileSystem fs = p.getFileSystem(c);<a name="line.309"></a>
-<span class="sourceLineNo">310</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.310"></a>
-<span class="sourceLineNo">311</span>  }<a name="line.311"></a>
-<span class="sourceLineNo">312</span><a name="line.312"></a>
-<span class="sourceLineNo">313</span>  public static void setRootDir(final Configuration c, final Path root) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>    c.set(HConstants.HBASE_DIR, root.toString());<a name="line.314"></a>
-<span class="sourceLineNo">315</span>  }<a name="line.315"></a>
-<span class="sourceLineNo">316</span><a name="line.316"></a>
-<span class="sourceLineNo">317</span>  public static void setFsDefault(final Configuration c, final Path root) {<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    c.set("fs.defaultFS", root.toString());    // for hadoop 0.21+<a name="line.318"></a>
-<span class="sourceLineNo">319</span>  }<a name="line.319"></a>
-<span class="sourceLineNo">320</span><a name="line.320"></a>
-<span class="sourceLineNo">321</span>  public static void setFsDefault(final Configuration c, final String uri) {<a name="line.321"></a>
-<span class="sourceLineNo">322</span>    c.set("fs.defaultFS", uri); // for hadoop 0.21+<a name="line.322"></a>
-<span class="sourceLineNo">323</span>  }<a name="line.323"></a>
-<span class="sourceLineNo">324</span><a name="line.324"></a>
-<span class="sourceLineNo">325</span>  public static FileSystem getRootDirFileSystem(final Configuration c) throws IOException {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    Path p = getRootDir(c);<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return p.getFileSystem(c);<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  /**<a name="line.330"></a>
-<span class="sourceLineNo">331</span>   * @param c configuration<a name="line.331"></a>
-<span class="sourceLineNo">332</span>   * @return {@link Path} to hbase log root directory: e.g. {@value HBASE_WAL_DIR} from<a name="line.332"></a>
-<span class="sourceLineNo">333</span>   *     configuration as a qualified Path. Defaults to HBase root dir.<a name="line.333"></a>
-<span class="sourceLineNo">334</span>   * @throws IOException e<a name="line.334"></a>
-<span class="sourceLineNo">335</span>   */<a name="line.335"></a>
-<span class="sourceLineNo">336</span>  public static Path getWALRootDir(final Configuration c) throws IOException {<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    Path p = new Path(c.get(HBASE_WAL_DIR, c.get(HConstants.HBASE_DIR)));<a name="line.337"></a>
-<span class="sourceLineNo">338</span>    if (!isValidWALRootDir(p, c)) {<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      return getRootDir(c);<a name="line.339"></a>
-<span class="sourceLineNo">340</span>    }<a name="line.340"></a>
-<span class="sourceLineNo">341</span>    FileSystem fs = p.getFileSystem(c);<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.342"></a>
-<span class="sourceLineNo">343</span>  }<a name="line.343"></a>
-<span class="sourceLineNo">344</span><a name="line.344"></a>
-<span class="sourceLineNo">345</span>  /**<a name="line.345"></a>
-<span class="sourceLineNo">346</span>   * Returns the URI in the string format<a name="line.346"></a>
-<span class="sourceLineNo">347</span>   * @param c configuration<a name="line.347"></a>
-<span class="sourceLineNo">348</span>   * @param p path<a name="line.348"></a>
-<span class="sourceLineNo">349</span>   * @return - the URI's to string format<a name="line.349"></a>
-<span class="sourceLineNo">350</span>   * @throws IOException<a name="line.350"></a>
-<span class="sourceLineNo">351</span>   */<a name="line.351"></a>
-<span class="sourceLineNo">352</span>  public static String getDirUri(final Configuration c, Path p) throws IOException {<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    if (p.toUri().getScheme() != null) {<a name="line.353"></a>
-<span class="sourceLineNo">354</span>      return p.toUri().toString();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    }<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    return null;<a name="line.356"></a>
-<span class="sourceLineNo">357</span>  }<a name="line.357"></a>
-<span class="sourceLineNo">358</span><a name="line.358"></a>
-<span class="sourceLineNo">359</span>  public static void setWALRootDir(final Configuration c, final Path root) {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    c.set(HBASE_WAL_DIR, root.toString());<a name="line.360"></a>
-<span class="sourceLineNo">361</span>  }<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>  public static FileSystem getWALFileSystem(final Configuration c) throws IOException {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>    Path p = getWALRootDir(c);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    FileSystem fs = p.getFileSystem(c);<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    // hadoop-core does fs caching, so need to propagate this if set<a name="line.366"></a>
-<span class="sourceLineNo">367</span>    String enforceStreamCapability = c.get(UNSAFE_STREAM_CAPABILITY_ENFORCE);<a name="line.367"></a>
-<span class="sourceLineNo">368</span>    if (enforceStreamCapability != null) {<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      fs.getConf().set(UNSAFE_STREAM_CAPABILITY_ENFORCE, enforceStreamCapability);<a name="line.369"></a>
-<span class="sourceLineNo">370</span>    }<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    return fs;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  }<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  private static boolean isValidWALRootDir(Path walDir, final Configuration c) throws IOException {<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    Path rootDir = getRootDir(c);<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    FileSystem fs = walDir.getFileSystem(c);<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    Path qualifiedWalDir = walDir.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.377"></a>
-<span class="sourceLineNo">378</span>    if (!qualifiedWalDir.equals(rootDir)) {<a name="line.378"></a>
-<span class="sourceLineNo">379</span>      if (qualifiedWalDir.toString().startsWith(rootDir.toString() + "/")) {<a name="line.379"></a>
-<span class="sourceLineNo">380</span>        throw new IllegalStateException("Illegal WAL directory specified. " +<a name="line.380"></a>
-<span class="sourceLineNo">381</span>          "WAL directories are not permitted to be under root directory: rootDir=" +<a name="line.381"></a>
-<span class="sourceLineNo">382</span>          rootDir.toString() + ", qualifiedWALDir=" + qualifiedWalDir);<a name="line.382"></a>
-<span class="sourceLineNo">383</span>      }<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    }<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    return true;<a name="line.385"></a>
-<span class="sourceLineNo">386</span>  }<a name="line.386"></a>
-<span class="sourceLineNo">387</span><a name="line.387"></a>
-<span class="sourceLineNo">388</span>  /**<a name="line.388"></a>
-<span class="sourceLineNo">389</span>   * Returns the WAL region directory based on the given table name and region name<a name="line.389"></a>
-<span class="sourceLineNo">390</span>   * @param conf configuration to determine WALRootDir<a name="line.390"></a>
-<span class="sourceLineNo">391</span>   * @param tableName Table that the region is under<a name="line.391"></a>
-<span class="sourceLineNo">392</span>   * @param encodedRegionName Region name used for creating the final region directory<a name="line.392"></a>
-<span class="sourceLineNo">393</span>   * @return the region directory used to store WALs under the WALRootDir<a name="line.393"></a>
-<span class="sourceLineNo">394</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.394"></a>
-<span class="sourceLineNo">395</span>   */<a name="line.395"></a>
-<span class="sourceLineNo">396</span>  public static Path getWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.396"></a>
-<span class="sourceLineNo">397</span>      final String encodedRegionName) throws IOException {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    return new Path(getWALTableDir(conf, tableName), encodedRegionName);<a name="line.398"></a>
-<span class="sourceLineNo">399</span>  }<a name="line.399"></a>
-<span class="sourceLineNo">400</span><a name="line.400"></a>
-<span class="sourceLineNo">401</span>  /**<a name="line.401"></a>
-<span class="sourceLineNo">402</span>   * Returns the Table directory under the WALRootDir for the specified table name<a name="line.402"></a>
-<span class="sourceLineNo">403</span>   * @param conf configuration used to get the WALRootDir<a name="line.403"></a>
-<span class="sourceLineNo">404</span>   * @param tableName Table to get the directory for<a name="line.404"></a>
-<span class="sourceLineNo">405</span>   * @return a path to the WAL table directory for the specified table<a name="line.405"></a>
-<span class="sourceLineNo">406</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.406"></a>
-<span class="sourceLineNo">407</span>   */<a name="line.407"></a>
-<span class="sourceLineNo">408</span>  public static Path getWALTableDir(final Configuration conf, final TableName tableName)<a name="line.408"></a>
-<span class="sourceLineNo">409</span>      throws IOException {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Path baseDir = new Path(getWALRootDir(conf), HConstants.BASE_NAMESPACE_DIR);<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    return new Path(new Path(baseDir, tableName.getNamespaceAsString()),<a name="line.411"></a>
-<span class="sourceLineNo">412</span>      tableName.getQualifierAsString());<a name="line.412"></a>
-<span class="sourceLineNo">413</span>  }<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>  /**<a name="line.415"></a>
-<span class="sourceLineNo">416</span>   * For backward compatibility with HBASE-20734, where we store recovered edits in a wrong<a name="line.416"></a>
-<span class="sourceLineNo">417</span>   * directory without BASE_NAMESPACE_DIR. See HBASE-22617 for more details.<a name="line.417"></a>
-<span class="sourceLineNo">418</span>   * @deprecated For compatibility, will be removed in 4.0.0.<a name="line.418"></a>
-<span class="sourceLineNo">419</span>   */<a name="line.419"></a>
-<span class="sourceLineNo">420</span>  @Deprecated<a name="line.420"></a>
-<span class="sourceLineNo">421</span>  public static Path getWrongWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.421"></a>
-<span class="sourceLineNo">422</span>      final String encodedRegionName) throws IOException {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>    Path wrongTableDir = new Path(new Path(getWALRootDir(conf), tableName.getNamespaceAsString()),<a name="line.423"></a>
-<span class="sourceLineNo">424</span>      tableName.getQualifierAsString());<a name="line.424"></a>
-<span class="sourceLineNo">425</span>    return new Path(wrongTableDir, encodedRegionName);<a name="line.425"></a>
-<span class="sourceLineNo">426</span>  }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>  /**<a name="line.428"></a>
-<span class="sourceLineNo">429</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the table directory under<a name="line.429"></a>
-<span class="sourceLineNo">430</span>   * path rootdir<a name="line.430"></a>
-<span class="sourceLineNo">431</span>   *<a name="line.431"></a>
-<span class="sourceLineNo">432</span>   * @param rootdir qualified path of HBase root directory<a name="line.432"></a>
-<span class="sourceLineNo">433</span>   * @param tableName name of table<a name="line.433"></a>
-<span class="sourceLineNo">434</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.434"></a>
-<span class="sourceLineNo">435</span>   */<a name="line.435"></a>
-<span class="sourceLineNo">436</span>  public static Path getTableDir(Path rootdir, final TableName tableName) {<a name="line.436"></a>
-<span class="sourceLineNo">437</span>    return new Path(getNamespaceDir(rootdir, tableName.getNamespaceAsString()),<a name="line.437"></a>
-<span class="sourceLineNo">438</span>        tableName.getQualifierAsString());<a name="line.438"></a>
-<span class="sourceLineNo">439</span>  }<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>  /**<a name="line.441"></a>
-<span class="sourceLineNo">442</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the region directory under<a name="line.442"></a>
-<span class="sourceLineNo">443</span>   * path rootdir<a name="line.443"></a>
-<span class="sourceLineNo">444</span>   *<a name="line.444"></a>
-<span class="sourceLineNo">445</span>   * @param rootdir qualified path of HBase root directory<a name="line.445"></a>
-<span class="sourceLineNo">446</span>   * @param tableName name of table<a name="line.446"></a>
-<span class="sourceLineNo">447</span>   * @param regionName The encoded region name<a name="line.447"></a>
-<span class="sourceLineNo">448</span>   * @return {@link org.apache.hadoop.fs.Path} for region<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   */<a name="line.449"></a>
-<span class="sourceLineNo">450</span>  public static Path getRegionDir(Path rootdir, TableName tableName, String regionName) {<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    return new Path(getTableDir(rootdir, tableName), regionName);<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  }<a name="line.452"></a>
-<span class="sourceLineNo">453</span><a name="line.453"></a>
-<span class="sourceLineNo">454</span>  /**<a name="line.454"></a>
-<span class="sourceLineNo">455</span>   * Returns the {@link org.apache.hadoop.hbase.TableName} object representing<a name="line.455"></a>
-<span class="sourceLineNo">456</span>   * the table directory under<a name="line.456"></a>
-<span class="sourceLineNo">457</span>   * path rootdir<a name="line.457"></a>
-<span class="sourceLineNo">458</span>   *<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   * @param tablePath path of table<a name="line.459"></a>
-<span class="sourceLineNo">460</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.460"></a>
-<span class="sourceLineNo">461</span>   */<a name="line.461"></a>
-<span class="sourceLineNo">462</span>  public static TableName getTableName(Path tablePath) {<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    return TableName.valueOf(tablePath.getParent().getName(), tablePath.getName());<a name="line.463"></a>
-<span class="sourceLineNo">464</span>  }<a name="line.464"></a>
-<span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>  /**<a name="line.466"></a>
-<span class="sourceLineNo">467</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing<a name="line.467"></a>
-<span class="sourceLineNo">468</span>   * the namespace directory under path rootdir<a name="line.468"></a>
-<span class="sourceLineNo">469</span>   *<a name="line.469"></a>
-<span class="sourceLineNo">470</span>   * @param rootdir qualified path of HBase root directory<a name="line.470"></a>
-<span class="sourceLineNo">471</span>   * @param namespace namespace name<a name="line.471"></a>
-<span class="sourceLineNo">472</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.472"></a>
-<span class="sourceLineNo">473</span>   */<a name="line.473"></a>
-<span class="sourceLineNo">474</span>  public static Path getNamespaceDir(Path rootdir, final String namespace) {<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    return new Path(rootdir, new Path(HConstants.BASE_NAMESPACE_DIR,<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        new Path(namespace)));<a name="line.476"></a>
-<span class="sourceLineNo">477</span>  }<a name="line.477"></a>
-<span class="sourceLineNo">478</span><a name="line.478"></a>
-<span class="sourceLineNo">479</span>  // this mapping means that under a federated FileSystem implementation, we'll<a name="line.479"></a>
-<span class="sourceLineNo">480</span>  // only log the first failure from any of the underlying FileSystems at WARN and all others<a name="line.480"></a>
-<span class="sourceLineNo">481</span>  // will be at DEBUG.<a name="line.481"></a>
-<span class="sourceLineNo">482</span>  private static final Map&lt;FileSystem, Boolean&gt; warningMap = new ConcurrentHashMap&lt;&gt;();<a name="line.482"></a>
-<span class="sourceLineNo">483</span><a name="line.483"></a>
-<span class="sourceLineNo">484</span>  /**<a name="line.484"></a>
-<span class="sourceLineNo">485</span>   * Sets storage policy for given path.<a name="line.485"></a>
-<span class="sourceLineNo">486</span>   * If the passed path is a directory, we'll set the storage policy for all files<a name="line.486"></a>
-<span class="sourceLineNo">487</span>   * created in the future in said directory. Note that this change in storage<a name="line.487"></a>
-<span class="sourceLineNo">488</span>   * policy takes place at the FileSystem level; it will persist beyond this RS's lifecycle.<a name="line.488"></a>
-<span class="sourceLineNo">489</span>   * If we're running on a version of FileSystem that doesn't support the given storage policy<a name="line.489"></a>
-<span class="sourceLineNo">490</span>   * (or storage policies at all), then we'll issue a log message and continue.<a name="line.490"></a>
-<span class="sourceLineNo">491</span>   *<a name="line.491"></a>
-<span class="sourceLineNo">492</span>   * See http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html<a name="line.492"></a>
-<span class="sourceLineNo">493</span>   *<a name="line.493"></a>
-<span class="sourceLineNo">494</span>   * @param fs We only do anything it implements a setStoragePolicy method<a name="line.494"></a>
-<span class="sourceLineNo">495</span>   * @param path the Path whose storage policy is to be set<a name="line.495"></a>
-<span class="sourceLineNo">496</span>   * @param storagePolicy Policy to set on &lt;code&gt;path&lt;/code&gt;; see hadoop 2.6+<a name="line.496"></a>
-<span class="sourceLineNo">497</span>   *   org.apache.hadoop.hdfs.protocol.HdfsConstants for possible list e.g<a name="line.497"></a>
-<span class="sourceLineNo">498</span>   *   'COLD', 'WARM', 'HOT', 'ONE_SSD', 'ALL_SSD', 'LAZY_PERSIST'.<a name="line.498"></a>
-<span class="sourceLineNo">499</span>   */<a name="line.499"></a>
-<span class="sourceLineNo">500</span>  public static void setStoragePolicy(final FileSystem fs, final Path path,<a name="line.500"></a>
-<span class="sourceLineNo">501</span>      final String storagePolicy) {<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    try {<a name="line.502"></a>
-<span class="sourceLineNo">503</span>      setStoragePolicy(fs, path, storagePolicy, false);<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    } catch (IOException e) {<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      // should never arrive here<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      LOG.warn("We have chosen not to throw exception but some unexpectedly thrown out", e);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>    }<a name="line.507"></a>
-<span class="sourceLineNo">508</span>  }<a name="line.508"></a>
-<span class="sourceLineNo">509</span><a name="line.509"></a>
-<span class="sourceLineNo">510</span>  static void setStoragePolicy(final FileSystem fs, final Path path, final String storagePolicy,<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      boolean throwException) throws IOException {<a name="line.511"></a>
-<span class="sourceLineNo">512</span>    if (storagePolicy == null) {<a name="line.512"></a>
-<span class="sourceLineNo">513</span>      if (LOG.isTraceEnabled()) {<a name="line.513"></a>
-<span class="sourceLineNo">514</span>        LOG.trace("We were passed a null storagePolicy, exiting early.");<a name="line.514"></a>
-<span class="sourceLineNo">515</span>      }<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      return;<a name="line.516"></a>
-<span class="sourceLineNo">517</span>    }<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    String trimmedStoragePolicy = storagePolicy.trim();<a name="line.518"></a>
-<span class="sourceLineNo">519</span>    if (trimmedStoragePolicy.isEmpty()) {<a name="line.519"></a>
-<span class="sourceLineNo">520</span>      LOG.trace("We were passed an empty storagePolicy, exiting early.");<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      return;<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } else {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      trimmedStoragePolicy = trimmedStoragePolicy.toUpperCase(Locale.ROOT);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>    if (trimmedStoragePolicy.equals(HConstants.DEFER_TO_HDFS_STORAGE_POLICY)) {<a name="line.525"></a>
-<span class="sourceLineNo">526</span>      LOG.trace("We were passed the defer-to-hdfs policy {}, exiting early.", trimmedStoragePolicy);<a name="line.526"></a>
-<span class="sourceLineNo">527</span>      return;<a name="line.527"></a>
-<span class="sourceLineNo">528</span>    }<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    try {<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      invokeSetStoragePolicy(fs, path, trimmedStoragePolicy);<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    } catch (IOException e) {<a name="line.531"></a>
-<span class="sourceLineNo">532</span>      LOG.trace("Failed to invoke set storage policy API on FS", e);<a name="line.532"></a>
-<span class="sourceLineNo">533</span>      if (throwException) {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>        throw e;<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      }<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    }<a name="line.536"></a>
-<span class="sourceLineNo">537</span>  }<a name="line.537"></a>
-<span class="sourceLineNo">538</span><a name="line.538"></a>
-<span class="sourceLineNo">539</span>  /*<a name="line.539"></a>
-<span class="sourceLineNo">540</span>   * All args have been checked and are good. Run the setStoragePolicy invocation.<a name="line.540"></a>
-<span class="sourceLineNo">541</span>   */<a name="line.541"></a>
-<span class="sourceLineNo">542</span>  private static void invokeSetStoragePolicy(final FileSystem fs, final Path path,<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      final String storagePolicy) throws IOException {<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    Exception toThrow = null;<a name="line.544"></a>
-<span class="sourceLineNo">545</span><a name="line.545"></a>
-<span class="sourceLineNo">546</span>    try {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      fs.setStoragePolicy(path, storagePolicy);<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      LOG.debug("Set storagePolicy={} for path={}", storagePolicy, path);<a name="line.548"></a>
-<span class="sourceLineNo">549</span>    } catch (Exception e) {<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      toThrow = e;<a name="line.550"></a>
-<span class="sourceLineNo">551</span>      // This swallows FNFE, should we be throwing it? seems more likely to indicate dev<a name="line.551"></a>
-<span class="sourceLineNo">552</span>      // misuse than a runtime problem with HDFS.<a name="line.552"></a>
-<span class="sourceLineNo">553</span>      if (!warningMap.containsKey(fs)) {<a name="line.553"></a>
-<span class="sourceLineNo">554</span>        warningMap.put(fs, true);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>        LOG.warn("Unable to set storagePolicy=" + storagePolicy + " for path=" + path + ". " +<a name="line.555"></a>
-<span class="sourceLineNo">556</span>            "DEBUG log level might have more details.", e);<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      } else if (LOG.isDebugEnabled()) {<a name="line.557"></a>
-<span class="sourceLineNo">558</span>        LOG.debug("Unable to set storagePolicy=" + storagePolicy + " for path=" + path, e);<a name="line.558"></a>
-<span class="sourceLineNo">559</span>      }<a name="line.559"></a>
-<span class="sourceLineNo">560</span><a name="line.560"></a>
-<span class="sourceLineNo">561</span>      // Hadoop 2.8+, 3.0-a1+ added FileSystem.setStoragePolicy with a default implementation<a name="line.561"></a>
-<span class="sourceLineNo">562</span>      // that throws UnsupportedOperationException<a name="line.562"></a>
-<span class="sourceLineNo">563</span>      if (e instanceof UnsupportedOperationException) {<a name="line.563"></a>
-<span class="sourceLineNo">564</span>        if (LOG.isDebugEnabled()) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>          LOG.debug("The underlying FileSystem implementation doesn't support " +<a name="line.565"></a>
-<span class="sourceLineNo">566</span>              "setStoragePolicy. This is probably intentional on their part, since HDFS-9345 " +<a name="line.566"></a>
-<span class="sourceLineNo">567</span>              "appears to be present in your version of Hadoop. For more information check " +<a name="line.567"></a>
-<span class="sourceLineNo">568</span>              "the Hadoop documentation on 'ArchivalStorage', the Hadoop FileSystem " +<a name="line.568"></a>
-<span class="sourceLineNo">569</span>              "specification docs from HADOOP-11981, and/or related documentation from the " +<a name="line.569"></a>
-<span class="sourceLineNo">570</span>              "provider of the underlying FileSystem (its name should appear in the " +<a name="line.570"></a>
-<span class="sourceLineNo">571</span>              "stacktrace that accompanies this message). Note in particular that Hadoop's " +<a name="line.571"></a>
-<span class="sourceLineNo">572</span>              "local filesystem implementation doesn't support storage policies.", e);<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        }<a name="line.573"></a>
-<span class="sourceLineNo">574</span>      }<a name="line.574"></a>
-<span class="sourceLineNo">575</span>    }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>    if (toThrow != null) {<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      throw new IOException(toThrow);<a name="line.578"></a>
-<span class="sourceLineNo">579</span>    }<a name="line.579"></a>
-<span class="sourceLineNo">580</span>  }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>  /**<a name="line.582"></a>
-<span class="sourceLineNo">583</span>   * @param conf must not be null<a name="line.583"></a>
-<span class="sourceLineNo">584</span>   * @return True if this filesystem whose scheme is 'hdfs'.<a name="line.584"></a>
-<span class="sourceLineNo">585</span>   * @throws IOException from underlying FileSystem<a name="line.585"></a>
-<span class="sourceLineNo">586</span>   */<a name="line.586"></a>
-<span class="sourceLineNo">587</span>  public static boolean isHDFS(final Configuration conf) throws IOException {<a name="line.587"></a>
-<span class="sourceLineNo">588</span>    FileSystem fs = FileSystem.get(conf);<a name="line.588"></a>
-<span class="sourceLineNo">589</span>    String scheme = fs.getUri().getScheme();<a name="line.589"></a>
-<span class="sourceLineNo">590</span>    return scheme.equalsIgnoreCase("hdfs");<a name="line.590"></a>
-<span class="sourceLineNo">591</span>  }<a name="line.591"></a>
-<span class="sourceLineNo">592</span><a name="line.592"></a>
-<span class="sourceLineNo">593</span>  /**<a name="line.593"></a>
-<span class="sourceLineNo">594</span>   * Checks if the given path is the one with 'recovered.edits' dir.<a name="line.594"></a>
-<span class="sourceLineNo">595</span>   * @param path must not be null<a name="line.595"></a>
-<span class="sourceLineNo">596</span>   * @return True if we recovered edits<a name="line.596"></a>
-<span class="sourceLineNo">597</span>   */<a name="line.597"></a>
-<span class="sourceLineNo">598</span>  public static boolean isRecoveredEdits(Path path) {<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    return path.toString().contains(HConstants.RECOVERED_EDITS_DIR);<a name="line.599"></a>
-<span class="sourceLineNo">600</span>  }<a name="line.600"></a>
-<span class="sourceLineNo">601</span><a name="line.601"></a>
-<span class="sourceLineNo">602</span>  /**<a name="line.602"></a>
-<span class="sourceLineNo">603</span>   * @param conf must not be null<a name="line.603"></a>
-<span class="sourceLineNo">604</span>   * @return Returns the filesystem of the hbase rootdir.<a name="line.604"></a>
-<span class="sourceLineNo">605</span>   * @throws IOException from underlying FileSystem<a name="line.605"></a>
-<span class="sourceLineNo">606</span>   */<a name="line.606"></a>
-<span class="sourceLineNo">607</span>  public static FileSystem getCurrentFileSystem(Configuration conf) throws IOException {<a name="line.607"></a>
-<span class="sourceLineNo">608</span>    return getRootDir(conf).getFileSystem(conf);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>  }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>  /**<a name="line.611"></a>
-<span class="sourceLineNo">612</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.612"></a>
-<span class="sourceLineNo">613</span>   * This accommodates differences between hadoop versions, where hadoop 1<a name="line.613"></a>
-<span class="sourceLineNo">614</span>   * does not throw a FileNotFoundException, and return an empty FileStatus[]<a name="line.614"></a>
-<span class="sourceLineNo">615</span>   * while Hadoop 2 will throw FileNotFoundException.<a name="line.615"></a>
+<span class="sourceLineNo">070</span>  /**<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   * Compare of path component. Does not consider schema; i.e. if schemas<a name="line.71"></a>
+<span class="sourceLineNo">072</span>   * different but &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;,<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   * then the function returns true<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   * @param rootPath value to check for<a name="line.74"></a>
+<span class="sourceLineNo">075</span>   * @param path subject to check<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   * @return True if &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   */<a name="line.77"></a>
+<span class="sourceLineNo">078</span>  public static boolean isStartingWithPath(final Path rootPath, final String path) {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    String uriRootPath = rootPath.toUri().getPath();<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    String tailUriPath = (new Path(path)).toUri().getPath();<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    return tailUriPath.startsWith(uriRootPath);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>  }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>  /**<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   * '/a/b/c' part. Does not consider schema; i.e. if schemas different but path or subpath matches,<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   * the two will equate.<a name="line.87"></a>
+<span class="sourceLineNo">088</span>   * @param pathToSearch Path we will be trying to match against.<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   * @param pathTail what to match<a name="line.89"></a>
+<span class="sourceLineNo">090</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span>   */<a name="line.91"></a>
+<span class="sourceLineNo">092</span>  public static boolean isMatchingTail(final Path pathToSearch, String pathTail) {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    return isMatchingTail(pathToSearch, new Path(pathTail));<a name="line.93"></a>
+<span class="sourceLineNo">094</span>  }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>  /**<a name="line.96"></a>
+<span class="sourceLineNo">097</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   * '/a/b/c' part. If you passed in 'hdfs://a/b/c and b/c, it would return true.  Does not consider<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   * schema; i.e. if schemas different but path or subpath matches, the two will equate.<a name="line.99"></a>
+<span class="sourceLineNo">100</span>   * @param pathToSearch Path we will be trying to match agains against<a name="line.100"></a>
+<span class="sourceLineNo">101</span>   * @param pathTail what to match<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   */<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  public static boolean isMatchingTail(final Path pathToSearch, final Path pathTail) {<a name="line.104"></a>
+<span class="sourceLineNo">105</span>    if (pathToSearch.depth() != pathTail.depth()) {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      return false;<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    Path tailPath = pathTail;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    String tailName;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    Path toSearch = pathToSearch;<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    String toSearchName;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    boolean result = false;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    do {<a name="line.113"></a>
+<span class="sourceLineNo">114</span>      tailName = tailPath.getName();<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      if (tailName == null || tailName.length() &lt;= 0) {<a name="line.115"></a>
+<span class="sourceLineNo">116</span>        result = true;<a name="line.116"></a>
+<span class="sourceLineNo">117</span>        break;<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      }<a name="line.118"></a>
+<span class="sourceLineNo">119</span>      toSearchName = toSearch.getName();<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      if (toSearchName == null || toSearchName.length() &lt;= 0) {<a name="line.120"></a>
+<span class="sourceLineNo">121</span>        break;<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      }<a name="line.122"></a>
+<span class="sourceLineNo">123</span>      // Move up a parent on each path for next go around.  Path doesn't let us go off the end.<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      tailPath = tailPath.getParent();<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      toSearch = toSearch.getParent();<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    } while(tailName.equals(toSearchName));<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    return result;<a name="line.127"></a>
+<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>  /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>   * Delete if exists.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   * @param fs filesystem object<a name="line.132"></a>
+<span class="sourceLineNo">133</span>   * @param dir directory to delete<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   * @return True if deleted &lt;code&gt;dir&lt;/code&gt;<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   * @throws IOException e<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   */<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public static boolean deleteDirectory(final FileSystem fs, final Path dir) throws IOException {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    return fs.exists(dir) &amp;&amp; fs.delete(dir, true);<a name="line.138"></a>
+<span class="sourceLineNo">139</span>  }<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>  /**<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   * Return the number of bytes that large input files should be optimally<a name="line.142"></a>
+<span class="sourceLineNo">143</span>   * be split into to minimize i/o time.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>   *<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   * @param fs filesystem object<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   * @return the default block size for the path's filesystem<a name="line.146"></a>
+<span class="sourceLineNo">147</span>   */<a name="line.147"></a>
+<span class="sourceLineNo">148</span>  public static long getDefaultBlockSize(final FileSystem fs, final Path path) {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    return fs.getDefaultBlockSize(path);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
+<span class="sourceLineNo">151</span><a name="line.151"></a>
+<span class="sourceLineNo">152</span>  /*<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   * Get the default replication.<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   *<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   * @param fs filesystem object<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   * @param f path of file<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   * @return default replication for the path's filesystem<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   */<a name="line.158"></a>
+<span class="sourceLineNo">159</span>  public static short getDefaultReplication(final FileSystem fs, final Path path) {<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    return fs.getDefaultReplication(path);<a name="line.160"></a>
+<span class="sourceLineNo">161</span>  }<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>  /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   * Returns the default buffer size to use during writes.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>   *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   * The size of the buffer should probably be a multiple of hardware<a name="line.166"></a>
+<span class="sourceLineNo">167</span>   * page size (4096 on Intel x86), and it determines how much data is<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   * buffered during read and write operations.<a name="line.168"></a>
+<span class="sourceLineNo">169</span>   *<a name="line.169"></a>
+<span class="sourceLineNo">170</span>   * @param fs filesystem object<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   * @return default buffer size to use during writes<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   */<a name="line.172"></a>
+<span class="sourceLineNo">173</span>  public static int getDefaultBufferSize(final FileSystem fs) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    return fs.getConf().getInt("io.file.buffer.size", 4096);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>  }<a name="line.175"></a>
+<span class="sourceLineNo">176</span><a name="line.176"></a>
+<span class="sourceLineNo">177</span>  /**<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   * Create the specified file on the filesystem. By default, this will:<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   * &lt;ol&gt;<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   * &lt;li&gt;apply the umask in the configuration (if it is enabled)&lt;/li&gt;<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   * &lt;li&gt;use the fs configured buffer size (or 4096 if not set)&lt;/li&gt;<a name="line.181"></a>
+<span class="sourceLineNo">182</span>   * &lt;li&gt;use the default replication&lt;/li&gt;<a name="line.182"></a>
+<span class="sourceLineNo">183</span>   * &lt;li&gt;use the default block size&lt;/li&gt;<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   * &lt;li&gt;not track progress&lt;/li&gt;<a name="line.184"></a>
+<span class="sourceLineNo">185</span>   * &lt;/ol&gt;<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   *<a name="line.186"></a>
+<span class="sourceLineNo">187</span>   * @param fs {@link FileSystem} on which to write the file<a name="line.187"></a>
+<span class="sourceLineNo">188</span>   * @param path {@link Path} to the file to write<a name="line.188"></a>
+<span class="sourceLineNo">189</span>   * @param perm intial permissions<a name="line.189"></a>
+<span class="sourceLineNo">190</span>   * @param overwrite Whether or not the created file should be overwritten.<a name="line.190"></a>
+<span class="sourceLineNo">191</span>   * @return output stream to the created file<a name="line.191"></a>
+<span class="sourceLineNo">192</span>   * @throws IOException if the file cannot be created<a name="line.192"></a>
+<span class="sourceLineNo">193</span>   */<a name="line.193"></a>
+<span class="sourceLineNo">194</span>  public static FSDataOutputStream create(FileSystem fs, Path path,<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      FsPermission perm, boolean overwrite) throws IOException {<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    if (LOG.isTraceEnabled()) {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      LOG.trace("Creating file={} with permission={}, overwrite={}", path, perm, overwrite);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    }<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    return fs.create(path, perm, overwrite, getDefaultBufferSize(fs),<a name="line.199"></a>
+<span class="sourceLineNo">200</span>        getDefaultReplication(fs, path), getDefaultBlockSize(fs, path), null);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>  }<a name="line.201"></a>
+<span class="sourceLineNo">202</span><a name="line.202"></a>
+<span class="sourceLineNo">203</span>  /**<a name="line.203"></a>
+<span class="sourceLineNo">204</span>   * Get the file permissions specified in the configuration, if they are<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   * enabled.<a name="line.205"></a>
+<span class="sourceLineNo">206</span>   *<a name="line.206"></a>
+<span class="sourceLineNo">207</span>   * @param fs filesystem that the file will be created on.<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   * @param conf configuration to read for determining if permissions are<a name="line.208"></a>
+<span class="sourceLineNo">209</span>   *          enabled and which to use<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   * @param permssionConfKey property key in the configuration to use when<a name="line.210"></a>
+<span class="sourceLineNo">211</span>   *          finding the permission<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   * @return the permission to use when creating a new file on the fs. If<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   *         special permissions are not specified in the configuration, then<a name="line.213"></a>
+<span class="sourceLineNo">214</span>   *         the default permissions on the the fs will be returned.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   */<a name="line.215"></a>
+<span class="sourceLineNo">216</span>  public static FsPermission getFilePermissions(final FileSystem fs,<a name="line.216"></a>
+<span class="sourceLineNo">217</span>      final Configuration conf, final String permssionConfKey) {<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    boolean enablePermissions = conf.getBoolean(<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        HConstants.ENABLE_DATA_FILE_UMASK, false);<a name="line.219"></a>
+<span class="sourceLineNo">220</span><a name="line.220"></a>
+<span class="sourceLineNo">221</span>    if (enablePermissions) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>      try {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>        FsPermission perm = new FsPermission(FULL_RWX_PERMISSIONS);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>        // make sure that we have a mask, if not, go default.<a name="line.224"></a>
+<span class="sourceLineNo">225</span>        String mask = conf.get(permssionConfKey);<a name="line.225"></a>
+<span class="sourceLineNo">226</span>        if (mask == null) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>          return FsPermission.getFileDefault();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        }<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        // appy the umask<a name="line.229"></a>
+<span class="sourceLineNo">230</span>        FsPermission umask = new FsPermission(mask);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>        return perm.applyUMask(umask);<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      } catch (IllegalArgumentException e) {<a name="line.232"></a>
+<span class="sourceLineNo">233</span>        LOG.warn(<a name="line.233"></a>
+<span class="sourceLineNo">234</span>            "Incorrect umask attempted to be created: "<a name="line.234"></a>
+<span class="sourceLineNo">235</span>                + conf.get(permssionConfKey)<a name="line.235"></a>
+<span class="sourceLineNo">236</span>                + ", using default file permissions.", e);<a name="line.236"></a>
+<span class="sourceLineNo">237</span>        return FsPermission.getFileDefault();<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      }<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    }<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    return FsPermission.getFileDefault();<a name="line.240"></a>
+<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
+<span class="sourceLineNo">242</span><a name="line.242"></a>
+<span class="sourceLineNo">243</span>  /**<a name="line.243"></a>
+<span class="sourceLineNo">244</span>   * Verifies root directory path is a valid URI with a scheme<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   *<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   * @param root root directory path<a name="line.246"></a>
+<span class="sourceLineNo">247</span>   * @return Passed &lt;code&gt;root&lt;/code&gt; argument.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   * @throws IOException if not a valid URI with a scheme<a name="line.248"></a>
+<span class="sourceLineNo">249</span>   */<a name="line.249"></a>
+<span class="sourceLineNo">250</span>  public static Path validateRootPath(Path root) throws IOException {<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    try {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      URI rootURI = new URI(root.toString());<a name="line.252"></a>
+<span class="sourceLineNo">253</span>      String scheme = rootURI.getScheme();<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      if (scheme == null) {<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        throw new IOException("Root directory does not have a scheme");<a name="line.255"></a>
+<span class="sourceLineNo">256</span>      }<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      return root;<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    } catch (URISyntaxException e) {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      throw new IOException("Root directory path is not a valid " +<a name="line.259"></a>
+<span class="sourceLineNo">260</span>        "URI -- check your " + HConstants.HBASE_DIR + " configuration", e);<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    }<a name="line.261"></a>
+<span class="sourceLineNo">262</span>  }<a name="line.262"></a>
+<span class="sourceLineNo">263</span><a name="line.263"></a>
+<span class="sourceLineNo">264</span>  /**<a name="line.264"></a>
+<span class="sourceLineNo">265</span>   * Checks for the presence of the WAL log root path (using the provided conf object) in the given<a name="line.265"></a>
+<span class="sourceLineNo">266</span>   * path. If it exists, this method removes it and returns the String representation of remaining<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   * relative path.<a name="line.267"></a>
+<span class="sourceLineNo">268</span>   * @param path must not be null<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   * @param conf must not be null<a name="line.269"></a>
+<span class="sourceLineNo">270</span>   * @return String representation of the remaining relative path<a name="line.270"></a>
+<span class="sourceLineNo">271</span>   * @throws IOException from underlying filesystem<a name="line.271"></a>
+<span class="sourceLineNo">272</span>   */<a name="line.272"></a>
+<span class="sourceLineNo">273</span>  public static String removeWALRootPath(Path path, final Configuration conf) throws IOException {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    Path root = getWALRootDir(conf);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>    String pathStr = path.toString();<a name="line.275"></a>
+<span class="sourceLineNo">276</span>    // check that the path is absolute... it has the root path in it.<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    if (!pathStr.startsWith(root.toString())) {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      return pathStr;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    }<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    // if not, return as it is.<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    return pathStr.substring(root.toString().length() + 1);// remove the "/" too.<a name="line.281"></a>
+<span class="sourceLineNo">282</span>  }<a name="line.282"></a>
+<span class="sourceLineNo">283</span><a name="line.283"></a>
+<span class="sourceLineNo">284</span>  /**<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   * Return the 'path' component of a Path.  In Hadoop, Path is a URI.  This<a name="line.285"></a>
+<span class="sourceLineNo">286</span>   * method returns the 'path' component of a Path's URI: e.g. If a Path is<a name="line.286"></a>
+<span class="sourceLineNo">287</span>   * &lt;code&gt;hdfs://example.org:9000/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;,<a name="line.287"></a>
+<span class="sourceLineNo">288</span>   * this method returns &lt;code&gt;/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;.<a name="line.288"></a>
+<span class="sourceLineNo">289</span>   * This method is useful if you want to print out a Path without qualifying<a name="line.289"></a>
+<span class="sourceLineNo">290</span>   * Filesystem instance.<a name="line.290"></a>
+<span class="sourceLineNo">291</span>   * @param p Filesystem Path whose 'path' component we are to return.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>   * @return Path portion of the Filesystem<a name="line.292"></a>
+<span class="sourceLineNo">293</span>   */<a name="line.293"></a>
+<span class="sourceLineNo">294</span>  public static String getPath(Path p) {<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    return p.toUri().getPath();<a name="line.295"></a>
+<span class="sourceLineNo">296</span>  }<a name="line.296"></a>
+<span class="sourceLineNo">297</span><a name="line.297"></a>
+<span class="sourceLineNo">298</span>  /**<a name="line.298"></a>
+<span class="sourceLineNo">299</span>   * @param c configuration<a name="line.299"></a>
+<span class="sourceLineNo">300</span>   * @return {@link Path} to hbase root directory from<a name="line.300"></a>
+<span class="sourceLineNo">301</span>   *     configuration as a qualified Path.<a name="line.301"></a>
+<span class="sourceLineNo">302</span>   * @throws IOException e<a name="line.302"></a>
+<span class="sourceLineNo">303</span>   */<a name="line.303"></a>
+<span class="sourceLineNo">304</span>  public static Path getRootDir(final Configuration c) throws IOException {<a name="line.304"></a>
+<span class="sourceLineNo">305</span>    Path p = new Path(c.get(HConstants.HBASE_DIR));<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    FileSystem fs = p.getFileSystem(c);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.307"></a>
+<span class="sourceLineNo">308</span>  }<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>  public static void setRootDir(final Configuration c, final Path root) {<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    c.set(HConstants.HBASE_DIR, root.toString());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>  }<a name="line.312"></a>
+<span class="sourceLineNo">313</span><a name="line.313"></a>
+<span class="sourceLineNo">314</span>  public static void setFsDefault(final Configuration c, final Path root) {<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    c.set("fs.defaultFS", root.toString());    // for hadoop 0.21+<a name="line.315"></a>
+<span class="sourceLineNo">316</span>  }<a name="line.316"></a>
+<span class="sourceLineNo">317</span><a name="line.317"></a>
+<span class="sourceLineNo">318</span>  public static void setFsDefault(final Configuration c, final String uri) {<a name="line.318"></a>
+<span class="sourceLineNo">319</span>    c.set("fs.defaultFS", uri); // for hadoop 0.21+<a name="line.319"></a>
+<span class="sourceLineNo">320</span>  }<a name="line.320"></a>
+<span class="sourceLineNo">321</span><a name="line.321"></a>
+<span class="sourceLineNo">322</span>  public static FileSystem getRootDirFileSystem(final Configuration c) throws IOException {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    Path p = getRootDir(c);<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    return p.getFileSystem(c);<a name="line.324"></a>
+<span class="sourceLineNo">325</span>  }<a name="line.325"></a>
+<span class="sourceLineNo">326</span><a name="line.326"></a>
+<span class="sourceLineNo">327</span>  /**<a name="line.327"></a>
+<span class="sourceLineNo">328</span>   * @param c configuration<a name="line.328"></a>
+<span class="sourceLineNo">329</span>   * @return {@link Path} to hbase log root directory: e.g. {@value HBASE_WAL_DIR} from<a name="line.329"></a>
+<span class="sourceLineNo">330</span>   *     configuration as a qualified Path. Defaults to HBase root dir.<a name="line.330"></a>
+<span class="sourceLineNo">331</span>   * @throws IOException e<a name="line.331"></a>
+<span class="sourceLineNo">332</span>   */<a name="line.332"></a>
+<span class="sourceLineNo">333</span>  public static Path getWALRootDir(final Configuration c) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Path p = new Path(c.get(HBASE_WAL_DIR, c.get(HConstants.HBASE_DIR)));<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    if (!isValidWALRootDir(p, c)) {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>      return getRootDir(c);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>    }<a name="line.337"></a>
+<span class="sourceLineNo">338</span>    FileSystem fs = p.getFileSystem(c);<a name="line.338"></a>
+<span class="sourceLineNo">339</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  }<a name="line.340"></a>
+<span class="sourceLineNo">341</span><a name="line.341"></a>
+<span class="sourceLineNo">342</span>  /**<a name="line.342"></a>
+<span class="sourceLineNo">343</span>   * Returns the URI in the string format<a name="line.343"></a>
+<span class="sourceLineNo">344</span>   * @param c configuration<a name="line.344"></a>
+<span class="sourceLineNo">345</span>   * @param p path<a name="line.345"></a>
+<span class="sourceLineNo">346</span>   * @return - the URI's to string format<a name="line.346"></a>
+<span class="sourceLineNo">347</span>   * @throws IOException<a name="line.347"></a>
+<span class="sourceLineNo">348</span>   */<a name="line.348"></a>
+<span class="sourceLineNo">349</span>  public static String getDirUri(final Configuration c, Path p) throws IOException {<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    if (p.toUri().getScheme() != null) {<a name="line.350"></a>
+<span class="sourceLineNo">351</span>      return p.toUri().toString();<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    }<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    return null;<a name="line.353"></a>
+<span class="sourceLineNo">354</span>  }<a name="line.354"></a>
+<span class="sourceLineNo">355</span><a name="line.355"></a>
+<span class="sourceLineNo">356</span>  public static void setWALRootDir(final Configuration c, final Path root) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    c.set(HBASE_WAL_DIR, root.toString());<a name="line.357"></a>
+<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>  public static FileSystem getWALFileSystem(final Configuration c) throws IOException {<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    Path p = getWALRootDir(c);<a name="line.361"></a>
+<span class="sourceLineNo">362</span>    FileSystem fs = p.getFileSystem(c);<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    // hadoop-core does fs caching, so need to propagate this if set<a name="line.363"></a>
+<span class="sourceLineNo">364</span>    String enforceStreamCapability = c.get(UNSAFE_STREAM_CAPABILITY_ENFORCE);<a name="line.364"></a>
+<span class="sourceLineNo">365</span>    if (enforceStreamCapability != null) {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>      fs.getConf().set(UNSAFE_STREAM_CAPABILITY_ENFORCE, enforceStreamCapability);<a name="line.366"></a>
+<span class="sourceLineNo">367</span>    }<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    return fs;<a name="line.368"></a>
+<span class="sourceLineNo">369</span>  }<a name="line.369"></a>
+<span class="sourceLineNo">370</span><a name="line.370"></a>
+<span class="sourceLineNo">371</span>  private static boolean isValidWALRootDir(Path walDir, final Configuration c) throws IOException {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    Path rootDir = getRootDir(c);<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    FileSystem fs = walDir.getFileSystem(c);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Path qualifiedWalDir = walDir.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    if (!qualifiedWalDir.equals(rootDir)) {<a name="line.375"></a>
+<span class="sourceLineNo">376</span>      if (qualifiedWalDir.toString().startsWith(rootDir.toString() + "/")) {<a name="line.376"></a>
+<span class="sourceLineNo">377</span>        throw new IllegalStateException("Illegal WAL directory specified. " +<a name="line.377"></a>
+<span class="sourceLineNo">378</span>          "WAL directories are not permitted to be under root directory: rootDir=" +<a name="line.378"></a>
+<span class="sourceLineNo">379</span>          rootDir.toString() + ", qualifiedWALDir=" + qualifiedWalDir);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>      }<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    }<a name="line.381"></a>
+<span class="sourceLineNo">382</span>    return true;<a name="line.382"></a>
+<span class="sourceLineNo">383</span>  }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>  /**<a name="line.385"></a>
+<span class="sourceLineNo">386</span>   * Returns the WAL region directory based on the given table name and region name<a name="line.386"></a>
+<span class="sourceLineNo">387</span>   * @param conf configuration to determine WALRootDir<a name="line.387"></a>
+<span class="sourceLineNo">388</span>   * @param tableName Table that the region is under<a name="line.388"></a>
+<span class="sourceLineNo">389</span>   * @param encodedRegionName Region name used for creating the final region directory<a name="line.389"></a>
+<span class="sourceLineNo">390</span>   * @return the region directory used to store WALs under the WALRootDir<a name="line.390"></a>
+<span class="sourceLineNo">391</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.391"></a>
+<span class="sourceLineNo">392</span>   */<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  public static Path getWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.393"></a>
+<span class="sourceLineNo">394</span>      final String encodedRegionName) throws IOException {<a name="line.394"></a>
+<span class="sourceLineNo">395</span>    return new Path(getWALTableDir(conf, tableName), encodedRegionName);<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  }<a name="line.396"></a>
+<span class="sourceLineNo">397</span><a name="line.397"></a>
+<span class="sourceLineNo">398</span>  /**<a name="line.398"></a>
+<span class="sourceLineNo">399</span>   * Returns the Table directory under the WALRootDir for the specified table name<a name="line.399"></a>
+<span class="sourceLineNo">400</span>   * @param conf configuration used to get the WALRootDir<a name="line.400"></a>
+<span class="sourceLineNo">401</span>   * @param tableName Table to get the directory for<a name="line.401"></a>
+<span class="sourceLineNo">402</span>   * @return a path to the WAL table directory for the specified table<a name="line.402"></a>
+<span class="sourceLineNo">403</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.403"></a>
+<span class="sourceLineNo">404</span>   */<a name="line.404"></a>
+<span class="sourceLineNo">405</span>  public static Path getWALTableDir(final Configuration conf, final TableName tableName)<a name="line.405"></a>
+<span class="sourceLineNo">406</span>      throws IOException {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>    Path baseDir = new Path(getWALRootDir(conf), HConstants.BASE_NAMESPACE_DIR);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    return new Path(new Path(baseDir, tableName.getNamespaceAsString()),<a name="line.408"></a>
+<span class="sourceLineNo">409</span>      tableName.getQualifierAsString());<a name="line.409"></a>
+<span class="sourceLineNo">410</span>  }<a name="line.410"></a>
+<span class="sourceLineNo">411</span><a name="line.411"></a>
+<span class="sourceLineNo">412</span>  /**<a name="line.412"></a>
+<span class="sourceLineNo">413</span>   * For backward compatibility with HBASE-20734, where we store recovered edits in a wrong<a name="line.413"></a>
+<span class="sourceLineNo">414</span>   * directory without BASE_NAMESPACE_DIR. See HBASE-22617 for more details.<a name="line.414"></a>
+<span class="sourceLineNo">415</span>   * @deprecated For compatibility, will be removed in 4.0.0.<a name="line.415"></a>
+<span class="sourceLineNo">416</span>   */<a name="line.416"></a>
+<span class="sourceLineNo">417</span>  @Deprecated<a name="line.417"></a>
+<span class="sourceLineNo">418</span>  public static Path getWrongWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.418"></a>
+<span class="sourceLineNo">419</span>      final String encodedRegionName) throws IOException {<a name="line.419"></a>
+<span class="sourceLineNo">420</span>    Path wrongTableDir = new Path(new Path(getWALRootDir(conf), tableName.getNamespaceAsString()),<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      tableName.getQualifierAsString());<a name="line.421"></a>
+<span class="sourceLineNo">422</span>    return new Path(wrongTableDir, encodedRegionName);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>  }<a name="line.423"></a>
+<span class="sourceLineNo">424</span><a name="line.424"></a>
+<span class="sourceLineNo">425</span>  /**<a name="line.425"></a>
+<span class="sourceLineNo">426</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the table directory under<a name="line.426"></a>
+<span class="sourceLineNo">427</span>   * path rootdir<a name="line.427"></a>
+<span class="sourceLineNo">428</span>   *<a name="line.428"></a>
+<span class="sourceLineNo">429</span>   * @param rootdir qualified path of HBase root directory<a name="line.429"></a>
+<span class="sourceLineNo">430</span>   * @param tableName name of table<a name="line.430"></a>
+<span class="sourceLineNo">431</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.431"></a>
+<span class="sourceLineNo">432</span>   */<a name="line.432"></a>
+<span class="sourceLineNo">433</span>  public static Path getTableDir(Path rootdir, final TableName tableName) {<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    return new Path(getNamespaceDir(rootdir, tableName.getNamespaceAsString()),<a name="line.434"></a>
+<span class="sourceLineNo">435</span>        tableName.getQualifierAsString());<a name="line.435"></a>
+<span class="sourceLineNo">436</span>  }<a name="line.436"></a>
+<span class="sourceLineNo">437</span><a name="line.437"></a>
+<span class="sourceLineNo">438</span>  /**<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the region directory under<a name="line.439"></a>
+<span class="sourceLineNo">440</span>   * path rootdir<a name="line.440"></a>
+<span class="sourceLineNo">441</span>   *<a name="line.441"></a>
+<span class="sourceLineNo">442</span>   * @param rootdir qualified path of HBase root directory<a name="line.442"></a>
+<span class="sourceLineNo">443</span>   * @param tableName name of table<a name="line.443"></a>
+<span class="sourceLineNo">444</span>   * @param regionName The encoded region name<a name="line.444"></a>
+<span class="sourceLineNo">445</span>   * @return {@link org.apache.hadoop.fs.Path} for region<a name="line.445"></a>
+<span class="sourceLineNo">446</span>   */<a name="line.446"></a>
+<span class="sourceLineNo">447</span>  public static Path getRegionDir(Path rootdir, TableName tableName, String regionName) {<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    return new Path(getTableDir(rootdir, tableName), regionName);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>  }<a name="line.449"></a>
+<span class="sourceLineNo">450</span><a name="line.450"></a>
+<span class="sourceLineNo">451</span>  /**<a name="line.451"></a>
+<span class="sourceLineNo">452</span>   * Returns the {@link org.apache.hadoop.hbase.TableName} object representing<a name="line.452"></a>
+<span class="sourceLineNo">453</span>   * the table directory under<a name="line.453"></a>
+<span class="sourceLineNo">454</span>   * path rootdir<a name="line.454"></a>
+<span class="sourceLineNo">455</span>   *<a name="line.455"></a>
+<span class="sourceLineNo">456</span>   * @param tablePath path of table<a name="line.456"></a>
+<span class="sourceLineNo">457</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.457"></a>
+<span class="sourceLineNo">458</span>   */<a name="line.458"></a>
+<span class="sourceLineNo">459</span>  public static TableName getTableName(Path tablePath) {<a name="line.459"></a>
+<span class="sourceLineNo">460</span>    return TableName.valueOf(tablePath.getParent().getName(), tablePath.getName());<a name="line.460"></a>
+<span class="sourceLineNo">461</span>  }<a name="line.461"></a>
+<span class="sourceLineNo">462</span><a name="line.462"></a>
+<span class="sourceLineNo">463</span>  /**<a name="line.463"></a>
+<span class="sourceLineNo">464</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing<a name="line.464"></a>
+<span class="sourceLineNo">465</span>   * the namespace directory under path rootdir<a name="line.465"></a>
+<span class="sourceLineNo">466</span>   *<a name="line.466"></a>
+<span class="sourceLineNo">467</span>   * @param rootdir qualified path of HBase root directory<a name="line.467"></a>
+<span class="sourceLineNo">468</span>   * @param namespace namespace name<a name="line.468"></a>
+<span class="sourceLineNo">469</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.469"></a>
+<span class="sourceLineNo">470</span>   */<a name="line.470"></a>
+<span class="sourceLineNo">471</span>  public static Path getNamespaceDir(Path rootdir, final String namespace) {<a name="line.471"></a>
+<span class="sourceLineNo">472</span>    return new Path(rootdir, new Path(HConstants.BASE_NAMESPACE_DIR,<a name="line.472"></a>
+<span class="sourceLineNo">473</span>        new Path(namespace)));<a name="line.473"></a>
+<span class="sourceLineNo">474</span>  }<a name="line.474"></a>
+<span class="sourceLineNo">475</span><a name="line.475"></a>
+<span class="sourceLineNo">476</span>  // this mapping means that under a federated FileSystem implementation, we'll<a name="line.476"></a>
+<span class="sourceLineNo">477</span>  // only log the first failure from any of the underlying FileSystems at WARN and all others<a name="line.477"></a>
+<span class="sourceLineNo">478</span>  // will be at DEBUG.<a name="line.478"></a>
+<span class="sourceLineNo">479</span>  private static final Map&lt;FileSystem, Boolean&gt; warningMap = new ConcurrentHashMap&lt;&gt;();<a name="line.479"></a>
+<span class="sourceLineNo">480</span><a name="line.480"></a>
+<span class="sourceLineNo">481</span>  /**<a name="line.481"></a>
+<span class="sourceLineNo">482</span>   * Sets storage policy for given path.<a name="line.482"></a>
+<span class="sourceLineNo">483</span>   * If the passed path is a directory, we'll set the storage policy for all files<a name="line.483"></a>
+<span class="sourceLineNo">484</span>   * created in the future in said directory. Note that this change in storage<a name="line.484"></a>
+<span class="sourceLineNo">485</span>   * policy takes place at the FileSystem level; it will persist beyond this RS's lifecycle.<a name="line.485"></a>
+<span class="sourceLineNo">486</span>   * If we're running on a version of FileSystem that doesn't support the given storage policy<a name="line.486"></a>
+<span class="sourceLineNo">487</span>   * (or storage policies at all), then we'll issue a log message and continue.<a name="line.487"></a>
+<span class="sourceLineNo">488</span>   *<a name="line.488"></a>
+<span class="sourceLineNo">489</span>   * See http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html<a name="line.489"></a>
+<span class="sourceLineNo">490</span>   *<a name="line.490"></a>
+<span class="sourceLineNo">491</span>   * @param fs We only do anything it implements a setStoragePolicy method<a name="line.491"></a>
+<span class="sourceLineNo">492</span>   * @param path the Path whose storage policy is to be set<a name="line.492"></a>
+<span class="sourceLineNo">493</span>   * @param storagePolicy Policy to set on &lt;code&gt;path&lt;/code&gt;; see hadoop 2.6+<a name="line.493"></a>
+<span class="sourceLineNo">494</span>   *   org.apache.hadoop.hdfs.protocol.HdfsConstants for possible list e.g<a name="line.494"></a>
+<span class="sourceLineNo">495</span>   *   'COLD', 'WARM', 'HOT', 'ONE_SSD', 'ALL_SSD', 'LAZY_PERSIST'.<a name="line.495"></a>
+<span class="sourceLineNo">496</span>   */<a name="line.496"></a>
+<span class="sourceLineNo">497</span>  public static void setStoragePolicy(final FileSystem fs, final Path path,<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      final String storagePolicy) {<a name="line.498"></a>
+<span class="sourceLineNo">499</span>    try {<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      setStoragePolicy(fs, path, storagePolicy, false);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>    } catch (IOException e) {<a name="line.501"></a>
+<span class="sourceLineNo">502</span>      // should never arrive here<a name="line.502"></a>
+<span class="sourceLineNo">503</span>      LOG.warn("We have chosen not to throw exception but some unexpectedly thrown out", e);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    }<a name="line.504"></a>
+<span class="sourceLineNo">505</span>  }<a name="line.505"></a>
+<span class="sourceLineNo">506</span><a name="line.506"></a>
+<span class="sourceLineNo">507</span>  static void setStoragePolicy(final FileSystem fs, final Path path, final String storagePolicy,<a name="line.507"></a>
+<span class="sourceLineNo">508</span>      boolean throwException) throws IOException {<a name="line.508"></a>
+<span class="sourceLineNo">509</span>    if (storagePolicy == null) {<a name="line.509"></a>
+<span class="sourceLineNo">510</span>      if (LOG.isTraceEnabled()) {<a name="line.510"></a>
+<span class="sourceLineNo">511</span>        LOG.trace("We were passed a null storagePolicy, exiting early.");<a name="line.511"></a>
+<span class="sourceLineNo">512</span>      }<a name="line.512"></a>
+<span class="sourceLineNo">513</span>      return;<a name="line.513"></a>
+<span class="sourceLineNo">514</span>    }<a name="line.514"></a>
+<span class="sourceLineNo">515</span>    String trimmedStoragePolicy = storagePolicy.trim();<a name="line.515"></a>
+<span class="sourceLineNo">516</span>    if (trimmedStoragePolicy.isEmpty()) {<a name="line.516"></a>
+<span class="sourceLineNo">517</span>      LOG.trace("We were passed an empty storagePolicy, exiting early.");<a name="line.517"></a>
+<span class="sourceLineNo">518</span>      return;<a name="line.518"></a>
+<span class="sourceLineNo">519</span>    } else {<a name="line.519"></a>
+<span class="sourceLineNo">520</span>      trimmedStoragePolicy = trimmedStoragePolicy.toUpperCase(Locale.ROOT);<a name="line.520"></a>
+<span class="sourceLineNo">521</span>    }<a name="line.521"></a>
+<span class="sourceLineNo">522</span>    if (trimmedStoragePolicy.equals(HConstants.DEFER_TO_HDFS_STORAGE_POLICY)) {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>      LOG.trace("We were passed the defer-to-hdfs policy {}, exiting early.", trimmedStoragePolicy);<a name="line.523"></a>
+<span class="sourceLineNo">524</span>      return;<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    }<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    try {<a name="line.526"></a>
+<span class="sourceLineNo">527</span>      invokeSetStoragePolicy(fs, path, trimmedStoragePolicy);<a name="line.527"></a>
+<span class="sourceLineNo">528</span>    } catch (IOException e) {<a name="line.528"></a>
+<span class="sourceLineNo">529</span>      LOG.trace("Failed to invoke set storage policy API on FS", e);<a name="line.529"></a>
+<span class="sourceLineNo">530</span>      if (throwException) {<a name="line.530"></a>
+<span class="sourceLineNo">531</span>        throw e;<a name="line.531"></a>
+<span class="sourceLineNo">532</span>      }<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    }<a name="line.533"></a>
+<span class="sourceLineNo">534</span>  }<a name="line.534"></a>
+<span class="sourceLineNo">535</span><a name="line.535"></a>
+<span class="sourceLineNo">536</span>  /*<a name="line.536"></a>
+<span class="sourceLineNo">537</span>   * All args have been checked and are good. Run the setStoragePolicy invocation.<a name="line.537"></a>
+<span class="sourceLineNo">538</span>   */<a name="line.538"></a>
+<span class="sourceLineNo">539</span>  private static void invokeSetStoragePolicy(final FileSystem fs, final Path path,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>      final String storagePolicy) throws IOException {<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    Exception toThrow = null;<a name="line.541"></a>
+<span class="sourceLineNo">542</span><a name="line.542"></a>
+<span class="sourceLineNo">543</span>    try {<a name="line.543"></a>
+<span class="sourceLineNo">544</span>      fs.setStoragePolicy(path, storagePolicy);<a name="line.544"></a>
+<span class="sourceLineNo">545</span>      LOG.debug("Set storagePolicy={} for path={}", storagePolicy, path);<a name="line.545"></a>
+<span class="sourceLineNo">546</span>    } catch (Exception e) {<a name="line.546"></a>
+<span class="sourceLineNo">547</span>      toThrow = e;<a name="line.547"></a>
+<span class="sourceLineNo">548</span>      // This swallows FNFE, should we be throwing it? seems more likely to indicate dev<a name="line.548"></a>
+<span class="sourceLineNo">549</span>      // misuse than a runtime problem with HDFS.<a name="line.549"></a>
+<span class="sourceLineNo">550</span>      if (!warningMap.containsKey(fs)) {<a name="line.550"></a>
+<span class="sourceLineNo">551</span>        warningMap.put(fs, true);<a name="line.551"></a>
+<span class="sourceLineNo">552</span>        LOG.warn("Unable to set storagePolicy=" + storagePolicy + " for path=" + path + ". " +<a name="line.552"></a>
+<span class="sourceLineNo">553</span>            "DEBUG log level might have more details.", e);<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      } else if (LOG.isDebugEnabled()) {<a name="line.554"></a>
+<span class="sourceLineNo">555</span>        LOG.debug("Unable to set storagePolicy=" + storagePolicy + " for path=" + path, e);<a name="line.555"></a>
+<span class="sourceLineNo">556</span>      }<a name="line.556"></a>
+<span class="sourceLineNo">557</span><a name="line.557"></a>
+<span class="sourceLineNo">558</span>      // Hadoop 2.8+, 3.0-a1+ added FileSystem.setStoragePolicy with a default implementation<a name="line.558"></a>
+<span class="sourceLineNo">559</span>      // that throws UnsupportedOperationException<a name="line.559"></a>
+<span class="sourceLineNo">560</span>      if (e instanceof UnsupportedOperationException) {<a name="line.560"></a>
+<span class="sourceLineNo">561</span>        if (LOG.isDebugEnabled()) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>          LOG.debug("The underlying FileSystem implementation doesn't support " +<a name="line.562"></a>
+<span class="sourceLineNo">563</span>              "setStoragePolicy. This is probably intentional on their part, since HDFS-9345 " +<a name="line.563"></a>
+<span class="sourceLineNo">564</span>              "appears to be present in your version of Hadoop. For more information check " +<a name="line.564"></a>
+<span class="sourceLineNo">565</span>              "the Hadoop documentation on 'ArchivalStorage', the Hadoop FileSystem " +<a name="line.565"></a>
+<span class="sourceLineNo">566</span>              "specification docs from HADOOP-11981, and/or related documentation from the " +<a name="line.566"></a>
+<span class="sourceLineNo">567</span>              "provider of the underlying FileSystem (its name should appear in the " +<a name="line.567"></a>
+<span class="sourceLineNo">568</span>              "stacktrace that accompanies this message). Note in particular that Hadoop's " +<a name="line.568"></a>
+<span class="sourceLineNo">569</span>              "local filesystem implementation doesn't support storage policies.", e);<a name="line.569"></a>
+<span class="sourceLineNo">570</span>        }<a name="line.570"></a>
+<span class="sourceLineNo">571</span>      }<a name="line.571"></a>
+<span class="sourceLineNo">572</span>    }<a name="line.572"></a>
+<span class="sourceLineNo">573</span><a name="line.573"></a>
+<span class="sourceLineNo">574</span>    if (toThrow != null) {<a name="line.574"></a>
+<span class="sourceLineNo">575</span>      throw new IOException(toThrow);<a name="line.575"></a>
+<span class="sourceLineNo">576</span>    }<a name="line.576"></a>
+<span class="sourceLineNo">577</span>  }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>  /**<a name="line.579"></a>
+<span class="sourceLineNo">580</span>   * @param conf must not be null<a name="line.580"></a>
+<span class="sourceLineNo">581</span>   * @return True if this filesystem whose scheme is 'hdfs'.<a name="line.581"></a>
+<span class="sourceLineNo">582</span>   * @throws IOException from underlying FileSystem<a name="line.582"></a>
+<span class="sourceLineNo">583</span>   */<a name="line.583"></a>
+<span class="sourceLineNo">584</span>  public static boolean isHDFS(final Configuration conf) throws IOException {<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    FileSystem fs = FileSystem.get(conf);<a name="line.585"></a>
+<span class="sourceLineNo">586</span>    String scheme = fs.getUri().getScheme();<a name="line.586"></a>
+<span class="sourceLineNo">587</span>    return scheme.equalsIgnoreCase("hdfs");<a name="line.587"></a>
+<span class="sourceLineNo">588</span>  }<a name="line.588"></a>
+<span class="sourceLineNo">589</span><a name="line.589"></a>
+<span class="sourceLineNo">590</span>  /**<a name="line.590"></a>
+<span class="sourceLineNo">591</span>   * Checks if the given path is the one with 'recovered.edits' dir.<a name="line.591"></a>
+<span class="sourceLineNo">592</span>   * @param path must not be null<a name="line.592"></a>
+<span class="sourceLineNo">593</span>   * @return True if we recovered edits<a name="line.593"></a>
+<span class="sourceLineNo">594</span>   */<a name="line.594"></a>
+<span class="sourceLineNo">595</span>  public static boolean isRecoveredEdits(Path path) {<a name="line.595"></a>
+<span class="sourceLineNo">596</span>    return path.toString().contains(HConstants.RECOVERED_EDITS_DIR);<a name="line.596"></a>
+<span class="sourceLineNo">597</span>  }<a name="line.597"></a>
+<span class="sourceLineNo">598</span><a name="line.598"></a>
+<span class="sourceLineNo">599</span>  /**<a name="line.599"></a>
+<span class="sourceLineNo">600</span>   * @param conf must not be null<a name="line.600"></a>
+<span class="sourceLineNo">601</span>   * @return Returns the filesystem of the hbase rootdir.<a name="line.601"></a>
+<span class="sourceLineNo">602</span>   * @throws IOException from underlying FileSystem<a name="line.602"></a>
+<span class="sourceLineNo">603</span>   */<a name="line.603"></a>
+<span class="sourceLineNo">604</span>  public static FileSystem getCurrentFileSystem(Configuration conf) throws IOException {<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    return getRootDir(conf).getFileSystem(conf);<a name="line.605"></a>
+<span class="sourceLineNo">606</span>  }<a name="line.606"></a>
+<span class="sourceLineNo">607</span><a name="line.607"></a>
+<span class="sourceLineNo">608</span>  /**<a name="line.608"></a>
+<span class="sourceLineNo">609</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.609"></a>
+<span class="sourceLineNo">610</span>   * This accommodates differences between hadoop versions, where hadoop 1<a name="line.610"></a>
+<span class="sourceLineNo">611</span>   * does not throw a FileNotFoundException, and return an empty FileStatus[]<a name="line.611"></a>
+<span class="sourceLineNo">612</span>   * while Hadoop 2 will throw FileNotFoundException.<a name="line.612"></a>
+<span class="sourceLineNo">613</span>   *<a name="line.613"></a>
+<span class="sourceLineNo">614</span>   * Where possible, prefer FSUtils#listStatusWithStatusFilter(FileSystem,<a name="line.614"></a>
+<span class="sourceLineNo">615</span>   * Path, FileStatusFilter) instead.<a name="line.615"></a>
 <span class="sourceLineNo">616</span>   *<a name="line.616"></a>
-<span class="sourceLineNo">617</span>   * Where possible, prefer FSUtils#listStatusWithStatusFilter(FileSystem,<a name="line.617"></a>
-<span class="sourceLineNo">618</span>   * Path, FileStatusFilter) instead.<a name="line.618"></a>
-<span class="sourceLineNo">619</span>   *<a name="line.619"></a>
-<span class="sourceLineNo">620</span>   * @param fs file system<a name="line.620"></a>
-<span class="sourceLineNo">621</span>   * @param dir directory<a name="line.621"></a>
-<span class="sourceLineNo">622</span>   * @param filter path filter<a name="line.622"></a>
-<span class="sourceLineNo">623</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.623"></a>
-<span class="sourceLineNo">624</span>   */<a name="line.624"></a>
-<span class="sourceLineNo">625</span>  public static FileStatus[] listStatus(final FileSystem fs,<a name="line.625"></a>
-<span class="sourceLineNo">626</span>      final Path dir, final PathFilter filter) throws IOException {<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    FileStatus [] status = null;<a name="line.627"></a>
-<span class="sourceLineNo">628</span>    try {<a name="line.628"></a>
-<span class="sourceLineNo">629</span>      status = filter == null ? fs.listStatus(dir) : fs.listStatus(dir, filter);<a name="line.629"></a>
-<span class="sourceLineNo">630</span>    } catch (FileNotFoundException fnfe) {<a name="line.630"></a>
-<span class="sourceLineNo">631</span>      // if directory doesn't exist, return null<a name="line.631"></a>
-<span class="sourceLineNo">632</span>      if (LOG.isTraceEnabled()) {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>        LOG.trace("{} doesn't exist", dir);<a name="line.633"></a>
-<span class="sourceLineNo">634</span>      }<a name="line.634"></a>
+<span class="sourceLineNo">617</span>   * @param fs file system<a name="line.617"></a>
+<span class="sourceLineNo">618</span>   * @param dir directory<a name="line.618"></a>
+<span class="sourceLineNo">619</span>   * @param filter path filter<a name="line.619"></a>
+<span class="sourceLineNo">620</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.620"></a>
+<span class="sourceLineNo">621</span>   */<a name="line.621"></a>
+<span class="sourceLineNo">622</span>  public static FileStatus[] listStatus(final FileSystem fs,<a name="line.622"></a>
+<span class="sourceLineNo">623</span>      final Path dir, final PathFilter filter) throws IOException {<a name="line.623"></a>
+<span class="sourceLineNo">624</span>    FileStatus [] status = null;<a name="line.624"></a>
+<span class="sourceLineNo">625</span>    try {<a name="line.625"></a>
+<span class="sourceLineNo">626</span>      status = filter == null ? fs.listStatus(dir) : fs.listStatus(dir, filter);<a name="line.626"></a>
+<span class="sourceLineNo">627</span>    } catch (FileNotFoundException fnfe) {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>      // if directory doesn't exist, return null<a name="line.628"></a>
+<span class="sourceLineNo">629</span>      if (LOG.isTraceEnabled()) {<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        LOG.trace("{} doesn't exist", dir);<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span>    }<a name="line.632"></a>
+<span class="sourceLineNo">633</span>    if (status == null || status.length &lt; 1) {<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      return null;<a name="line.634"></a>
 <span class="sourceLineNo">635</span>    }<a name="line.635"></a>
-<span class="sourceLineNo">636</span>    if (status == null || status.length &lt; 1) {<a name="line.636"></a>
-<span class="sourceLineNo">637</span>      return null;<a name="line.637"></a>
-<span class="sourceLineNo">638</span>    }<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    return status;<a name="line.639"></a>
-<span class="sourceLineNo">640</span>  }<a name="line.640"></a>
-<span class="sourceLineNo">641</span><a name="line.641"></a>
-<span class="sourceLineNo">642</span>  /**<a name="line.642"></a>
-<span class="sourceLineNo">643</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.643"></a>
-<span class="sourceLineNo">644</span>   * This would accommodates differences between hadoop versions<a name="line.644"></a>
-<span class="sourceLineNo">645</span>   *<a name="line.645"></a>
-<span class="sourceLineNo">646</span>   * @param fs file system<a name="line.646"></a>
-<span class="sourceLineNo">647</span>   * @param dir directory<a name="line.647"></a>
-<span class="sourceLineNo">648</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.648"></a>
-<span class="sourceLineNo">649</span>   */<a name="line.649"></a>
-<span class="sourceLineNo">650</span>  public static FileStatus[] listStatus(final FileSystem fs, final Path dir) throws IOException {<a name="line.650"></a>
-<span class="sourceLineNo">651</span>    return listStatus(fs, dir, null);<a name="line.651"></a>
-<span class="sourceLineNo">652</span>  }<a name="line.652"></a>
-<span class="sourceLineNo">653</span><a name="line.653"></a>
-<span class="sourceLineNo">654</span>  /**<a name="line.654"></a>
-<span class="sourceLineNo">655</span>   * Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call<a name="line.655"></a>
-<span class="sourceLineNo">656</span>   *<a name="line.656"></a>
-<span class="sourceLineNo">657</span>   * @param fs file system<a name="line.657"></a>
-<span class="sourceLineNo">658</span>   * @param dir directory<a name="line.658"></a>
-<span class="sourceLineNo">659</span>   * @return LocatedFileStatus list<a name="line.659"></a>
-<span class="sourceLineNo">660</span>   */<a name="line.660"></a>
-<span class="sourceLineNo">661</span>  public static List&lt;LocatedFileStatus&gt; listLocatedStatus(final FileSystem fs,<a name="line.661"></a>
-<span class="sourceLineNo">662</span>      final Path dir) throws IOException {<a name="line.662"></a>
-<span class="sourceLineNo">663</span>    List&lt;LocatedFileStatus&gt; status = null;<a name="line.663"></a>
-<span class="sourceLineNo">664</span>    try {<a name="line.664"></a>
-<span class="sourceLineNo">665</span>      RemoteIterator&lt;LocatedFileStatus&gt; locatedFileStatusRemoteIterator = fs<a name="line.665"></a>
-<span class="sourceLineNo">666</span>          .listFiles(dir, false);<a name="line.666"></a>
-<span class="sourceLineNo">667</span>      while (locatedFileStatusRemoteIterator.hasNext()) {<a name="line.667"></a>
-<span class="sourceLineNo">668</span>        if (status == null) {<a name="line.668"></a>
-<span class="sourceLineNo">669</span>          status = Lists.newArrayList();<a name="line.669"></a>
-<span class="sourceLineNo">670</span>        }<a name="line.670"></a>
-<span class="sourceLineNo">671</span>        status.add(locatedFileStatusRemoteIterator.next());<a name="line.671"></a>
-<span class="sourceLineNo">672</span>      }<a name="line.672"></a>
-<span class="sourceLineNo">673</span>    } catch (FileNotFoundException fnfe) {<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      // if directory doesn't exist, return null<a name="line.674"></a>
-<span class="sourceLineNo">675</span>      if (LOG.isTraceEnabled()) {<a name="line.675"></a>
-<span class="sourceLineNo">676</span>        LOG.trace("{} doesn't exist", dir);<a name="line.676"></a>
-<span class="sourceLineNo">677</span>      }<a name="line.677"></a>
-<span class="sourceLineNo">678</span>    }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>    return status;<a name="line.679"></a>
-<span class="sourceLineNo">680</span>  }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>  /**<a name="line.682"></a>
-<span class="sourceLineNo">683</span>   * Calls fs.delete() and returns the value returned by the fs.delete()<a name="line.683"></a>
-<span class="sourceLineNo">684</span>   *<a name="line.684"></a>
-<span class="sourceLineNo">685</span>   * @param fs must not be null<a name="line.685"></a>
-<span class="sourceLineNo">686</span>   * @param path must not be null<a name="line.686"></a>
-<span class="sourceLineNo">687</span>   * @param recursive delete tree rooted at path<a name="line.687"></a>
-<span class="sourceLineNo">688</span>   * @return the value returned by the fs.delete()<a name="line.688"></a>
-<span class="sourceLineNo">689</span>   * @throws IOException from underlying FileSystem<a name="line.689"></a>
-<span class="sourceLineNo">690</span>   */<a name="line.690"></a>
-<span class="sourceLineNo">691</span>  public static boolean delete(final FileSystem fs, final Path path, final boolean recursive)<a name="line.691"></a>
-<span class="sourceLineNo">692</span>      throws IOException {<a name="line.692"></a>
-<span class="sourceLineNo">693</span>    return fs.delete(path, recursive);<a name="line.693"></a>
-<span class="sourceLineNo">694</span>  }<a name="line.694"></a>
-<span class="sourceLineNo">695</span><a name="line.695"></a>
-<span class="sourceLineNo">696</span>  /**<a name="line.696"></a>
-<span class="sourceLineNo">697</span>   * Calls fs.exists(). Checks if the specified path exists<a name="line.697"></a>
-<span class="sourceLineNo">698</span>   *<a name="line.698"></a>
-<span class="sourceLineNo">699</span>   * @param fs must not be null<a name="line.699"></a>
-<span class="sourceLineNo">700</span>   * @param path must not be null<a name="line.700"></a>
-<span class="sourceLineNo">701</span>   * @return the value returned by fs.exists()<a name="line.701"></a>
-<span class="sourceLineNo">702</span>   * @throws IOException from underlying FileSystem<a name="line.702"></a>
-<span class="sourceLineNo">703</span>   */<a name="line.703"></a>
-<span class="sourceLineNo">704</span>  public static boolean isExists(final FileSystem fs, final Path path) throws IOException {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>    return fs.exists(path);<a name="line.705"></a>
-<span class="sourceLineNo">706</span>  }<a name="line.706"></a>
-<span class="sourceLineNo">707</span><a name="line.707"></a>
-<span class="sourceLineNo">708</span>  /**<a name="line.708"></a>
-<span class="sourceLineNo">709</span>   * Log the current state of the filesystem from a certain root directory<a name="line.709"></a>
-<span class="sourceLineNo">710</span>   * @param fs filesystem to investigate<a name="line.710"></a>
-<span class="sourceLineNo">711</span>   * @param root root file/directory to start logging from<a name="line.711"></a>
-<span class="sourceLineNo">712</span>   * @param log log to output information<a name="line.712"></a>
-<span class="sourceLineNo">713</span>   * @throws IOException if an unexpected exception occurs<a name="line.713"></a>
-<span class="sourceLineNo">714</span>   */<a name="line.714"></a>
-<span class="sourceLineNo">715</span>  public static void logFileSystemState(final FileSystem fs, final Path root, Logger log)<a name="line.715"></a>
-<span class="sourceLineNo">716</span>      throws IOException {<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    log.debug("File system contents for path {}", root);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    logFSTree(log, fs, root, "|-");<a name="line.718"></a>
-<span class="sourceLineNo">719</span>  }<a name="line.719"></a>
-<span class="sourceLineNo">720</span><a name="line.720"></a>
-<span class="sourceLineNo">721</span>  /**<a name="line.721"></a>
-<span class="sourceLineNo">722</span>   * Recursive helper to log the state of the FS<a name="line.722"></a>
-<span class="sourceLineNo">723</span>   *<a name="line.723"></a>
-<span class="sourceLineNo">724</span>   * @see #logFileSystemState(FileSystem, Path, Logger)<a name="line.724"></a>
-<span class="sourceLineNo">725</span>   */<a name="line.725"></a>
-<span class="sourceLineNo">726</span>  private static void logFSTree(Logger log, final FileSystem fs, final Path root, String prefix)<a name="line.726"></a>
-<span class="sourceLineNo">727</span>      throws IOException {<a name="line.727"></a>
-<span class="sourceLineNo">728</span>    FileStatus[] files = listStatus(fs, root, null);<a name="line.728"></a>
-<span class="sourceLineNo">729</span>    if (files == null) {<a name="line.729"></a>
-<span class="sourceLineNo">730</span>      return;<a name="line.730"></a>
-<span class="sourceLineNo">731</span>    }<a name="line.731"></a>
-<span class="sourceLineNo">732</span><a name="line.732"></a>
-<span class="sourceLineNo">733</span>    for (FileStatus file : files) {<a name="line.733"></a>
-<span class="sourceLineNo">734</span>      if (file.isDirectory()) {<a name="line.734"></a>
-<span class="sourceLineNo">735</span>        log.debug(prefix + file.getPath().getName() + "/");<a name="line.735"></a>
-<span class="sourceLineNo">736</span>        logFSTree(log, fs, file.getPath(), prefix + "---");<a name="line.736"></a>
-<span class="sourceLineNo">737</span>      } else {<a name="line.737"></a>
-<span class="sourceLineNo">738</span>        log.debug(prefix + file.getPath().getName());<a name="line.738"></a>
-<span class="sourceLineNo">739</span>      }<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    }<a name="line.740"></a>
-<span class="sourceLineNo">741</span>  }<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>  public static boolean renameAndSetModifyTime(final FileSystem fs, final Path src, final Path dest)<a name="line.743"></a>
-<span class="sourceLineNo">744</span>      throws IOException {<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    // set the modify time for TimeToLive Cleaner<a name="line.745"></a>
-<span class="sourceLineNo">746</span>    fs.setTimes(src, EnvironmentEdgeManager.currentTime(), -1);<a name="line.746"></a>
-<span class="sourceLineNo">747</span>    return fs.rename(src, dest);<a name="line.747"></a>
-<span class="sourceLineNo">748</span>  }<a name="line.748"></a>
-<span class="sourceLineNo">749</span><a name="line.749"></a>
-<span class="sourceLineNo">750</span>  /**<a name="line.750"></a>
-<span class="sourceLineNo">751</span>   * Check if short circuit read buffer size is set and if not, set it to hbase value.<a name="line.751"></a>
-<span class="sourceLineNo">752</span>   * @param conf must not be null<a name="line.752"></a>
-<span class="sourceLineNo">753</span>   */<a name="line.753"></a>
-<span class="sourceLineNo">754</span>  public static void checkShortCircuitReadBufferSize(final Configuration conf) {<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    final int defaultSize = HConstants.DEFAULT_BLOCKSIZE * 2;<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    final int notSet = -1;<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    // DFSConfigKeys.DFS_CLIENT_READ_SHORTCIRCUIT_BUFFER_SIZE_KEY is only defined in h2<a name="line.757"></a>
-<span class="sourceLineNo">758</span>    final String dfsKey = "dfs.client.read.shortcircuit.buffer.size";<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    int size = conf.getInt(dfsKey, notSet);<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    // If a size is set, return -- we will use it.<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    if (size != notSet) {<a name="line.761"></a>
-<span class="sourceLineNo">762</span>      return;<a name="line.762"></a>
-<span class="sourceLineNo">763</span>    }<a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // But short circuit buffer size is normally not set.  Put in place the hbase wanted size.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    int hbaseSize = conf.getInt("hbase." + dfsKey, defaultSize);<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    conf.setIfUnset(dfsKey, Integer.toString(hbaseSize));<a name="line.766"></a>
-<span class="sourceLineNo">767</span>  }<a name="line.767"></a>
-<span class="sourceLineNo">768</span><a name="line.768"></a>
-<span class="sourceLineNo">769</span>  private static final class DfsBuilderUtility {<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    private static final Class&lt;?&gt; BUILDER;<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    private static final Method REPLICATE;<a name="line.771"></a>
-<span class="sourceLineNo">772</span><a name="line.772"></a>
-<span class="sourceLineNo">773</span>    static {<a name="line.773"></a>
-<span class="sourceLineNo">774</span>      String builderName = "org.apache.hadoop.hdfs.DistributedFileSystem$HdfsDataOutputStreamBuilder";<a name="line.774"></a>
-<span class="sourceLineNo">775</span>      Class&lt;?&gt; builderClass = null;<a name="line.775"></a>
-<span class="sourceLineNo">776</span>      try {<a name="line.776"></a>
-<span class="sourceLineNo">777</span>        builderClass = Class.forName(builderName);<a name="line.777"></a>
-<span class="sourceLineNo">778</span>      } catch (ClassNotFoundException e) {<a name="line.778"></a>
-<span class="sourceLineNo">779</span>        LOG.debug("{} not available, will not set replicate when creating output stream", builderName);<a name="line.779"></a>
-<span class="sourceLineNo">780</span>      }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>      Method replicateMethod = null;<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      if (builderClass != null) {<a name="line.782"></a>
-<span class="sourceLineNo">783</span>        try {<a name="line.783"></a>
-<span class="sourceLineNo">784</span>          replicateMethod = builderClass.getMethod("replicate");<a name="line.784"></a>
-<span class="sourceLineNo">785</span>          LOG.debug("Using builder API via reflection for DFS file creation.");<a name="line.785"></a>
-<span class="sourceLineNo">786</span>        } catch (NoSuchMethodException e) {<a name="line.786"></a>
-<span class="sourceLineNo">787</span>          LOG.debug("Could not find replicate method on builder; will not set replicate when" +<a name="line.787"></a>
-<span class="sourceLineNo">788</span>            " creating output stream", e);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>        }<a name="line.789"></a>
-<span class="sourceLineNo">790</span>      }<a name="line.790"></a>
-<span class="sourceLineNo">791</span>      BUILDER = builderClass;<a name="line.791"></a>
-<span class="sourceLineNo">792</span>      REPLICATE = replicateMethod;<a name="line.792"></a>
-<span class="sourceLineNo">793</span>    }<a name="line.793"></a>
-<span class="sourceLineNo">794</span><a name="line.794"></a>
-<span class="sourceLineNo">795</span>    /**<a name="line.795"></a>
-<span class="sourceLineNo">796</span>     * Attempt to use builder API via reflection to call the replicate method on the given builder.<a name="line.796"></a>
-<span class="sourceLineNo">797</span>     */<a name="line.797"></a>
-<span class="sourceLineNo">798</span>    static void replicate(FSDataOutputStreamBuilder&lt;?, ?&gt; builder) {<a name="line.798"></a>
-<span class="sourceLineNo">799</span>      if (BUILDER != null &amp;&amp; REPLICATE != null &amp;&amp; BUILDER.isAssignableFrom(builder.getClass())) {<a name="line.799"></a>
-<span class="sourceLineNo">800</span>        try {<a name="line.800"></a>
-<span class="sourceLineNo">801</span>          REPLICATE.invoke(builder);<a name="line.801"></a>
-<span class="sourceLineNo">802</span>        } catch (IllegalAccessException | InvocationTargetException e) {<a name="line.802"></a>
-<span class="sourceLineNo">803</span>          // Should have caught this failure during initialization, so log full trace here<a name="line.803"></a>
-<span class="sourceLineNo">804</span>          LOG.warn("Couldn't use reflection with builder API", e);<a name="line.804"></a>
-<span class="sourceLineNo">805</span>        }<a name="line.805"></a>
-<span class="sourceLineNo">806</span>      }<a name="line.806"></a>
-<span class="sourceLineNo">807</span>    }<a name="line.807"></a>
-<span class="sourceLineNo">808</span>  }<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>  /**<a name="line.810"></a>
-<span class="sourceLineNo">811</span>   * Attempt to use builder API via reflection to create a file with the given parameters and<a name="line.811"></a>
-<span class="sourceLineNo">812</span>   * replication enabled.<a name="line.812"></a>
-<span class="sourceLineNo">813</span>   * &lt;p/&gt;<a name="line.813"></a>
-<span class="sourceLineNo">814</span>   * Will not attempt to enable replication when passed an HFileSystem.<a name="line.814"></a>
-<span class="sourceLineNo">815</span>   */<a name="line.815"></a>
-<span class="sourceLineNo">816</span>  public static FSDataOutputStream createForWal(FileSystem fs, Path path, boolean overwrite)<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    throws IOException {<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(path).overwrite(overwrite);<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    DfsBuilderUtility.replicate(builder);<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    return builder.build();<a name="line.820"></a>
-<span class="sourceLineNo">821</span>  }<a name="line.821"></a>
-<span class="sourceLineNo">822</span><a name="line.822"></a>
-<span class="sourceLineNo">823</span>  /**<a name="line.823"></a>
-<span class="sourceLineNo">824</span>   * Attempt to use builder API via reflection to create a file with the given parameters and<a name="line.824"></a>
-<span class="sourceLineNo">825</span>   * replication enabled.<a name="line.825"></a>
-<span class="sourceLineNo">826</span>   * &lt;p/&gt;<a name="line.826"></a>
-<span class="sourceLineNo">827</span>   * Will not attempt to enable replication when passed an HFileSystem.<a name="line.827"></a>
-<span class="sourceLineNo">828</span>   */<a name="line.828"></a>
-<span class="sourceLineNo">829</span>  public static FSDataOutputStream createForWal(FileSystem fs, Path path, boolean overwrite,<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    int bufferSize, short replication, long blockSize, boolean isRecursive) throws IOException {<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(path).overwrite(overwrite)<a name="line.831"></a>
-<span class="sourceLineNo">832</span>      .bufferSize(bufferSize).replication(replication).blockSize(blockSize);<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    if (isRecursive) {<a name="line.833"></a>
-<span class="sourceLineNo">834</span>      builder.recursive();<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    }<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    DfsBuilderUtility.replicate(builder);<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    return builder.build();<a name="line.837"></a>
-<span class="sourceLineNo">838</span>  }<a name="line.838"></a>
-<span class="sourceLineNo">839</span><a name="line.839"></a>
-<span class="sourceLineNo">840</span>  /**<a name="line.840"></a>
-<span class="sourceLineNo">841</span>   * Helper exception for those cases where the place where we need to check a stream capability<a name="line.841"></a>
-<span class="sourceLineNo">842</span>   * is not where we have the needed context to explain the impact and mitigation for a lack.<a name="line.842"></a>
-<span class="sourceLineNo">843</span>   */<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  public static class StreamLacksCapabilityException extends Exception {<a name="line.844"></a>
-<span class="sourceLineNo">845</span>    public StreamLacksCapabilityException(String message, Throwable cause) {<a name="line.845"></a>
-<span class="sourceLineNo">846</span>      super(message, cause);<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    }<a name="line.847"></a>
-<span class="sourceLineNo">848</span>    public StreamLacksCapabilityException(String message) {<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      super(message);<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span>}<a name="line.852"></a>
+<span class="sourceLineNo">636</span>    return status;<a name="line.636"></a>
+<span class="sourceLineNo">637</span>  }<a name="line.637"></a>
+<span class="sourceLineNo">638</span><a name="line.638"></a>
+<span class="sourceLineNo">639</span>  /**<a name="line.639"></a>
+<span class="sourceLineNo">640</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.640"></a>
+<span class="sourceLineNo">641</span>   * This would accommodates differences between hadoop versions<a name="line.641"></a>
+<span class="sourceLineNo">642</span>   *<a name="line.642"></a>
+<span class="sourceLineNo">643</span>   * @param fs file system<a name="line.643"></a>
+<span class="sourceLineNo">644</span>   * @param dir directory<a name="line.644"></a>
+<span class="sourceLineNo">645</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.645"></a>
+<span class="sourceLineNo">646</span>   */<a name="line.646"></a>
+<span class="sourceLineNo">647</span>  public static FileStatus[] listStatus(final FileSystem fs, final Path dir) throws IOException {<a name="line.647"></a>
+<span class="sourceLineNo">648</span>    return listStatus(fs, dir, null);<a name="line.648"></a>
+<span class="sourceLineNo">649</span>  }<a name="line.649"></a>
+<span class="sourceLineNo">650</span><a name="line.650"></a>
+<span class="sourceLineNo">651</span>  /**<a name="line.651"></a>
+<span class="sourceLineNo">652</span>   * Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call<a name="line.652"></a>
+<span class="sourceLineNo">653</span>   *<a name="line.653"></a>
+<span class="sourceLineNo">654</span>   * @param fs file system<a name="line.654"></a>
+<span class="sourceLineNo">655</span>   * @param dir directory<a name="line.655"></a>
+<span class="sourceLineNo">656</span>   * @return LocatedFileStatus list<a name="line.656"></a>
+<span class="sourceLineNo">657</span>   */<a name="line.657"></a>
+<span class="sourceLineNo">658</span>  public static List&lt;LocatedFileStatus&gt; listLocatedStatus(final FileSystem fs,<a name="line.658"></a>
+<span class="sourceLineNo">659</span>      final Path dir) throws IOException {<a name="line.659"></a>
+<span class="sourceLineNo">660</span>    List&lt;LocatedFileStatus&gt; status = null;<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    try {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      RemoteIterator&lt;LocatedFileStatus&gt; locatedFileStatusRemoteIterator = fs<a name="line.662"></a>
+<span class="sourceLineNo">663</span>          .listFiles(dir, false);<a name="line.663"></a>
+<span class="sourceLineNo">664</span>      while (locatedFileStatusRemoteIterator.hasNext()) {<a name="line.664"></a>
+<span class="sourceLineNo">665</span>        if (status == null) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>          status = Lists.newArrayList();<a name="line.666"></a>
+<span class="sourceLineNo">667</span>        }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>        status.add(locatedFileStatusRemoteIterator.next());<a name="line.668"></a>
+<span class="sourceLineNo">669</span>      }<a name="line.669"></a>
+<span class="sourceLineNo">670</span>    } catch (FileNotFoundException fnfe) {<a name="line.670"></a>
+<span class="sourceLineNo">671</span>      // if directory doesn't exist, return null<a name="line.671"></a>
+<span class="sourceLineNo">672</span>      if (LOG.isTraceEnabled()) {<a name="line.672"></a>
+<span class="sourceLineNo">673</span>        LOG.trace("{} doesn't exist", dir);<a name="line.673"></a>
+<span class="sourceLineNo">674</span>      }<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    }<a name="line.675"></a>
+<span class="sourceLineNo">676</span>    return status;<a name="line.676"></a>
+<span class="sourceLineNo">677</span>  }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>  /**<a name="line.679"></a>
+<span class="sourceLineNo">680</span>   * Calls fs.delete() and returns the value returned by the fs.delete()<a name="line.680"></a>
+<span class="sourceLineNo">681</span>   *<a name="line.681"></a>
+<span class="sourceLineNo">682</span>   * @param fs must not be null<a name="line.682"></a>
+<span class="sourceLineNo">683</span>   * @param path must not be null<a name="line.683"></a>
+<span class="sourceLineNo">684</span>   * @param recursive delete tree rooted at path<a name="line.684"></a>
+<span class="sourceLineNo">685</span>   * @return the value returned by the fs.delete()<a name="line.685"></a>
+<span class="sourceLineNo">686</span>   * @throws IOException from underlying FileSystem<a name="line.686"></a>
+<span class="sourceLineNo">687</span>   */<a name="line.687"></a>
+<span class="sourceLineNo">688</span>  public static boolean delete(final FileSystem fs, final Path path, final boolean recursive)<a name="line.688"></a>
+<span class="sourceLineNo">689</span>      throws IOException {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>    return fs.delete(path, recursive);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>  }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>  /**<a name="line.693"></a>
+<span class="sourceLineNo">694</span>   * Calls fs.exists(). Checks if the specified path exists<a name="line.694"></a>
+<span class="sourceLineNo">695</span>   *<a name="line.695"></a>
+<span class="sourceLineNo">696</span>   * @param fs must not be null<a name="line.696"></a>
+<span class="sourceLineNo">697</span>   * @param path must not be null<a name="line.697"></a>
+<span class="sourceLineNo">698</span>   * @return the value returned by fs.exists()<a name="line.698"></a>
+<span class="sourceLineNo">699</span>   * @throws IOException from underlying FileSystem<a name="line.699"></a>
+<span class="sourceLineNo">700</span>   */<a name="line.700"></a>
+<span class="sourceLineNo">701</span>  public static boolean isExists(final FileSystem fs, final Path path) throws IOException {<a name="line.701"></a>
+<span class="sourceLineNo">702</span>    return fs.exists(path);<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  }<a name="line.703"></a>
+<span class="sourceLineNo">704</span><a name="line.704"></a>
+<span class="sourceLineNo">705</span>  /**<a name="line.705"></a>
+<span class="sourceLineNo">706</span>   * Log the current state of the filesystem from a certain root directory<a name="line.706"></a>
+<span class="sourceLineNo">707</span>   * @param fs filesystem to investigate<a name="line.707"></a>
+<span class="sourceLineNo">708</span>   * @param root root file/directory to start logging from<a name="line.708"></a>
+<span class="sourceLineNo">709</span>   * @param log log to output information<a name="line.709"></a>
+<span class="sourceLineNo">710</span>   * @throws IOException if an unexpected exception occurs<a name="line.710"></a>
+<span class="sourceLineNo">711</span>   */<a name="line.711"></a>
+<span class="sourceLineNo">712</span>  public static void logFileSystemState(final FileSystem fs, final Path root, Logger log)<a name="line.712"></a>
+<span class="sourceLineNo">713</span>      throws IOException {<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    log.debug("File system contents for path {}", root);<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    logFSTree(log, fs, root, "|-");<a name="line.715"></a>
+<span class="sourceLineNo">716</span>  }<a name="line.716"></a>
+<span class="sourceLineNo">717</span><a name="line.717"></a>
+<span class="sourceLineNo">718</span>  /**<a name="line.718"></a>
+<span class="sourceLineNo">719</span>   * Recursive helper to log the state of the FS<a name="line.719"></a>
+<span class="sourceLineNo">720</span>   *<a name="line.720"></a>
+<span class="sourceLineNo">721</span>   * @see #logFileSystemState(FileSystem, Path, Logger)<a name="line.721"></a>
+<span class="sourceLineNo">722</span>   */<a name="line.722"></a>
+<span class="sourceLineNo">723</span>  private static void logFSTree(Logger log, final FileSystem fs, final Path root, String prefix)<a name="line.723"></a>
+<span class="sourceLineNo">724</span>      throws IOException {<a name="line.724"></a>
+<span class="sourceLineNo">725</span>    FileStatus[] files = listStatus(fs, root, null);<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    if (files == null) {<a name="line.726"></a>
+<span class="sourceLineNo">727</span>      return;<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    }<a name="line.728"></a>
+<span class="sourceLineNo">729</span><a name="line.729"></a>
+<span class="sourceLineNo">730</span>    for (FileStatus file : files) {<a name="line.730"></a>
+<span class="sourceLineNo">731</span>      if (file.isDirectory()) {<a name="line.731"></a>
+<span class="sourceLineNo">732</span>        log.debug(prefix + file.getPath().getName() + "/");<a name="line.732"></a>
+<span class="sourceLineNo">733</span>        logFSTree(log, fs, file.getPath(), prefix + "---");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>      } else {<a name="line.734"></a>
+<span class="sourceLineNo">735</span>        log.debug(prefix + file.getPath().getName());<a name="line.735"></a>
+<span class="sourceLineNo">736</span>      }<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    }<a name="line.737"></a>
+<span class="sourceLineNo">738</span>  }<a name="line.738"></a>
+<span class="sourceLineNo">739</span><a name="line.739"></a>
+<span class="sourceLineNo">740</span>  public static boolean renameAndSetModifyTime(final FileSystem fs, final Path src, final Path dest)<a name="line.740"></a>
+<span class="sourceLineNo">741</span>      throws IOException {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>    // set the modify time for TimeToLive Cleaner<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    fs.setTimes(src, EnvironmentEdgeManager.currentTime(), -1);<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    return fs.rename(src, dest);<a name="line.744"></a>
+<span class="sourceLineNo">745</span>  }<a name="line.745"></a>
+<span class="sourceLineNo">746</span><a name="line.746"></a>
+<span class="sourceLineNo">747</span>  /**<a name="line.747"></a>
+<span class="sourceLineNo">748</span>   * Check if short circuit read buffer size is set and if not, set it to hbase value.<a name="line.748"></a>
+<span class="sourceLineNo">749</span>   * @param conf must not be null<a name="line.749"></a>
+<span class="sourceLineNo">750</span>   */<a name="line.750"></a>
+<span class="sourceLineNo">751</span>  public static void checkShortCircuitReadBufferSize(final Configuration conf) {<a name="line.751"></a>
+<span class="sourceLineNo">752</span>    final int defaultSize = HConstants.DEFAULT_BLOCKSIZE * 2;<a name="line.752"></a>
+<span class="sourceLineNo">753</span>    final int notSet = -1;<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    // DFSConfigKeys.DFS_CLIENT_READ_SHORTCIRCUIT_BUFFER_SIZE_KEY is only defined in h2<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    final String dfsKey = "dfs.client.read.shortcircuit.buffer.size";<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    int size = conf.getInt(dfsKey, notSet);<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    // If a size is set, return -- we will use it.<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    if (size != notSet) {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      return;<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    }<a name="line.760"></a>
+<span class="sourceLineNo">761</span>    // But short circuit buffer size is normally not set.  Put in place the hbase wanted size.<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    int hbaseSize = conf.getInt("hbase." + dfsKey, defaultSize);<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    conf.setIfUnset(dfsKey, Integer.toString(hbaseSize));<a name="line.763"></a>
+<span class="sourceLineNo">764</span>  }<a name="line.764"></a>
+<span class="sourceLineNo">765</span><a name="line.765"></a>
+<span class="sourceLineNo">766</span>  /**<a name="line.766"></a>
+<span class="sourceLineNo">767</span>   * Helper exception for those cases where the place where we need to check a stream capability<a name="line.767"></a>
+<span class="sourceLineNo">768</span>   * is not where we have the needed context to explain the impact and mitigation for a lack.<a name="line.768"></a>
+<span class="sourceLineNo">769</span>   */<a name="line.769"></a>
+<span class="sourceLineNo">770</span>  public static class StreamLacksCapabilityException extends Exception {<a name="line.770"></a>
+<span class="sourceLineNo">771</span>    public StreamLacksCapabilityException(String message, Throwable cause) {<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      super(message, cause);<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
+<span class="sourceLineNo">774</span>    public StreamLacksCapabilityException(String message) {<a name="line.774"></a>
+<span class="sourceLineNo">775</span>      super(message);<a name="line.775"></a>
+<span class="sourceLineNo">776</span>    }<a name="line.776"></a>
+<span class="sourceLineNo">777</span>  }<a name="line.777"></a>
+<span class="sourceLineNo">778</span>}<a name="line.778"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html b/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html
index b763e74..1492d61 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/util/CommonFSUtils.html
@@ -28,836 +28,762 @@
 <span class="sourceLineNo">020</span><a name="line.20"></a>
 <span class="sourceLineNo">021</span>import java.io.FileNotFoundException;<a name="line.21"></a>
 <span class="sourceLineNo">022</span>import java.io.IOException;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import java.lang.reflect.InvocationTargetException;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import java.lang.reflect.Method;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import java.net.URI;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import java.net.URISyntaxException;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import java.util.List;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import java.util.Locale;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import java.util.Map;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import java.util.concurrent.ConcurrentHashMap;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import org.apache.hadoop.conf.Configuration;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import org.apache.hadoop.fs.FSDataOutputStreamBuilder;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import org.apache.hadoop.fs.FileStatus;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.FileSystem;<a name="line.35"></a>
-<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.LocatedFileStatus;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.Path;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.PathFilter;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.fs.RemoteIterator;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.fs.permission.FsPermission;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.HConstants;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.TableName;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.slf4j.Logger;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.slf4j.LoggerFactory;<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>/**<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * Utility methods for interacting with the underlying file system.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * &lt;p/&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * Note that {@link #setStoragePolicy(FileSystem, Path, String)} is tested in TestFSUtils and<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * pre-commit will run the hbase-server tests if there's code change in this class. See<a name="line.53"></a>
-<span class="sourceLineNo">054</span> * &lt;a href="https://issues.apache.org/jira/browse/HBASE-20838"&gt;HBASE-20838&lt;/a&gt; for more details.<a name="line.54"></a>
-<span class="sourceLineNo">055</span> */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>@InterfaceAudience.Private<a name="line.56"></a>
-<span class="sourceLineNo">057</span>public final class CommonFSUtils {<a name="line.57"></a>
-<span class="sourceLineNo">058</span>  private static final Logger LOG = LoggerFactory.getLogger(CommonFSUtils.class);<a name="line.58"></a>
+<span class="sourceLineNo">023</span>import java.net.URI;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import java.net.URISyntaxException;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import java.util.List;<a name="line.25"></a>
+<span class="sourceLineNo">026</span>import java.util.Locale;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import java.util.Map;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import java.util.concurrent.ConcurrentHashMap;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import org.apache.hadoop.conf.Configuration;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import org.apache.hadoop.fs.FileStatus;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import org.apache.hadoop.fs.FileSystem;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import org.apache.hadoop.fs.LocatedFileStatus;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import org.apache.hadoop.fs.Path;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.PathFilter;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.RemoteIterator;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.permission.FsPermission;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.HConstants;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.TableName;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.slf4j.Logger;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.slf4j.LoggerFactory;<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>/**<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * Utility methods for interacting with the underlying file system.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * &lt;p/&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * Note that {@link #setStoragePolicy(FileSystem, Path, String)} is tested in TestFSUtils and<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * pre-commit will run the hbase-server tests if there's code change in this class. See<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;a href="https://issues.apache.org/jira/browse/HBASE-20838"&gt;HBASE-20838&lt;/a&gt; for more details.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>@InterfaceAudience.Private<a name="line.53"></a>
+<span class="sourceLineNo">054</span>public final class CommonFSUtils {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>  private static final Logger LOG = LoggerFactory.getLogger(CommonFSUtils.class);<a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>  /** Parameter name for HBase WAL directory */<a name="line.57"></a>
+<span class="sourceLineNo">058</span>  public static final String HBASE_WAL_DIR = "hbase.wal.dir";<a name="line.58"></a>
 <span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>  /** Parameter name for HBase WAL directory */<a name="line.60"></a>
-<span class="sourceLineNo">061</span>  public static final String HBASE_WAL_DIR = "hbase.wal.dir";<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>  /** Parameter to disable stream capability enforcement checks */<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  public static final String UNSAFE_STREAM_CAPABILITY_ENFORCE =<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    "hbase.unsafe.stream.capability.enforce";<a name="line.65"></a>
+<span class="sourceLineNo">060</span>  /** Parameter to disable stream capability enforcement checks */<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  public static final String UNSAFE_STREAM_CAPABILITY_ENFORCE =<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    "hbase.unsafe.stream.capability.enforce";<a name="line.62"></a>
+<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">064</span>  /** Full access permissions (starting point for a umask) */<a name="line.64"></a>
+<span class="sourceLineNo">065</span>  public static final String FULL_RWX_PERMISSIONS = "777";<a name="line.65"></a>
 <span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>  /** Full access permissions (starting point for a umask) */<a name="line.67"></a>
-<span class="sourceLineNo">068</span>  public static final String FULL_RWX_PERMISSIONS = "777";<a name="line.68"></a>
+<span class="sourceLineNo">067</span>  private CommonFSUtils() {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>  }<a name="line.68"></a>
 <span class="sourceLineNo">069</span><a name="line.69"></a>
-<span class="sourceLineNo">070</span>  private CommonFSUtils() {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
-<span class="sourceLineNo">072</span><a name="line.72"></a>
-<span class="sourceLineNo">073</span>  /**<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   * Compare of path component. Does not consider schema; i.e. if schemas<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   * different but &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;,<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   * then the function returns true<a name="line.76"></a>
-<span class="sourceLineNo">077</span>   * @param rootPath value to check for<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   * @param path subject to check<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   * @return True if &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   */<a name="line.80"></a>
-<span class="sourceLineNo">081</span>  public static boolean isStartingWithPath(final Path rootPath, final String path) {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    String uriRootPath = rootPath.toUri().getPath();<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    String tailUriPath = (new Path(path)).toUri().getPath();<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    return tailUriPath.startsWith(uriRootPath);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>  }<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>  /**<a name="line.87"></a>
-<span class="sourceLineNo">088</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.88"></a>
-<span class="sourceLineNo">089</span>   * '/a/b/c' part. Does not consider schema; i.e. if schemas different but path or subpath matches,<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   * the two will equate.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>   * @param pathToSearch Path we will be trying to match against.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   * @param pathTail what to match<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   */<a name="line.94"></a>
-<span class="sourceLineNo">095</span>  public static boolean isMatchingTail(final Path pathToSearch, String pathTail) {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    return isMatchingTail(pathToSearch, new Path(pathTail));<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  /**<a name="line.99"></a>
-<span class="sourceLineNo">100</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.100"></a>
-<span class="sourceLineNo">101</span>   * '/a/b/c' part. If you passed in 'hdfs://a/b/c and b/c, it would return true.  Does not consider<a name="line.101"></a>
-<span class="sourceLineNo">102</span>   * schema; i.e. if schemas different but path or subpath matches, the two will equate.<a name="line.102"></a>
-<span class="sourceLineNo">103</span>   * @param pathToSearch Path we will be trying to match agains against<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   * @param pathTail what to match<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.105"></a>
-<span class="sourceLineNo">106</span>   */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>  public static boolean isMatchingTail(final Path pathToSearch, final Path pathTail) {<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    if (pathToSearch.depth() != pathTail.depth()) {<a name="line.108"></a>
-<span class="sourceLineNo">109</span>      return false;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    }<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    Path tailPath = pathTail;<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    String tailName;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    Path toSearch = pathToSearch;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    String toSearchName;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    boolean result = false;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    do {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      tailName = tailPath.getName();<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      if (tailName == null || tailName.length() &lt;= 0) {<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        result = true;<a name="line.119"></a>
-<span class="sourceLineNo">120</span>        break;<a name="line.120"></a>
-<span class="sourceLineNo">121</span>      }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>      toSearchName = toSearch.getName();<a name="line.122"></a>
-<span class="sourceLineNo">123</span>      if (toSearchName == null || toSearchName.length() &lt;= 0) {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        break;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>      }<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      // Move up a parent on each path for next go around.  Path doesn't let us go off the end.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>      tailPath = tailPath.getParent();<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      toSearch = toSearch.getParent();<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    } while(tailName.equals(toSearchName));<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    return result;<a name="line.130"></a>
-<span class="sourceLineNo">131</span>  }<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>  /**<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   * Delete if exists.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>   * @param fs filesystem object<a name="line.135"></a>
-<span class="sourceLineNo">136</span>   * @param dir directory to delete<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   * @return True if deleted &lt;code&gt;dir&lt;/code&gt;<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   * @throws IOException e<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>  public static boolean deleteDirectory(final FileSystem fs, final Path dir) throws IOException {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    return fs.exists(dir) &amp;&amp; fs.delete(dir, true);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>  }<a name="line.142"></a>
-<span class="sourceLineNo">143</span><a name="line.143"></a>
-<span class="sourceLineNo">144</span>  /**<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   * Return the number of bytes that large input files should be optimally<a name="line.145"></a>
-<span class="sourceLineNo">146</span>   * be split into to minimize i/o time.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   *<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   * @param fs filesystem object<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   * @return the default block size for the path's filesystem<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>  public static long getDefaultBlockSize(final FileSystem fs, final Path path) {<a name="line.151"></a>
-<span class="sourceLineNo">152</span>    return fs.getDefaultBlockSize(path);<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  }<a name="line.153"></a>
-<span class="sourceLineNo">154</span><a name="line.154"></a>
-<span class="sourceLineNo">155</span>  /*<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   * Get the default replication.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   *<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   * @param fs filesystem object<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   * @param f path of file<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * @return default replication for the path's filesystem<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
-<span class="sourceLineNo">162</span>  public static short getDefaultReplication(final FileSystem fs, final Path path) {<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    return fs.getDefaultReplication(path);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  }<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>  /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>   * Returns the default buffer size to use during writes.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>   * The size of the buffer should probably be a multiple of hardware<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   * page size (4096 on Intel x86), and it determines how much data is<a name="line.170"></a>
-<span class="sourceLineNo">171</span>   * buffered during read and write operations.<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   *<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   * @param fs filesystem object<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   * @return default buffer size to use during writes<a name="line.174"></a>
-<span class="sourceLineNo">175</span>   */<a name="line.175"></a>
-<span class="sourceLineNo">176</span>  public static int getDefaultBufferSize(final FileSystem fs) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    return fs.getConf().getInt("io.file.buffer.size", 4096);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>  /**<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   * Create the specified file on the filesystem. By default, this will:<a name="line.181"></a>
-<span class="sourceLineNo">182</span>   * &lt;ol&gt;<a name="line.182"></a>
-<span class="sourceLineNo">183</span>   * &lt;li&gt;apply the umask in the configuration (if it is enabled)&lt;/li&gt;<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   * &lt;li&gt;use the fs configured buffer size (or 4096 if not set)&lt;/li&gt;<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   * &lt;li&gt;use the default replication&lt;/li&gt;<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   * &lt;li&gt;use the default block size&lt;/li&gt;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   * &lt;li&gt;not track progress&lt;/li&gt;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   * &lt;/ol&gt;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   *<a name="line.189"></a>
-<span class="sourceLineNo">190</span>   * @param fs {@link FileSystem} on which to write the file<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   * @param path {@link Path} to the file to write<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   * @param perm intial permissions<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   * @param overwrite Whether or not the created file should be overwritten.<a name="line.193"></a>
-<span class="sourceLineNo">194</span>   * @return output stream to the created file<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   * @throws IOException if the file cannot be created<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   */<a name="line.196"></a>
-<span class="sourceLineNo">197</span>  public static FSDataOutputStream create(FileSystem fs, Path path,<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      FsPermission perm, boolean overwrite) throws IOException {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    if (LOG.isTraceEnabled()) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      LOG.trace("Creating file={} with permission={}, overwrite={}", path, perm, overwrite);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    }<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    return fs.create(path, perm, overwrite, getDefaultBufferSize(fs),<a name="line.202"></a>
-<span class="sourceLineNo">203</span>        getDefaultReplication(fs, path), getDefaultBlockSize(fs, path), null);<a name="line.203"></a>
-<span class="sourceLineNo">204</span>  }<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>  /**<a name="line.206"></a>
-<span class="sourceLineNo">207</span>   * Get the file permissions specified in the configuration, if they are<a name="line.207"></a>
-<span class="sourceLineNo">208</span>   * enabled.<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   *<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   * @param fs filesystem that the file will be created on.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   * @param conf configuration to read for determining if permissions are<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   *          enabled and which to use<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   * @param permssionConfKey property key in the configuration to use when<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   *          finding the permission<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   * @return the permission to use when creating a new file on the fs. If<a name="line.215"></a>
-<span class="sourceLineNo">216</span>   *         special permissions are not specified in the configuration, then<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   *         the default permissions on the the fs will be returned.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>   */<a name="line.218"></a>
-<span class="sourceLineNo">219</span>  public static FsPermission getFilePermissions(final FileSystem fs,<a name="line.219"></a>
-<span class="sourceLineNo">220</span>      final Configuration conf, final String permssionConfKey) {<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    boolean enablePermissions = conf.getBoolean(<a name="line.221"></a>
-<span class="sourceLineNo">222</span>        HConstants.ENABLE_DATA_FILE_UMASK, false);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>    if (enablePermissions) {<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      try {<a name="line.225"></a>
-<span class="sourceLineNo">226</span>        FsPermission perm = new FsPermission(FULL_RWX_PERMISSIONS);<a name="line.226"></a>
-<span class="sourceLineNo">227</span>        // make sure that we have a mask, if not, go default.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        String mask = conf.get(permssionConfKey);<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        if (mask == null) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>          return FsPermission.getFileDefault();<a name="line.230"></a>
-<span class="sourceLineNo">231</span>        }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>        // appy the umask<a name="line.232"></a>
-<span class="sourceLineNo">233</span>        FsPermission umask = new FsPermission(mask);<a name="line.233"></a>
-<span class="sourceLineNo">234</span>        return perm.applyUMask(umask);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      } catch (IllegalArgumentException e) {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>        LOG.warn(<a name="line.236"></a>
-<span class="sourceLineNo">237</span>            "Incorrect umask attempted to be created: "<a name="line.237"></a>
-<span class="sourceLineNo">238</span>                + conf.get(permssionConfKey)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>                + ", using default file permissions.", e);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        return FsPermission.getFileDefault();<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>    }<a name="line.242"></a>
-<span class="sourceLineNo">243</span>    return FsPermission.getFileDefault();<a name="line.243"></a>
-<span class="sourceLineNo">244</span>  }<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>  /**<a name="line.246"></a>
-<span class="sourceLineNo">247</span>   * Verifies root directory path is a valid URI with a scheme<a name="line.247"></a>
-<span class="sourceLineNo">248</span>   *<a name="line.248"></a>
-<span class="sourceLineNo">249</span>   * @param root root directory path<a name="line.249"></a>
-<span class="sourceLineNo">250</span>   * @return Passed &lt;code&gt;root&lt;/code&gt; argument.<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   * @throws IOException if not a valid URI with a scheme<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   */<a name="line.252"></a>
-<span class="sourceLineNo">253</span>  public static Path validateRootPath(Path root) throws IOException {<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    try {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      URI rootURI = new URI(root.toString());<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      String scheme = rootURI.getScheme();<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      if (scheme == null) {<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        throw new IOException("Root directory does not have a scheme");<a name="line.258"></a>
-<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return root;<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    } catch (URISyntaxException e) {<a name="line.261"></a>
-<span class="sourceLineNo">262</span>      throw new IOException("Root directory path is not a valid " +<a name="line.262"></a>
-<span class="sourceLineNo">263</span>        "URI -- check your " + HConstants.HBASE_DIR + " configuration", e);<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
-<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>  /**<a name="line.267"></a>
-<span class="sourceLineNo">268</span>   * Checks for the presence of the WAL log root path (using the provided conf object) in the given<a name="line.268"></a>
-<span class="sourceLineNo">269</span>   * path. If it exists, this method removes it and returns the String representation of remaining<a name="line.269"></a>
-<span class="sourceLineNo">270</span>   * relative path.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>   * @param path must not be null<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   * @param conf must not be null<a name="line.272"></a>
-<span class="sourceLineNo">273</span>   * @return String representation of the remaining relative path<a name="line.273"></a>
-<span class="sourceLineNo">274</span>   * @throws IOException from underlying filesystem<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   */<a name="line.275"></a>
-<span class="sourceLineNo">276</span>  public static String removeWALRootPath(Path path, final Configuration conf) throws IOException {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>    Path root = getWALRootDir(conf);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>    String pathStr = path.toString();<a name="line.278"></a>
-<span class="sourceLineNo">279</span>    // check that the path is absolute... it has the root path in it.<a name="line.279"></a>
-<span class="sourceLineNo">280</span>    if (!pathStr.startsWith(root.toString())) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      return pathStr;<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    }<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // if not, return as it is.<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    return pathStr.substring(root.toString().length() + 1);// remove the "/" too.<a name="line.284"></a>
-<span class="sourceLineNo">285</span>  }<a name="line.285"></a>
-<span class="sourceLineNo">286</span><a name="line.286"></a>
-<span class="sourceLineNo">287</span>  /**<a name="line.287"></a>
-<span class="sourceLineNo">288</span>   * Return the 'path' component of a Path.  In Hadoop, Path is a URI.  This<a name="line.288"></a>
-<span class="sourceLineNo">289</span>   * method returns the 'path' component of a Path's URI: e.g. If a Path is<a name="line.289"></a>
-<span class="sourceLineNo">290</span>   * &lt;code&gt;hdfs://example.org:9000/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;,<a name="line.290"></a>
-<span class="sourceLineNo">291</span>   * this method returns &lt;code&gt;/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;.<a name="line.291"></a>
-<span class="sourceLineNo">292</span>   * This method is useful if you want to print out a Path without qualifying<a name="line.292"></a>
-<span class="sourceLineNo">293</span>   * Filesystem instance.<a name="line.293"></a>
-<span class="sourceLineNo">294</span>   * @param p Filesystem Path whose 'path' component we are to return.<a name="line.294"></a>
-<span class="sourceLineNo">295</span>   * @return Path portion of the Filesystem<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   */<a name="line.296"></a>
-<span class="sourceLineNo">297</span>  public static String getPath(Path p) {<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    return p.toUri().getPath();<a name="line.298"></a>
-<span class="sourceLineNo">299</span>  }<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>  /**<a name="line.301"></a>
-<span class="sourceLineNo">302</span>   * @param c configuration<a name="line.302"></a>
-<span class="sourceLineNo">303</span>   * @return {@link Path} to hbase root directory from<a name="line.303"></a>
-<span class="sourceLineNo">304</span>   *     configuration as a qualified Path.<a name="line.304"></a>
-<span class="sourceLineNo">305</span>   * @throws IOException e<a name="line.305"></a>
-<span class="sourceLineNo">306</span>   */<a name="line.306"></a>
-<span class="sourceLineNo">307</span>  public static Path getRootDir(final Configuration c) throws IOException {<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    Path p = new Path(c.get(HConstants.HBASE_DIR));<a name="line.308"></a>
-<span class="sourceLineNo">309</span>    FileSystem fs = p.getFileSystem(c);<a name="line.309"></a>
-<span class="sourceLineNo">310</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.310"></a>
-<span class="sourceLineNo">311</span>  }<a name="line.311"></a>
-<span class="sourceLineNo">312</span><a name="line.312"></a>
-<span class="sourceLineNo">313</span>  public static void setRootDir(final Configuration c, final Path root) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>    c.set(HConstants.HBASE_DIR, root.toString());<a name="line.314"></a>
-<span class="sourceLineNo">315</span>  }<a name="line.315"></a>
-<span class="sourceLineNo">316</span><a name="line.316"></a>
-<span class="sourceLineNo">317</span>  public static void setFsDefault(final Configuration c, final Path root) {<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    c.set("fs.defaultFS", root.toString());    // for hadoop 0.21+<a name="line.318"></a>
-<span class="sourceLineNo">319</span>  }<a name="line.319"></a>
-<span class="sourceLineNo">320</span><a name="line.320"></a>
-<span class="sourceLineNo">321</span>  public static void setFsDefault(final Configuration c, final String uri) {<a name="line.321"></a>
-<span class="sourceLineNo">322</span>    c.set("fs.defaultFS", uri); // for hadoop 0.21+<a name="line.322"></a>
-<span class="sourceLineNo">323</span>  }<a name="line.323"></a>
-<span class="sourceLineNo">324</span><a name="line.324"></a>
-<span class="sourceLineNo">325</span>  public static FileSystem getRootDirFileSystem(final Configuration c) throws IOException {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    Path p = getRootDir(c);<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return p.getFileSystem(c);<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  /**<a name="line.330"></a>
-<span class="sourceLineNo">331</span>   * @param c configuration<a name="line.331"></a>
-<span class="sourceLineNo">332</span>   * @return {@link Path} to hbase log root directory: e.g. {@value HBASE_WAL_DIR} from<a name="line.332"></a>
-<span class="sourceLineNo">333</span>   *     configuration as a qualified Path. Defaults to HBase root dir.<a name="line.333"></a>
-<span class="sourceLineNo">334</span>   * @throws IOException e<a name="line.334"></a>
-<span class="sourceLineNo">335</span>   */<a name="line.335"></a>
-<span class="sourceLineNo">336</span>  public static Path getWALRootDir(final Configuration c) throws IOException {<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    Path p = new Path(c.get(HBASE_WAL_DIR, c.get(HConstants.HBASE_DIR)));<a name="line.337"></a>
-<span class="sourceLineNo">338</span>    if (!isValidWALRootDir(p, c)) {<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      return getRootDir(c);<a name="line.339"></a>
-<span class="sourceLineNo">340</span>    }<a name="line.340"></a>
-<span class="sourceLineNo">341</span>    FileSystem fs = p.getFileSystem(c);<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.342"></a>
-<span class="sourceLineNo">343</span>  }<a name="line.343"></a>
-<span class="sourceLineNo">344</span><a name="line.344"></a>
-<span class="sourceLineNo">345</span>  /**<a name="line.345"></a>
-<span class="sourceLineNo">346</span>   * Returns the URI in the string format<a name="line.346"></a>
-<span class="sourceLineNo">347</span>   * @param c configuration<a name="line.347"></a>
-<span class="sourceLineNo">348</span>   * @param p path<a name="line.348"></a>
-<span class="sourceLineNo">349</span>   * @return - the URI's to string format<a name="line.349"></a>
-<span class="sourceLineNo">350</span>   * @throws IOException<a name="line.350"></a>
-<span class="sourceLineNo">351</span>   */<a name="line.351"></a>
-<span class="sourceLineNo">352</span>  public static String getDirUri(final Configuration c, Path p) throws IOException {<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    if (p.toUri().getScheme() != null) {<a name="line.353"></a>
-<span class="sourceLineNo">354</span>      return p.toUri().toString();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    }<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    return null;<a name="line.356"></a>
-<span class="sourceLineNo">357</span>  }<a name="line.357"></a>
-<span class="sourceLineNo">358</span><a name="line.358"></a>
-<span class="sourceLineNo">359</span>  public static void setWALRootDir(final Configuration c, final Path root) {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    c.set(HBASE_WAL_DIR, root.toString());<a name="line.360"></a>
-<span class="sourceLineNo">361</span>  }<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>  public static FileSystem getWALFileSystem(final Configuration c) throws IOException {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>    Path p = getWALRootDir(c);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    FileSystem fs = p.getFileSystem(c);<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    // hadoop-core does fs caching, so need to propagate this if set<a name="line.366"></a>
-<span class="sourceLineNo">367</span>    String enforceStreamCapability = c.get(UNSAFE_STREAM_CAPABILITY_ENFORCE);<a name="line.367"></a>
-<span class="sourceLineNo">368</span>    if (enforceStreamCapability != null) {<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      fs.getConf().set(UNSAFE_STREAM_CAPABILITY_ENFORCE, enforceStreamCapability);<a name="line.369"></a>
-<span class="sourceLineNo">370</span>    }<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    return fs;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>  }<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>  private static boolean isValidWALRootDir(Path walDir, final Configuration c) throws IOException {<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    Path rootDir = getRootDir(c);<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    FileSystem fs = walDir.getFileSystem(c);<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    Path qualifiedWalDir = walDir.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.377"></a>
-<span class="sourceLineNo">378</span>    if (!qualifiedWalDir.equals(rootDir)) {<a name="line.378"></a>
-<span class="sourceLineNo">379</span>      if (qualifiedWalDir.toString().startsWith(rootDir.toString() + "/")) {<a name="line.379"></a>
-<span class="sourceLineNo">380</span>        throw new IllegalStateException("Illegal WAL directory specified. " +<a name="line.380"></a>
-<span class="sourceLineNo">381</span>          "WAL directories are not permitted to be under root directory: rootDir=" +<a name="line.381"></a>
-<span class="sourceLineNo">382</span>          rootDir.toString() + ", qualifiedWALDir=" + qualifiedWalDir);<a name="line.382"></a>
-<span class="sourceLineNo">383</span>      }<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    }<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    return true;<a name="line.385"></a>
-<span class="sourceLineNo">386</span>  }<a name="line.386"></a>
-<span class="sourceLineNo">387</span><a name="line.387"></a>
-<span class="sourceLineNo">388</span>  /**<a name="line.388"></a>
-<span class="sourceLineNo">389</span>   * Returns the WAL region directory based on the given table name and region name<a name="line.389"></a>
-<span class="sourceLineNo">390</span>   * @param conf configuration to determine WALRootDir<a name="line.390"></a>
-<span class="sourceLineNo">391</span>   * @param tableName Table that the region is under<a name="line.391"></a>
-<span class="sourceLineNo">392</span>   * @param encodedRegionName Region name used for creating the final region directory<a name="line.392"></a>
-<span class="sourceLineNo">393</span>   * @return the region directory used to store WALs under the WALRootDir<a name="line.393"></a>
-<span class="sourceLineNo">394</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.394"></a>
-<span class="sourceLineNo">395</span>   */<a name="line.395"></a>
-<span class="sourceLineNo">396</span>  public static Path getWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.396"></a>
-<span class="sourceLineNo">397</span>      final String encodedRegionName) throws IOException {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    return new Path(getWALTableDir(conf, tableName), encodedRegionName);<a name="line.398"></a>
-<span class="sourceLineNo">399</span>  }<a name="line.399"></a>
-<span class="sourceLineNo">400</span><a name="line.400"></a>
-<span class="sourceLineNo">401</span>  /**<a name="line.401"></a>
-<span class="sourceLineNo">402</span>   * Returns the Table directory under the WALRootDir for the specified table name<a name="line.402"></a>
-<span class="sourceLineNo">403</span>   * @param conf configuration used to get the WALRootDir<a name="line.403"></a>
-<span class="sourceLineNo">404</span>   * @param tableName Table to get the directory for<a name="line.404"></a>
-<span class="sourceLineNo">405</span>   * @return a path to the WAL table directory for the specified table<a name="line.405"></a>
-<span class="sourceLineNo">406</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.406"></a>
-<span class="sourceLineNo">407</span>   */<a name="line.407"></a>
-<span class="sourceLineNo">408</span>  public static Path getWALTableDir(final Configuration conf, final TableName tableName)<a name="line.408"></a>
-<span class="sourceLineNo">409</span>      throws IOException {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Path baseDir = new Path(getWALRootDir(conf), HConstants.BASE_NAMESPACE_DIR);<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    return new Path(new Path(baseDir, tableName.getNamespaceAsString()),<a name="line.411"></a>
-<span class="sourceLineNo">412</span>      tableName.getQualifierAsString());<a name="line.412"></a>
-<span class="sourceLineNo">413</span>  }<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>  /**<a name="line.415"></a>
-<span class="sourceLineNo">416</span>   * For backward compatibility with HBASE-20734, where we store recovered edits in a wrong<a name="line.416"></a>
-<span class="sourceLineNo">417</span>   * directory without BASE_NAMESPACE_DIR. See HBASE-22617 for more details.<a name="line.417"></a>
-<span class="sourceLineNo">418</span>   * @deprecated For compatibility, will be removed in 4.0.0.<a name="line.418"></a>
-<span class="sourceLineNo">419</span>   */<a name="line.419"></a>
-<span class="sourceLineNo">420</span>  @Deprecated<a name="line.420"></a>
-<span class="sourceLineNo">421</span>  public static Path getWrongWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.421"></a>
-<span class="sourceLineNo">422</span>      final String encodedRegionName) throws IOException {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>    Path wrongTableDir = new Path(new Path(getWALRootDir(conf), tableName.getNamespaceAsString()),<a name="line.423"></a>
-<span class="sourceLineNo">424</span>      tableName.getQualifierAsString());<a name="line.424"></a>
-<span class="sourceLineNo">425</span>    return new Path(wrongTableDir, encodedRegionName);<a name="line.425"></a>
-<span class="sourceLineNo">426</span>  }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>  /**<a name="line.428"></a>
-<span class="sourceLineNo">429</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the table directory under<a name="line.429"></a>
-<span class="sourceLineNo">430</span>   * path rootdir<a name="line.430"></a>
-<span class="sourceLineNo">431</span>   *<a name="line.431"></a>
-<span class="sourceLineNo">432</span>   * @param rootdir qualified path of HBase root directory<a name="line.432"></a>
-<span class="sourceLineNo">433</span>   * @param tableName name of table<a name="line.433"></a>
-<span class="sourceLineNo">434</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.434"></a>
-<span class="sourceLineNo">435</span>   */<a name="line.435"></a>
-<span class="sourceLineNo">436</span>  public static Path getTableDir(Path rootdir, final TableName tableName) {<a name="line.436"></a>
-<span class="sourceLineNo">437</span>    return new Path(getNamespaceDir(rootdir, tableName.getNamespaceAsString()),<a name="line.437"></a>
-<span class="sourceLineNo">438</span>        tableName.getQualifierAsString());<a name="line.438"></a>
-<span class="sourceLineNo">439</span>  }<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>  /**<a name="line.441"></a>
-<span class="sourceLineNo">442</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the region directory under<a name="line.442"></a>
-<span class="sourceLineNo">443</span>   * path rootdir<a name="line.443"></a>
-<span class="sourceLineNo">444</span>   *<a name="line.444"></a>
-<span class="sourceLineNo">445</span>   * @param rootdir qualified path of HBase root directory<a name="line.445"></a>
-<span class="sourceLineNo">446</span>   * @param tableName name of table<a name="line.446"></a>
-<span class="sourceLineNo">447</span>   * @param regionName The encoded region name<a name="line.447"></a>
-<span class="sourceLineNo">448</span>   * @return {@link org.apache.hadoop.fs.Path} for region<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   */<a name="line.449"></a>
-<span class="sourceLineNo">450</span>  public static Path getRegionDir(Path rootdir, TableName tableName, String regionName) {<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    return new Path(getTableDir(rootdir, tableName), regionName);<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  }<a name="line.452"></a>
-<span class="sourceLineNo">453</span><a name="line.453"></a>
-<span class="sourceLineNo">454</span>  /**<a name="line.454"></a>
-<span class="sourceLineNo">455</span>   * Returns the {@link org.apache.hadoop.hbase.TableName} object representing<a name="line.455"></a>
-<span class="sourceLineNo">456</span>   * the table directory under<a name="line.456"></a>
-<span class="sourceLineNo">457</span>   * path rootdir<a name="line.457"></a>
-<span class="sourceLineNo">458</span>   *<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   * @param tablePath path of table<a name="line.459"></a>
-<span class="sourceLineNo">460</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.460"></a>
-<span class="sourceLineNo">461</span>   */<a name="line.461"></a>
-<span class="sourceLineNo">462</span>  public static TableName getTableName(Path tablePath) {<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    return TableName.valueOf(tablePath.getParent().getName(), tablePath.getName());<a name="line.463"></a>
-<span class="sourceLineNo">464</span>  }<a name="line.464"></a>
-<span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>  /**<a name="line.466"></a>
-<span class="sourceLineNo">467</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing<a name="line.467"></a>
-<span class="sourceLineNo">468</span>   * the namespace directory under path rootdir<a name="line.468"></a>
-<span class="sourceLineNo">469</span>   *<a name="line.469"></a>
-<span class="sourceLineNo">470</span>   * @param rootdir qualified path of HBase root directory<a name="line.470"></a>
-<span class="sourceLineNo">471</span>   * @param namespace namespace name<a name="line.471"></a>
-<span class="sourceLineNo">472</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.472"></a>
-<span class="sourceLineNo">473</span>   */<a name="line.473"></a>
-<span class="sourceLineNo">474</span>  public static Path getNamespaceDir(Path rootdir, final String namespace) {<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    return new Path(rootdir, new Path(HConstants.BASE_NAMESPACE_DIR,<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        new Path(namespace)));<a name="line.476"></a>
-<span class="sourceLineNo">477</span>  }<a name="line.477"></a>
-<span class="sourceLineNo">478</span><a name="line.478"></a>
-<span class="sourceLineNo">479</span>  // this mapping means that under a federated FileSystem implementation, we'll<a name="line.479"></a>
-<span class="sourceLineNo">480</span>  // only log the first failure from any of the underlying FileSystems at WARN and all others<a name="line.480"></a>
-<span class="sourceLineNo">481</span>  // will be at DEBUG.<a name="line.481"></a>
-<span class="sourceLineNo">482</span>  private static final Map&lt;FileSystem, Boolean&gt; warningMap = new ConcurrentHashMap&lt;&gt;();<a name="line.482"></a>
-<span class="sourceLineNo">483</span><a name="line.483"></a>
-<span class="sourceLineNo">484</span>  /**<a name="line.484"></a>
-<span class="sourceLineNo">485</span>   * Sets storage policy for given path.<a name="line.485"></a>
-<span class="sourceLineNo">486</span>   * If the passed path is a directory, we'll set the storage policy for all files<a name="line.486"></a>
-<span class="sourceLineNo">487</span>   * created in the future in said directory. Note that this change in storage<a name="line.487"></a>
-<span class="sourceLineNo">488</span>   * policy takes place at the FileSystem level; it will persist beyond this RS's lifecycle.<a name="line.488"></a>
-<span class="sourceLineNo">489</span>   * If we're running on a version of FileSystem that doesn't support the given storage policy<a name="line.489"></a>
-<span class="sourceLineNo">490</span>   * (or storage policies at all), then we'll issue a log message and continue.<a name="line.490"></a>
-<span class="sourceLineNo">491</span>   *<a name="line.491"></a>
-<span class="sourceLineNo">492</span>   * See http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html<a name="line.492"></a>
-<span class="sourceLineNo">493</span>   *<a name="line.493"></a>
-<span class="sourceLineNo">494</span>   * @param fs We only do anything it implements a setStoragePolicy method<a name="line.494"></a>
-<span class="sourceLineNo">495</span>   * @param path the Path whose storage policy is to be set<a name="line.495"></a>
-<span class="sourceLineNo">496</span>   * @param storagePolicy Policy to set on &lt;code&gt;path&lt;/code&gt;; see hadoop 2.6+<a name="line.496"></a>
-<span class="sourceLineNo">497</span>   *   org.apache.hadoop.hdfs.protocol.HdfsConstants for possible list e.g<a name="line.497"></a>
-<span class="sourceLineNo">498</span>   *   'COLD', 'WARM', 'HOT', 'ONE_SSD', 'ALL_SSD', 'LAZY_PERSIST'.<a name="line.498"></a>
-<span class="sourceLineNo">499</span>   */<a name="line.499"></a>
-<span class="sourceLineNo">500</span>  public static void setStoragePolicy(final FileSystem fs, final Path path,<a name="line.500"></a>
-<span class="sourceLineNo">501</span>      final String storagePolicy) {<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    try {<a name="line.502"></a>
-<span class="sourceLineNo">503</span>      setStoragePolicy(fs, path, storagePolicy, false);<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    } catch (IOException e) {<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      // should never arrive here<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      LOG.warn("We have chosen not to throw exception but some unexpectedly thrown out", e);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>    }<a name="line.507"></a>
-<span class="sourceLineNo">508</span>  }<a name="line.508"></a>
-<span class="sourceLineNo">509</span><a name="line.509"></a>
-<span class="sourceLineNo">510</span>  static void setStoragePolicy(final FileSystem fs, final Path path, final String storagePolicy,<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      boolean throwException) throws IOException {<a name="line.511"></a>
-<span class="sourceLineNo">512</span>    if (storagePolicy == null) {<a name="line.512"></a>
-<span class="sourceLineNo">513</span>      if (LOG.isTraceEnabled()) {<a name="line.513"></a>
-<span class="sourceLineNo">514</span>        LOG.trace("We were passed a null storagePolicy, exiting early.");<a name="line.514"></a>
-<span class="sourceLineNo">515</span>      }<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      return;<a name="line.516"></a>
-<span class="sourceLineNo">517</span>    }<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    String trimmedStoragePolicy = storagePolicy.trim();<a name="line.518"></a>
-<span class="sourceLineNo">519</span>    if (trimmedStoragePolicy.isEmpty()) {<a name="line.519"></a>
-<span class="sourceLineNo">520</span>      LOG.trace("We were passed an empty storagePolicy, exiting early.");<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      return;<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } else {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      trimmedStoragePolicy = trimmedStoragePolicy.toUpperCase(Locale.ROOT);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>    if (trimmedStoragePolicy.equals(HConstants.DEFER_TO_HDFS_STORAGE_POLICY)) {<a name="line.525"></a>
-<span class="sourceLineNo">526</span>      LOG.trace("We were passed the defer-to-hdfs policy {}, exiting early.", trimmedStoragePolicy);<a name="line.526"></a>
-<span class="sourceLineNo">527</span>      return;<a name="line.527"></a>
-<span class="sourceLineNo">528</span>    }<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    try {<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      invokeSetStoragePolicy(fs, path, trimmedStoragePolicy);<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    } catch (IOException e) {<a name="line.531"></a>
-<span class="sourceLineNo">532</span>      LOG.trace("Failed to invoke set storage policy API on FS", e);<a name="line.532"></a>
-<span class="sourceLineNo">533</span>      if (throwException) {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>        throw e;<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      }<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    }<a name="line.536"></a>
-<span class="sourceLineNo">537</span>  }<a name="line.537"></a>
-<span class="sourceLineNo">538</span><a name="line.538"></a>
-<span class="sourceLineNo">539</span>  /*<a name="line.539"></a>
-<span class="sourceLineNo">540</span>   * All args have been checked and are good. Run the setStoragePolicy invocation.<a name="line.540"></a>
-<span class="sourceLineNo">541</span>   */<a name="line.541"></a>
-<span class="sourceLineNo">542</span>  private static void invokeSetStoragePolicy(final FileSystem fs, final Path path,<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      final String storagePolicy) throws IOException {<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    Exception toThrow = null;<a name="line.544"></a>
-<span class="sourceLineNo">545</span><a name="line.545"></a>
-<span class="sourceLineNo">546</span>    try {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      fs.setStoragePolicy(path, storagePolicy);<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      LOG.debug("Set storagePolicy={} for path={}", storagePolicy, path);<a name="line.548"></a>
-<span class="sourceLineNo">549</span>    } catch (Exception e) {<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      toThrow = e;<a name="line.550"></a>
-<span class="sourceLineNo">551</span>      // This swallows FNFE, should we be throwing it? seems more likely to indicate dev<a name="line.551"></a>
-<span class="sourceLineNo">552</span>      // misuse than a runtime problem with HDFS.<a name="line.552"></a>
-<span class="sourceLineNo">553</span>      if (!warningMap.containsKey(fs)) {<a name="line.553"></a>
-<span class="sourceLineNo">554</span>        warningMap.put(fs, true);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>        LOG.warn("Unable to set storagePolicy=" + storagePolicy + " for path=" + path + ". " +<a name="line.555"></a>
-<span class="sourceLineNo">556</span>            "DEBUG log level might have more details.", e);<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      } else if (LOG.isDebugEnabled()) {<a name="line.557"></a>
-<span class="sourceLineNo">558</span>        LOG.debug("Unable to set storagePolicy=" + storagePolicy + " for path=" + path, e);<a name="line.558"></a>
-<span class="sourceLineNo">559</span>      }<a name="line.559"></a>
-<span class="sourceLineNo">560</span><a name="line.560"></a>
-<span class="sourceLineNo">561</span>      // Hadoop 2.8+, 3.0-a1+ added FileSystem.setStoragePolicy with a default implementation<a name="line.561"></a>
-<span class="sourceLineNo">562</span>      // that throws UnsupportedOperationException<a name="line.562"></a>
-<span class="sourceLineNo">563</span>      if (e instanceof UnsupportedOperationException) {<a name="line.563"></a>
-<span class="sourceLineNo">564</span>        if (LOG.isDebugEnabled()) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>          LOG.debug("The underlying FileSystem implementation doesn't support " +<a name="line.565"></a>
-<span class="sourceLineNo">566</span>              "setStoragePolicy. This is probably intentional on their part, since HDFS-9345 " +<a name="line.566"></a>
-<span class="sourceLineNo">567</span>              "appears to be present in your version of Hadoop. For more information check " +<a name="line.567"></a>
-<span class="sourceLineNo">568</span>              "the Hadoop documentation on 'ArchivalStorage', the Hadoop FileSystem " +<a name="line.568"></a>
-<span class="sourceLineNo">569</span>              "specification docs from HADOOP-11981, and/or related documentation from the " +<a name="line.569"></a>
-<span class="sourceLineNo">570</span>              "provider of the underlying FileSystem (its name should appear in the " +<a name="line.570"></a>
-<span class="sourceLineNo">571</span>              "stacktrace that accompanies this message). Note in particular that Hadoop's " +<a name="line.571"></a>
-<span class="sourceLineNo">572</span>              "local filesystem implementation doesn't support storage policies.", e);<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        }<a name="line.573"></a>
-<span class="sourceLineNo">574</span>      }<a name="line.574"></a>
-<span class="sourceLineNo">575</span>    }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>    if (toThrow != null) {<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      throw new IOException(toThrow);<a name="line.578"></a>
-<span class="sourceLineNo">579</span>    }<a name="line.579"></a>
-<span class="sourceLineNo">580</span>  }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>  /**<a name="line.582"></a>
-<span class="sourceLineNo">583</span>   * @param conf must not be null<a name="line.583"></a>
-<span class="sourceLineNo">584</span>   * @return True if this filesystem whose scheme is 'hdfs'.<a name="line.584"></a>
-<span class="sourceLineNo">585</span>   * @throws IOException from underlying FileSystem<a name="line.585"></a>
-<span class="sourceLineNo">586</span>   */<a name="line.586"></a>
-<span class="sourceLineNo">587</span>  public static boolean isHDFS(final Configuration conf) throws IOException {<a name="line.587"></a>
-<span class="sourceLineNo">588</span>    FileSystem fs = FileSystem.get(conf);<a name="line.588"></a>
-<span class="sourceLineNo">589</span>    String scheme = fs.getUri().getScheme();<a name="line.589"></a>
-<span class="sourceLineNo">590</span>    return scheme.equalsIgnoreCase("hdfs");<a name="line.590"></a>
-<span class="sourceLineNo">591</span>  }<a name="line.591"></a>
-<span class="sourceLineNo">592</span><a name="line.592"></a>
-<span class="sourceLineNo">593</span>  /**<a name="line.593"></a>
-<span class="sourceLineNo">594</span>   * Checks if the given path is the one with 'recovered.edits' dir.<a name="line.594"></a>
-<span class="sourceLineNo">595</span>   * @param path must not be null<a name="line.595"></a>
-<span class="sourceLineNo">596</span>   * @return True if we recovered edits<a name="line.596"></a>
-<span class="sourceLineNo">597</span>   */<a name="line.597"></a>
-<span class="sourceLineNo">598</span>  public static boolean isRecoveredEdits(Path path) {<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    return path.toString().contains(HConstants.RECOVERED_EDITS_DIR);<a name="line.599"></a>
-<span class="sourceLineNo">600</span>  }<a name="line.600"></a>
-<span class="sourceLineNo">601</span><a name="line.601"></a>
-<span class="sourceLineNo">602</span>  /**<a name="line.602"></a>
-<span class="sourceLineNo">603</span>   * @param conf must not be null<a name="line.603"></a>
-<span class="sourceLineNo">604</span>   * @return Returns the filesystem of the hbase rootdir.<a name="line.604"></a>
-<span class="sourceLineNo">605</span>   * @throws IOException from underlying FileSystem<a name="line.605"></a>
-<span class="sourceLineNo">606</span>   */<a name="line.606"></a>
-<span class="sourceLineNo">607</span>  public static FileSystem getCurrentFileSystem(Configuration conf) throws IOException {<a name="line.607"></a>
-<span class="sourceLineNo">608</span>    return getRootDir(conf).getFileSystem(conf);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>  }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>  /**<a name="line.611"></a>
-<span class="sourceLineNo">612</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.612"></a>
-<span class="sourceLineNo">613</span>   * This accommodates differences between hadoop versions, where hadoop 1<a name="line.613"></a>
-<span class="sourceLineNo">614</span>   * does not throw a FileNotFoundException, and return an empty FileStatus[]<a name="line.614"></a>
-<span class="sourceLineNo">615</span>   * while Hadoop 2 will throw FileNotFoundException.<a name="line.615"></a>
+<span class="sourceLineNo">070</span>  /**<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   * Compare of path component. Does not consider schema; i.e. if schemas<a name="line.71"></a>
+<span class="sourceLineNo">072</span>   * different but &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;,<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   * then the function returns true<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   * @param rootPath value to check for<a name="line.74"></a>
+<span class="sourceLineNo">075</span>   * @param path subject to check<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   * @return True if &lt;code&gt;path&lt;/code&gt; starts with &lt;code&gt;rootPath&lt;/code&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   */<a name="line.77"></a>
+<span class="sourceLineNo">078</span>  public static boolean isStartingWithPath(final Path rootPath, final String path) {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    String uriRootPath = rootPath.toUri().getPath();<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    String tailUriPath = (new Path(path)).toUri().getPath();<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    return tailUriPath.startsWith(uriRootPath);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>  }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>  /**<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   * '/a/b/c' part. Does not consider schema; i.e. if schemas different but path or subpath matches,<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   * the two will equate.<a name="line.87"></a>
+<span class="sourceLineNo">088</span>   * @param pathToSearch Path we will be trying to match against.<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   * @param pathTail what to match<a name="line.89"></a>
+<span class="sourceLineNo">090</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span>   */<a name="line.91"></a>
+<span class="sourceLineNo">092</span>  public static boolean isMatchingTail(final Path pathToSearch, String pathTail) {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    return isMatchingTail(pathToSearch, new Path(pathTail));<a name="line.93"></a>
+<span class="sourceLineNo">094</span>  }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>  /**<a name="line.96"></a>
+<span class="sourceLineNo">097</span>   * Compare path component of the Path URI; e.g. if hdfs://a/b/c and /a/b/c, it will compare the<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   * '/a/b/c' part. If you passed in 'hdfs://a/b/c and b/c, it would return true.  Does not consider<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   * schema; i.e. if schemas different but path or subpath matches, the two will equate.<a name="line.99"></a>
+<span class="sourceLineNo">100</span>   * @param pathToSearch Path we will be trying to match agains against<a name="line.100"></a>
+<span class="sourceLineNo">101</span>   * @param pathTail what to match<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   * @return True if &lt;code&gt;pathTail&lt;/code&gt; is tail on the path of &lt;code&gt;pathToSearch&lt;/code&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   */<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  public static boolean isMatchingTail(final Path pathToSearch, final Path pathTail) {<a name="line.104"></a>
+<span class="sourceLineNo">105</span>    if (pathToSearch.depth() != pathTail.depth()) {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      return false;<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    Path tailPath = pathTail;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    String tailName;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    Path toSearch = pathToSearch;<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    String toSearchName;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    boolean result = false;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    do {<a name="line.113"></a>
+<span class="sourceLineNo">114</span>      tailName = tailPath.getName();<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      if (tailName == null || tailName.length() &lt;= 0) {<a name="line.115"></a>
+<span class="sourceLineNo">116</span>        result = true;<a name="line.116"></a>
+<span class="sourceLineNo">117</span>        break;<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      }<a name="line.118"></a>
+<span class="sourceLineNo">119</span>      toSearchName = toSearch.getName();<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      if (toSearchName == null || toSearchName.length() &lt;= 0) {<a name="line.120"></a>
+<span class="sourceLineNo">121</span>        break;<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      }<a name="line.122"></a>
+<span class="sourceLineNo">123</span>      // Move up a parent on each path for next go around.  Path doesn't let us go off the end.<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      tailPath = tailPath.getParent();<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      toSearch = toSearch.getParent();<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    } while(tailName.equals(toSearchName));<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    return result;<a name="line.127"></a>
+<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>  /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>   * Delete if exists.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   * @param fs filesystem object<a name="line.132"></a>
+<span class="sourceLineNo">133</span>   * @param dir directory to delete<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   * @return True if deleted &lt;code&gt;dir&lt;/code&gt;<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   * @throws IOException e<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   */<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public static boolean deleteDirectory(final FileSystem fs, final Path dir) throws IOException {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    return fs.exists(dir) &amp;&amp; fs.delete(dir, true);<a name="line.138"></a>
+<span class="sourceLineNo">139</span>  }<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>  /**<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   * Return the number of bytes that large input files should be optimally<a name="line.142"></a>
+<span class="sourceLineNo">143</span>   * be split into to minimize i/o time.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>   *<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   * @param fs filesystem object<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   * @return the default block size for the path's filesystem<a name="line.146"></a>
+<span class="sourceLineNo">147</span>   */<a name="line.147"></a>
+<span class="sourceLineNo">148</span>  public static long getDefaultBlockSize(final FileSystem fs, final Path path) {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    return fs.getDefaultBlockSize(path);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
+<span class="sourceLineNo">151</span><a name="line.151"></a>
+<span class="sourceLineNo">152</span>  /*<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   * Get the default replication.<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   *<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   * @param fs filesystem object<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   * @param f path of file<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   * @return default replication for the path's filesystem<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   */<a name="line.158"></a>
+<span class="sourceLineNo">159</span>  public static short getDefaultReplication(final FileSystem fs, final Path path) {<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    return fs.getDefaultReplication(path);<a name="line.160"></a>
+<span class="sourceLineNo">161</span>  }<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>  /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   * Returns the default buffer size to use during writes.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>   *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   * The size of the buffer should probably be a multiple of hardware<a name="line.166"></a>
+<span class="sourceLineNo">167</span>   * page size (4096 on Intel x86), and it determines how much data is<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   * buffered during read and write operations.<a name="line.168"></a>
+<span class="sourceLineNo">169</span>   *<a name="line.169"></a>
+<span class="sourceLineNo">170</span>   * @param fs filesystem object<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   * @return default buffer size to use during writes<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   */<a name="line.172"></a>
+<span class="sourceLineNo">173</span>  public static int getDefaultBufferSize(final FileSystem fs) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    return fs.getConf().getInt("io.file.buffer.size", 4096);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>  }<a name="line.175"></a>
+<span class="sourceLineNo">176</span><a name="line.176"></a>
+<span class="sourceLineNo">177</span>  /**<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   * Create the specified file on the filesystem. By default, this will:<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   * &lt;ol&gt;<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   * &lt;li&gt;apply the umask in the configuration (if it is enabled)&lt;/li&gt;<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   * &lt;li&gt;use the fs configured buffer size (or 4096 if not set)&lt;/li&gt;<a name="line.181"></a>
+<span class="sourceLineNo">182</span>   * &lt;li&gt;use the default replication&lt;/li&gt;<a name="line.182"></a>
+<span class="sourceLineNo">183</span>   * &lt;li&gt;use the default block size&lt;/li&gt;<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   * &lt;li&gt;not track progress&lt;/li&gt;<a name="line.184"></a>
+<span class="sourceLineNo">185</span>   * &lt;/ol&gt;<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   *<a name="line.186"></a>
+<span class="sourceLineNo">187</span>   * @param fs {@link FileSystem} on which to write the file<a name="line.187"></a>
+<span class="sourceLineNo">188</span>   * @param path {@link Path} to the file to write<a name="line.188"></a>
+<span class="sourceLineNo">189</span>   * @param perm intial permissions<a name="line.189"></a>
+<span class="sourceLineNo">190</span>   * @param overwrite Whether or not the created file should be overwritten.<a name="line.190"></a>
+<span class="sourceLineNo">191</span>   * @return output stream to the created file<a name="line.191"></a>
+<span class="sourceLineNo">192</span>   * @throws IOException if the file cannot be created<a name="line.192"></a>
+<span class="sourceLineNo">193</span>   */<a name="line.193"></a>
+<span class="sourceLineNo">194</span>  public static FSDataOutputStream create(FileSystem fs, Path path,<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      FsPermission perm, boolean overwrite) throws IOException {<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    if (LOG.isTraceEnabled()) {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      LOG.trace("Creating file={} with permission={}, overwrite={}", path, perm, overwrite);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    }<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    return fs.create(path, perm, overwrite, getDefaultBufferSize(fs),<a name="line.199"></a>
+<span class="sourceLineNo">200</span>        getDefaultReplication(fs, path), getDefaultBlockSize(fs, path), null);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>  }<a name="line.201"></a>
+<span class="sourceLineNo">202</span><a name="line.202"></a>
+<span class="sourceLineNo">203</span>  /**<a name="line.203"></a>
+<span class="sourceLineNo">204</span>   * Get the file permissions specified in the configuration, if they are<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   * enabled.<a name="line.205"></a>
+<span class="sourceLineNo">206</span>   *<a name="line.206"></a>
+<span class="sourceLineNo">207</span>   * @param fs filesystem that the file will be created on.<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   * @param conf configuration to read for determining if permissions are<a name="line.208"></a>
+<span class="sourceLineNo">209</span>   *          enabled and which to use<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   * @param permssionConfKey property key in the configuration to use when<a name="line.210"></a>
+<span class="sourceLineNo">211</span>   *          finding the permission<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   * @return the permission to use when creating a new file on the fs. If<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   *         special permissions are not specified in the configuration, then<a name="line.213"></a>
+<span class="sourceLineNo">214</span>   *         the default permissions on the the fs will be returned.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   */<a name="line.215"></a>
+<span class="sourceLineNo">216</span>  public static FsPermission getFilePermissions(final FileSystem fs,<a name="line.216"></a>
+<span class="sourceLineNo">217</span>      final Configuration conf, final String permssionConfKey) {<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    boolean enablePermissions = conf.getBoolean(<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        HConstants.ENABLE_DATA_FILE_UMASK, false);<a name="line.219"></a>
+<span class="sourceLineNo">220</span><a name="line.220"></a>
+<span class="sourceLineNo">221</span>    if (enablePermissions) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>      try {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>        FsPermission perm = new FsPermission(FULL_RWX_PERMISSIONS);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>        // make sure that we have a mask, if not, go default.<a name="line.224"></a>
+<span class="sourceLineNo">225</span>        String mask = conf.get(permssionConfKey);<a name="line.225"></a>
+<span class="sourceLineNo">226</span>        if (mask == null) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>          return FsPermission.getFileDefault();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        }<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        // appy the umask<a name="line.229"></a>
+<span class="sourceLineNo">230</span>        FsPermission umask = new FsPermission(mask);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>        return perm.applyUMask(umask);<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      } catch (IllegalArgumentException e) {<a name="line.232"></a>
+<span class="sourceLineNo">233</span>        LOG.warn(<a name="line.233"></a>
+<span class="sourceLineNo">234</span>            "Incorrect umask attempted to be created: "<a name="line.234"></a>
+<span class="sourceLineNo">235</span>                + conf.get(permssionConfKey)<a name="line.235"></a>
+<span class="sourceLineNo">236</span>                + ", using default file permissions.", e);<a name="line.236"></a>
+<span class="sourceLineNo">237</span>        return FsPermission.getFileDefault();<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      }<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    }<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    return FsPermission.getFileDefault();<a name="line.240"></a>
+<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
+<span class="sourceLineNo">242</span><a name="line.242"></a>
+<span class="sourceLineNo">243</span>  /**<a name="line.243"></a>
+<span class="sourceLineNo">244</span>   * Verifies root directory path is a valid URI with a scheme<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   *<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   * @param root root directory path<a name="line.246"></a>
+<span class="sourceLineNo">247</span>   * @return Passed &lt;code&gt;root&lt;/code&gt; argument.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   * @throws IOException if not a valid URI with a scheme<a name="line.248"></a>
+<span class="sourceLineNo">249</span>   */<a name="line.249"></a>
+<span class="sourceLineNo">250</span>  public static Path validateRootPath(Path root) throws IOException {<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    try {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      URI rootURI = new URI(root.toString());<a name="line.252"></a>
+<span class="sourceLineNo">253</span>      String scheme = rootURI.getScheme();<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      if (scheme == null) {<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        throw new IOException("Root directory does not have a scheme");<a name="line.255"></a>
+<span class="sourceLineNo">256</span>      }<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      return root;<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    } catch (URISyntaxException e) {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      throw new IOException("Root directory path is not a valid " +<a name="line.259"></a>
+<span class="sourceLineNo">260</span>        "URI -- check your " + HConstants.HBASE_DIR + " configuration", e);<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    }<a name="line.261"></a>
+<span class="sourceLineNo">262</span>  }<a name="line.262"></a>
+<span class="sourceLineNo">263</span><a name="line.263"></a>
+<span class="sourceLineNo">264</span>  /**<a name="line.264"></a>
+<span class="sourceLineNo">265</span>   * Checks for the presence of the WAL log root path (using the provided conf object) in the given<a name="line.265"></a>
+<span class="sourceLineNo">266</span>   * path. If it exists, this method removes it and returns the String representation of remaining<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   * relative path.<a name="line.267"></a>
+<span class="sourceLineNo">268</span>   * @param path must not be null<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   * @param conf must not be null<a name="line.269"></a>
+<span class="sourceLineNo">270</span>   * @return String representation of the remaining relative path<a name="line.270"></a>
+<span class="sourceLineNo">271</span>   * @throws IOException from underlying filesystem<a name="line.271"></a>
+<span class="sourceLineNo">272</span>   */<a name="line.272"></a>
+<span class="sourceLineNo">273</span>  public static String removeWALRootPath(Path path, final Configuration conf) throws IOException {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    Path root = getWALRootDir(conf);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>    String pathStr = path.toString();<a name="line.275"></a>
+<span class="sourceLineNo">276</span>    // check that the path is absolute... it has the root path in it.<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    if (!pathStr.startsWith(root.toString())) {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      return pathStr;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    }<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    // if not, return as it is.<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    return pathStr.substring(root.toString().length() + 1);// remove the "/" too.<a name="line.281"></a>
+<span class="sourceLineNo">282</span>  }<a name="line.282"></a>
+<span class="sourceLineNo">283</span><a name="line.283"></a>
+<span class="sourceLineNo">284</span>  /**<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   * Return the 'path' component of a Path.  In Hadoop, Path is a URI.  This<a name="line.285"></a>
+<span class="sourceLineNo">286</span>   * method returns the 'path' component of a Path's URI: e.g. If a Path is<a name="line.286"></a>
+<span class="sourceLineNo">287</span>   * &lt;code&gt;hdfs://example.org:9000/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;,<a name="line.287"></a>
+<span class="sourceLineNo">288</span>   * this method returns &lt;code&gt;/hbase_trunk/TestTable/compaction.dir&lt;/code&gt;.<a name="line.288"></a>
+<span class="sourceLineNo">289</span>   * This method is useful if you want to print out a Path without qualifying<a name="line.289"></a>
+<span class="sourceLineNo">290</span>   * Filesystem instance.<a name="line.290"></a>
+<span class="sourceLineNo">291</span>   * @param p Filesystem Path whose 'path' component we are to return.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>   * @return Path portion of the Filesystem<a name="line.292"></a>
+<span class="sourceLineNo">293</span>   */<a name="line.293"></a>
+<span class="sourceLineNo">294</span>  public static String getPath(Path p) {<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    return p.toUri().getPath();<a name="line.295"></a>
+<span class="sourceLineNo">296</span>  }<a name="line.296"></a>
+<span class="sourceLineNo">297</span><a name="line.297"></a>
+<span class="sourceLineNo">298</span>  /**<a name="line.298"></a>
+<span class="sourceLineNo">299</span>   * @param c configuration<a name="line.299"></a>
+<span class="sourceLineNo">300</span>   * @return {@link Path} to hbase root directory from<a name="line.300"></a>
+<span class="sourceLineNo">301</span>   *     configuration as a qualified Path.<a name="line.301"></a>
+<span class="sourceLineNo">302</span>   * @throws IOException e<a name="line.302"></a>
+<span class="sourceLineNo">303</span>   */<a name="line.303"></a>
+<span class="sourceLineNo">304</span>  public static Path getRootDir(final Configuration c) throws IOException {<a name="line.304"></a>
+<span class="sourceLineNo">305</span>    Path p = new Path(c.get(HConstants.HBASE_DIR));<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    FileSystem fs = p.getFileSystem(c);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.307"></a>
+<span class="sourceLineNo">308</span>  }<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>  public static void setRootDir(final Configuration c, final Path root) {<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    c.set(HConstants.HBASE_DIR, root.toString());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>  }<a name="line.312"></a>
+<span class="sourceLineNo">313</span><a name="line.313"></a>
+<span class="sourceLineNo">314</span>  public static void setFsDefault(final Configuration c, final Path root) {<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    c.set("fs.defaultFS", root.toString());    // for hadoop 0.21+<a name="line.315"></a>
+<span class="sourceLineNo">316</span>  }<a name="line.316"></a>
+<span class="sourceLineNo">317</span><a name="line.317"></a>
+<span class="sourceLineNo">318</span>  public static void setFsDefault(final Configuration c, final String uri) {<a name="line.318"></a>
+<span class="sourceLineNo">319</span>    c.set("fs.defaultFS", uri); // for hadoop 0.21+<a name="line.319"></a>
+<span class="sourceLineNo">320</span>  }<a name="line.320"></a>
+<span class="sourceLineNo">321</span><a name="line.321"></a>
+<span class="sourceLineNo">322</span>  public static FileSystem getRootDirFileSystem(final Configuration c) throws IOException {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    Path p = getRootDir(c);<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    return p.getFileSystem(c);<a name="line.324"></a>
+<span class="sourceLineNo">325</span>  }<a name="line.325"></a>
+<span class="sourceLineNo">326</span><a name="line.326"></a>
+<span class="sourceLineNo">327</span>  /**<a name="line.327"></a>
+<span class="sourceLineNo">328</span>   * @param c configuration<a name="line.328"></a>
+<span class="sourceLineNo">329</span>   * @return {@link Path} to hbase log root directory: e.g. {@value HBASE_WAL_DIR} from<a name="line.329"></a>
+<span class="sourceLineNo">330</span>   *     configuration as a qualified Path. Defaults to HBase root dir.<a name="line.330"></a>
+<span class="sourceLineNo">331</span>   * @throws IOException e<a name="line.331"></a>
+<span class="sourceLineNo">332</span>   */<a name="line.332"></a>
+<span class="sourceLineNo">333</span>  public static Path getWALRootDir(final Configuration c) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Path p = new Path(c.get(HBASE_WAL_DIR, c.get(HConstants.HBASE_DIR)));<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    if (!isValidWALRootDir(p, c)) {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>      return getRootDir(c);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>    }<a name="line.337"></a>
+<span class="sourceLineNo">338</span>    FileSystem fs = p.getFileSystem(c);<a name="line.338"></a>
+<span class="sourceLineNo">339</span>    return p.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  }<a name="line.340"></a>
+<span class="sourceLineNo">341</span><a name="line.341"></a>
+<span class="sourceLineNo">342</span>  /**<a name="line.342"></a>
+<span class="sourceLineNo">343</span>   * Returns the URI in the string format<a name="line.343"></a>
+<span class="sourceLineNo">344</span>   * @param c configuration<a name="line.344"></a>
+<span class="sourceLineNo">345</span>   * @param p path<a name="line.345"></a>
+<span class="sourceLineNo">346</span>   * @return - the URI's to string format<a name="line.346"></a>
+<span class="sourceLineNo">347</span>   * @throws IOException<a name="line.347"></a>
+<span class="sourceLineNo">348</span>   */<a name="line.348"></a>
+<span class="sourceLineNo">349</span>  public static String getDirUri(final Configuration c, Path p) throws IOException {<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    if (p.toUri().getScheme() != null) {<a name="line.350"></a>
+<span class="sourceLineNo">351</span>      return p.toUri().toString();<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    }<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    return null;<a name="line.353"></a>
+<span class="sourceLineNo">354</span>  }<a name="line.354"></a>
+<span class="sourceLineNo">355</span><a name="line.355"></a>
+<span class="sourceLineNo">356</span>  public static void setWALRootDir(final Configuration c, final Path root) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    c.set(HBASE_WAL_DIR, root.toString());<a name="line.357"></a>
+<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>  public static FileSystem getWALFileSystem(final Configuration c) throws IOException {<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    Path p = getWALRootDir(c);<a name="line.361"></a>
+<span class="sourceLineNo">362</span>    FileSystem fs = p.getFileSystem(c);<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    // hadoop-core does fs caching, so need to propagate this if set<a name="line.363"></a>
+<span class="sourceLineNo">364</span>    String enforceStreamCapability = c.get(UNSAFE_STREAM_CAPABILITY_ENFORCE);<a name="line.364"></a>
+<span class="sourceLineNo">365</span>    if (enforceStreamCapability != null) {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>      fs.getConf().set(UNSAFE_STREAM_CAPABILITY_ENFORCE, enforceStreamCapability);<a name="line.366"></a>
+<span class="sourceLineNo">367</span>    }<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    return fs;<a name="line.368"></a>
+<span class="sourceLineNo">369</span>  }<a name="line.369"></a>
+<span class="sourceLineNo">370</span><a name="line.370"></a>
+<span class="sourceLineNo">371</span>  private static boolean isValidWALRootDir(Path walDir, final Configuration c) throws IOException {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    Path rootDir = getRootDir(c);<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    FileSystem fs = walDir.getFileSystem(c);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Path qualifiedWalDir = walDir.makeQualified(fs.getUri(), fs.getWorkingDirectory());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    if (!qualifiedWalDir.equals(rootDir)) {<a name="line.375"></a>
+<span class="sourceLineNo">376</span>      if (qualifiedWalDir.toString().startsWith(rootDir.toString() + "/")) {<a name="line.376"></a>
+<span class="sourceLineNo">377</span>        throw new IllegalStateException("Illegal WAL directory specified. " +<a name="line.377"></a>
+<span class="sourceLineNo">378</span>          "WAL directories are not permitted to be under root directory: rootDir=" +<a name="line.378"></a>
+<span class="sourceLineNo">379</span>          rootDir.toString() + ", qualifiedWALDir=" + qualifiedWalDir);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>      }<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    }<a name="line.381"></a>
+<span class="sourceLineNo">382</span>    return true;<a name="line.382"></a>
+<span class="sourceLineNo">383</span>  }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>  /**<a name="line.385"></a>
+<span class="sourceLineNo">386</span>   * Returns the WAL region directory based on the given table name and region name<a name="line.386"></a>
+<span class="sourceLineNo">387</span>   * @param conf configuration to determine WALRootDir<a name="line.387"></a>
+<span class="sourceLineNo">388</span>   * @param tableName Table that the region is under<a name="line.388"></a>
+<span class="sourceLineNo">389</span>   * @param encodedRegionName Region name used for creating the final region directory<a name="line.389"></a>
+<span class="sourceLineNo">390</span>   * @return the region directory used to store WALs under the WALRootDir<a name="line.390"></a>
+<span class="sourceLineNo">391</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.391"></a>
+<span class="sourceLineNo">392</span>   */<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  public static Path getWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.393"></a>
+<span class="sourceLineNo">394</span>      final String encodedRegionName) throws IOException {<a name="line.394"></a>
+<span class="sourceLineNo">395</span>    return new Path(getWALTableDir(conf, tableName), encodedRegionName);<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  }<a name="line.396"></a>
+<span class="sourceLineNo">397</span><a name="line.397"></a>
+<span class="sourceLineNo">398</span>  /**<a name="line.398"></a>
+<span class="sourceLineNo">399</span>   * Returns the Table directory under the WALRootDir for the specified table name<a name="line.399"></a>
+<span class="sourceLineNo">400</span>   * @param conf configuration used to get the WALRootDir<a name="line.400"></a>
+<span class="sourceLineNo">401</span>   * @param tableName Table to get the directory for<a name="line.401"></a>
+<span class="sourceLineNo">402</span>   * @return a path to the WAL table directory for the specified table<a name="line.402"></a>
+<span class="sourceLineNo">403</span>   * @throws IOException if there is an exception determining the WALRootDir<a name="line.403"></a>
+<span class="sourceLineNo">404</span>   */<a name="line.404"></a>
+<span class="sourceLineNo">405</span>  public static Path getWALTableDir(final Configuration conf, final TableName tableName)<a name="line.405"></a>
+<span class="sourceLineNo">406</span>      throws IOException {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>    Path baseDir = new Path(getWALRootDir(conf), HConstants.BASE_NAMESPACE_DIR);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    return new Path(new Path(baseDir, tableName.getNamespaceAsString()),<a name="line.408"></a>
+<span class="sourceLineNo">409</span>      tableName.getQualifierAsString());<a name="line.409"></a>
+<span class="sourceLineNo">410</span>  }<a name="line.410"></a>
+<span class="sourceLineNo">411</span><a name="line.411"></a>
+<span class="sourceLineNo">412</span>  /**<a name="line.412"></a>
+<span class="sourceLineNo">413</span>   * For backward compatibility with HBASE-20734, where we store recovered edits in a wrong<a name="line.413"></a>
+<span class="sourceLineNo">414</span>   * directory without BASE_NAMESPACE_DIR. See HBASE-22617 for more details.<a name="line.414"></a>
+<span class="sourceLineNo">415</span>   * @deprecated For compatibility, will be removed in 4.0.0.<a name="line.415"></a>
+<span class="sourceLineNo">416</span>   */<a name="line.416"></a>
+<span class="sourceLineNo">417</span>  @Deprecated<a name="line.417"></a>
+<span class="sourceLineNo">418</span>  public static Path getWrongWALRegionDir(final Configuration conf, final TableName tableName,<a name="line.418"></a>
+<span class="sourceLineNo">419</span>      final String encodedRegionName) throws IOException {<a name="line.419"></a>
+<span class="sourceLineNo">420</span>    Path wrongTableDir = new Path(new Path(getWALRootDir(conf), tableName.getNamespaceAsString()),<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      tableName.getQualifierAsString());<a name="line.421"></a>
+<span class="sourceLineNo">422</span>    return new Path(wrongTableDir, encodedRegionName);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>  }<a name="line.423"></a>
+<span class="sourceLineNo">424</span><a name="line.424"></a>
+<span class="sourceLineNo">425</span>  /**<a name="line.425"></a>
+<span class="sourceLineNo">426</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the table directory under<a name="line.426"></a>
+<span class="sourceLineNo">427</span>   * path rootdir<a name="line.427"></a>
+<span class="sourceLineNo">428</span>   *<a name="line.428"></a>
+<span class="sourceLineNo">429</span>   * @param rootdir qualified path of HBase root directory<a name="line.429"></a>
+<span class="sourceLineNo">430</span>   * @param tableName name of table<a name="line.430"></a>
+<span class="sourceLineNo">431</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.431"></a>
+<span class="sourceLineNo">432</span>   */<a name="line.432"></a>
+<span class="sourceLineNo">433</span>  public static Path getTableDir(Path rootdir, final TableName tableName) {<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    return new Path(getNamespaceDir(rootdir, tableName.getNamespaceAsString()),<a name="line.434"></a>
+<span class="sourceLineNo">435</span>        tableName.getQualifierAsString());<a name="line.435"></a>
+<span class="sourceLineNo">436</span>  }<a name="line.436"></a>
+<span class="sourceLineNo">437</span><a name="line.437"></a>
+<span class="sourceLineNo">438</span>  /**<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing the region directory under<a name="line.439"></a>
+<span class="sourceLineNo">440</span>   * path rootdir<a name="line.440"></a>
+<span class="sourceLineNo">441</span>   *<a name="line.441"></a>
+<span class="sourceLineNo">442</span>   * @param rootdir qualified path of HBase root directory<a name="line.442"></a>
+<span class="sourceLineNo">443</span>   * @param tableName name of table<a name="line.443"></a>
+<span class="sourceLineNo">444</span>   * @param regionName The encoded region name<a name="line.444"></a>
+<span class="sourceLineNo">445</span>   * @return {@link org.apache.hadoop.fs.Path} for region<a name="line.445"></a>
+<span class="sourceLineNo">446</span>   */<a name="line.446"></a>
+<span class="sourceLineNo">447</span>  public static Path getRegionDir(Path rootdir, TableName tableName, String regionName) {<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    return new Path(getTableDir(rootdir, tableName), regionName);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>  }<a name="line.449"></a>
+<span class="sourceLineNo">450</span><a name="line.450"></a>
+<span class="sourceLineNo">451</span>  /**<a name="line.451"></a>
+<span class="sourceLineNo">452</span>   * Returns the {@link org.apache.hadoop.hbase.TableName} object representing<a name="line.452"></a>
+<span class="sourceLineNo">453</span>   * the table directory under<a name="line.453"></a>
+<span class="sourceLineNo">454</span>   * path rootdir<a name="line.454"></a>
+<span class="sourceLineNo">455</span>   *<a name="line.455"></a>
+<span class="sourceLineNo">456</span>   * @param tablePath path of table<a name="line.456"></a>
+<span class="sourceLineNo">457</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.457"></a>
+<span class="sourceLineNo">458</span>   */<a name="line.458"></a>
+<span class="sourceLineNo">459</span>  public static TableName getTableName(Path tablePath) {<a name="line.459"></a>
+<span class="sourceLineNo">460</span>    return TableName.valueOf(tablePath.getParent().getName(), tablePath.getName());<a name="line.460"></a>
+<span class="sourceLineNo">461</span>  }<a name="line.461"></a>
+<span class="sourceLineNo">462</span><a name="line.462"></a>
+<span class="sourceLineNo">463</span>  /**<a name="line.463"></a>
+<span class="sourceLineNo">464</span>   * Returns the {@link org.apache.hadoop.fs.Path} object representing<a name="line.464"></a>
+<span class="sourceLineNo">465</span>   * the namespace directory under path rootdir<a name="line.465"></a>
+<span class="sourceLineNo">466</span>   *<a name="line.466"></a>
+<span class="sourceLineNo">467</span>   * @param rootdir qualified path of HBase root directory<a name="line.467"></a>
+<span class="sourceLineNo">468</span>   * @param namespace namespace name<a name="line.468"></a>
+<span class="sourceLineNo">469</span>   * @return {@link org.apache.hadoop.fs.Path} for table<a name="line.469"></a>
+<span class="sourceLineNo">470</span>   */<a name="line.470"></a>
+<span class="sourceLineNo">471</span>  public static Path getNamespaceDir(Path rootdir, final String namespace) {<a name="line.471"></a>
+<span class="sourceLineNo">472</span>    return new Path(rootdir, new Path(HConstants.BASE_NAMESPACE_DIR,<a name="line.472"></a>
+<span class="sourceLineNo">473</span>        new Path(namespace)));<a name="line.473"></a>
+<span class="sourceLineNo">474</span>  }<a name="line.474"></a>
+<span class="sourceLineNo">475</span><a name="line.475"></a>
+<span class="sourceLineNo">476</span>  // this mapping means that under a federated FileSystem implementation, we'll<a name="line.476"></a>
+<span class="sourceLineNo">477</span>  // only log the first failure from any of the underlying FileSystems at WARN and all others<a name="line.477"></a>
+<span class="sourceLineNo">478</span>  // will be at DEBUG.<a name="line.478"></a>
+<span class="sourceLineNo">479</span>  private static final Map&lt;FileSystem, Boolean&gt; warningMap = new ConcurrentHashMap&lt;&gt;();<a name="line.479"></a>
+<span class="sourceLineNo">480</span><a name="line.480"></a>
+<span class="sourceLineNo">481</span>  /**<a name="line.481"></a>
+<span class="sourceLineNo">482</span>   * Sets storage policy for given path.<a name="line.482"></a>
+<span class="sourceLineNo">483</span>   * If the passed path is a directory, we'll set the storage policy for all files<a name="line.483"></a>
+<span class="sourceLineNo">484</span>   * created in the future in said directory. Note that this change in storage<a name="line.484"></a>
+<span class="sourceLineNo">485</span>   * policy takes place at the FileSystem level; it will persist beyond this RS's lifecycle.<a name="line.485"></a>
+<span class="sourceLineNo">486</span>   * If we're running on a version of FileSystem that doesn't support the given storage policy<a name="line.486"></a>
+<span class="sourceLineNo">487</span>   * (or storage policies at all), then we'll issue a log message and continue.<a name="line.487"></a>
+<span class="sourceLineNo">488</span>   *<a name="line.488"></a>
+<span class="sourceLineNo">489</span>   * See http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html<a name="line.489"></a>
+<span class="sourceLineNo">490</span>   *<a name="line.490"></a>
+<span class="sourceLineNo">491</span>   * @param fs We only do anything it implements a setStoragePolicy method<a name="line.491"></a>
+<span class="sourceLineNo">492</span>   * @param path the Path whose storage policy is to be set<a name="line.492"></a>
+<span class="sourceLineNo">493</span>   * @param storagePolicy Policy to set on &lt;code&gt;path&lt;/code&gt;; see hadoop 2.6+<a name="line.493"></a>
+<span class="sourceLineNo">494</span>   *   org.apache.hadoop.hdfs.protocol.HdfsConstants for possible list e.g<a name="line.494"></a>
+<span class="sourceLineNo">495</span>   *   'COLD', 'WARM', 'HOT', 'ONE_SSD', 'ALL_SSD', 'LAZY_PERSIST'.<a name="line.495"></a>
+<span class="sourceLineNo">496</span>   */<a name="line.496"></a>
+<span class="sourceLineNo">497</span>  public static void setStoragePolicy(final FileSystem fs, final Path path,<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      final String storagePolicy) {<a name="line.498"></a>
+<span class="sourceLineNo">499</span>    try {<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      setStoragePolicy(fs, path, storagePolicy, false);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>    } catch (IOException e) {<a name="line.501"></a>
+<span class="sourceLineNo">502</span>      // should never arrive here<a name="line.502"></a>
+<span class="sourceLineNo">503</span>      LOG.warn("We have chosen not to throw exception but some unexpectedly thrown out", e);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    }<a name="line.504"></a>
+<span class="sourceLineNo">505</span>  }<a name="line.505"></a>
+<span class="sourceLineNo">506</span><a name="line.506"></a>
+<span class="sourceLineNo">507</span>  static void setStoragePolicy(final FileSystem fs, final Path path, final String storagePolicy,<a name="line.507"></a>
+<span class="sourceLineNo">508</span>      boolean throwException) throws IOException {<a name="line.508"></a>
+<span class="sourceLineNo">509</span>    if (storagePolicy == null) {<a name="line.509"></a>
+<span class="sourceLineNo">510</span>      if (LOG.isTraceEnabled()) {<a name="line.510"></a>
+<span class="sourceLineNo">511</span>        LOG.trace("We were passed a null storagePolicy, exiting early.");<a name="line.511"></a>
+<span class="sourceLineNo">512</span>      }<a name="line.512"></a>
+<span class="sourceLineNo">513</span>      return;<a name="line.513"></a>
+<span class="sourceLineNo">514</span>    }<a name="line.514"></a>
+<span class="sourceLineNo">515</span>    String trimmedStoragePolicy = storagePolicy.trim();<a name="line.515"></a>
+<span class="sourceLineNo">516</span>    if (trimmedStoragePolicy.isEmpty()) {<a name="line.516"></a>
+<span class="sourceLineNo">517</span>      LOG.trace("We were passed an empty storagePolicy, exiting early.");<a name="line.517"></a>
+<span class="sourceLineNo">518</span>      return;<a name="line.518"></a>
+<span class="sourceLineNo">519</span>    } else {<a name="line.519"></a>
+<span class="sourceLineNo">520</span>      trimmedStoragePolicy = trimmedStoragePolicy.toUpperCase(Locale.ROOT);<a name="line.520"></a>
+<span class="sourceLineNo">521</span>    }<a name="line.521"></a>
+<span class="sourceLineNo">522</span>    if (trimmedStoragePolicy.equals(HConstants.DEFER_TO_HDFS_STORAGE_POLICY)) {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>      LOG.trace("We were passed the defer-to-hdfs policy {}, exiting early.", trimmedStoragePolicy);<a name="line.523"></a>
+<span class="sourceLineNo">524</span>      return;<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    }<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    try {<a name="line.526"></a>
+<span class="sourceLineNo">527</span>      invokeSetStoragePolicy(fs, path, trimmedStoragePolicy);<a name="line.527"></a>
+<span class="sourceLineNo">528</span>    } catch (IOException e) {<a name="line.528"></a>
+<span class="sourceLineNo">529</span>      LOG.trace("Failed to invoke set storage policy API on FS", e);<a name="line.529"></a>
+<span class="sourceLineNo">530</span>      if (throwException) {<a name="line.530"></a>
+<span class="sourceLineNo">531</span>        throw e;<a name="line.531"></a>
+<span class="sourceLineNo">532</span>      }<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    }<a name="line.533"></a>
+<span class="sourceLineNo">534</span>  }<a name="line.534"></a>
+<span class="sourceLineNo">535</span><a name="line.535"></a>
+<span class="sourceLineNo">536</span>  /*<a name="line.536"></a>
+<span class="sourceLineNo">537</span>   * All args have been checked and are good. Run the setStoragePolicy invocation.<a name="line.537"></a>
+<span class="sourceLineNo">538</span>   */<a name="line.538"></a>
+<span class="sourceLineNo">539</span>  private static void invokeSetStoragePolicy(final FileSystem fs, final Path path,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>      final String storagePolicy) throws IOException {<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    Exception toThrow = null;<a name="line.541"></a>
+<span class="sourceLineNo">542</span><a name="line.542"></a>
+<span class="sourceLineNo">543</span>    try {<a name="line.543"></a>
+<span class="sourceLineNo">544</span>      fs.setStoragePolicy(path, storagePolicy);<a name="line.544"></a>
+<span class="sourceLineNo">545</span>      LOG.debug("Set storagePolicy={} for path={}", storagePolicy, path);<a name="line.545"></a>
+<span class="sourceLineNo">546</span>    } catch (Exception e) {<a name="line.546"></a>
+<span class="sourceLineNo">547</span>      toThrow = e;<a name="line.547"></a>
+<span class="sourceLineNo">548</span>      // This swallows FNFE, should we be throwing it? seems more likely to indicate dev<a name="line.548"></a>
+<span class="sourceLineNo">549</span>      // misuse than a runtime problem with HDFS.<a name="line.549"></a>
+<span class="sourceLineNo">550</span>      if (!warningMap.containsKey(fs)) {<a name="line.550"></a>
+<span class="sourceLineNo">551</span>        warningMap.put(fs, true);<a name="line.551"></a>
+<span class="sourceLineNo">552</span>        LOG.warn("Unable to set storagePolicy=" + storagePolicy + " for path=" + path + ". " +<a name="line.552"></a>
+<span class="sourceLineNo">553</span>            "DEBUG log level might have more details.", e);<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      } else if (LOG.isDebugEnabled()) {<a name="line.554"></a>
+<span class="sourceLineNo">555</span>        LOG.debug("Unable to set storagePolicy=" + storagePolicy + " for path=" + path, e);<a name="line.555"></a>
+<span class="sourceLineNo">556</span>      }<a name="line.556"></a>
+<span class="sourceLineNo">557</span><a name="line.557"></a>
+<span class="sourceLineNo">558</span>      // Hadoop 2.8+, 3.0-a1+ added FileSystem.setStoragePolicy with a default implementation<a name="line.558"></a>
+<span class="sourceLineNo">559</span>      // that throws UnsupportedOperationException<a name="line.559"></a>
+<span class="sourceLineNo">560</span>      if (e instanceof UnsupportedOperationException) {<a name="line.560"></a>
+<span class="sourceLineNo">561</span>        if (LOG.isDebugEnabled()) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>          LOG.debug("The underlying FileSystem implementation doesn't support " +<a name="line.562"></a>
+<span class="sourceLineNo">563</span>              "setStoragePolicy. This is probably intentional on their part, since HDFS-9345 " +<a name="line.563"></a>
+<span class="sourceLineNo">564</span>              "appears to be present in your version of Hadoop. For more information check " +<a name="line.564"></a>
+<span class="sourceLineNo">565</span>              "the Hadoop documentation on 'ArchivalStorage', the Hadoop FileSystem " +<a name="line.565"></a>
+<span class="sourceLineNo">566</span>              "specification docs from HADOOP-11981, and/or related documentation from the " +<a name="line.566"></a>
+<span class="sourceLineNo">567</span>              "provider of the underlying FileSystem (its name should appear in the " +<a name="line.567"></a>
+<span class="sourceLineNo">568</span>              "stacktrace that accompanies this message). Note in particular that Hadoop's " +<a name="line.568"></a>
+<span class="sourceLineNo">569</span>              "local filesystem implementation doesn't support storage policies.", e);<a name="line.569"></a>
+<span class="sourceLineNo">570</span>        }<a name="line.570"></a>
+<span class="sourceLineNo">571</span>      }<a name="line.571"></a>
+<span class="sourceLineNo">572</span>    }<a name="line.572"></a>
+<span class="sourceLineNo">573</span><a name="line.573"></a>
+<span class="sourceLineNo">574</span>    if (toThrow != null) {<a name="line.574"></a>
+<span class="sourceLineNo">575</span>      throw new IOException(toThrow);<a name="line.575"></a>
+<span class="sourceLineNo">576</span>    }<a name="line.576"></a>
+<span class="sourceLineNo">577</span>  }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>  /**<a name="line.579"></a>
+<span class="sourceLineNo">580</span>   * @param conf must not be null<a name="line.580"></a>
+<span class="sourceLineNo">581</span>   * @return True if this filesystem whose scheme is 'hdfs'.<a name="line.581"></a>
+<span class="sourceLineNo">582</span>   * @throws IOException from underlying FileSystem<a name="line.582"></a>
+<span class="sourceLineNo">583</span>   */<a name="line.583"></a>
+<span class="sourceLineNo">584</span>  public static boolean isHDFS(final Configuration conf) throws IOException {<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    FileSystem fs = FileSystem.get(conf);<a name="line.585"></a>
+<span class="sourceLineNo">586</span>    String scheme = fs.getUri().getScheme();<a name="line.586"></a>
+<span class="sourceLineNo">587</span>    return scheme.equalsIgnoreCase("hdfs");<a name="line.587"></a>
+<span class="sourceLineNo">588</span>  }<a name="line.588"></a>
+<span class="sourceLineNo">589</span><a name="line.589"></a>
+<span class="sourceLineNo">590</span>  /**<a name="line.590"></a>
+<span class="sourceLineNo">591</span>   * Checks if the given path is the one with 'recovered.edits' dir.<a name="line.591"></a>
+<span class="sourceLineNo">592</span>   * @param path must not be null<a name="line.592"></a>
+<span class="sourceLineNo">593</span>   * @return True if we recovered edits<a name="line.593"></a>
+<span class="sourceLineNo">594</span>   */<a name="line.594"></a>
+<span class="sourceLineNo">595</span>  public static boolean isRecoveredEdits(Path path) {<a name="line.595"></a>
+<span class="sourceLineNo">596</span>    return path.toString().contains(HConstants.RECOVERED_EDITS_DIR);<a name="line.596"></a>
+<span class="sourceLineNo">597</span>  }<a name="line.597"></a>
+<span class="sourceLineNo">598</span><a name="line.598"></a>
+<span class="sourceLineNo">599</span>  /**<a name="line.599"></a>
+<span class="sourceLineNo">600</span>   * @param conf must not be null<a name="line.600"></a>
+<span class="sourceLineNo">601</span>   * @return Returns the filesystem of the hbase rootdir.<a name="line.601"></a>
+<span class="sourceLineNo">602</span>   * @throws IOException from underlying FileSystem<a name="line.602"></a>
+<span class="sourceLineNo">603</span>   */<a name="line.603"></a>
+<span class="sourceLineNo">604</span>  public static FileSystem getCurrentFileSystem(Configuration conf) throws IOException {<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    return getRootDir(conf).getFileSystem(conf);<a name="line.605"></a>
+<span class="sourceLineNo">606</span>  }<a name="line.606"></a>
+<span class="sourceLineNo">607</span><a name="line.607"></a>
+<span class="sourceLineNo">608</span>  /**<a name="line.608"></a>
+<span class="sourceLineNo">609</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.609"></a>
+<span class="sourceLineNo">610</span>   * This accommodates differences between hadoop versions, where hadoop 1<a name="line.610"></a>
+<span class="sourceLineNo">611</span>   * does not throw a FileNotFoundException, and return an empty FileStatus[]<a name="line.611"></a>
+<span class="sourceLineNo">612</span>   * while Hadoop 2 will throw FileNotFoundException.<a name="line.612"></a>
+<span class="sourceLineNo">613</span>   *<a name="line.613"></a>
+<span class="sourceLineNo">614</span>   * Where possible, prefer FSUtils#listStatusWithStatusFilter(FileSystem,<a name="line.614"></a>
+<span class="sourceLineNo">615</span>   * Path, FileStatusFilter) instead.<a name="line.615"></a>
 <span class="sourceLineNo">616</span>   *<a name="line.616"></a>
-<span class="sourceLineNo">617</span>   * Where possible, prefer FSUtils#listStatusWithStatusFilter(FileSystem,<a name="line.617"></a>
-<span class="sourceLineNo">618</span>   * Path, FileStatusFilter) instead.<a name="line.618"></a>
-<span class="sourceLineNo">619</span>   *<a name="line.619"></a>
-<span class="sourceLineNo">620</span>   * @param fs file system<a name="line.620"></a>
-<span class="sourceLineNo">621</span>   * @param dir directory<a name="line.621"></a>
-<span class="sourceLineNo">622</span>   * @param filter path filter<a name="line.622"></a>
-<span class="sourceLineNo">623</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.623"></a>
-<span class="sourceLineNo">624</span>   */<a name="line.624"></a>
-<span class="sourceLineNo">625</span>  public static FileStatus[] listStatus(final FileSystem fs,<a name="line.625"></a>
-<span class="sourceLineNo">626</span>      final Path dir, final PathFilter filter) throws IOException {<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    FileStatus [] status = null;<a name="line.627"></a>
-<span class="sourceLineNo">628</span>    try {<a name="line.628"></a>
-<span class="sourceLineNo">629</span>      status = filter == null ? fs.listStatus(dir) : fs.listStatus(dir, filter);<a name="line.629"></a>
-<span class="sourceLineNo">630</span>    } catch (FileNotFoundException fnfe) {<a name="line.630"></a>
-<span class="sourceLineNo">631</span>      // if directory doesn't exist, return null<a name="line.631"></a>
-<span class="sourceLineNo">632</span>      if (LOG.isTraceEnabled()) {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>        LOG.trace("{} doesn't exist", dir);<a name="line.633"></a>
-<span class="sourceLineNo">634</span>      }<a name="line.634"></a>
+<span class="sourceLineNo">617</span>   * @param fs file system<a name="line.617"></a>
+<span class="sourceLineNo">618</span>   * @param dir directory<a name="line.618"></a>
+<span class="sourceLineNo">619</span>   * @param filter path filter<a name="line.619"></a>
+<span class="sourceLineNo">620</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.620"></a>
+<span class="sourceLineNo">621</span>   */<a name="line.621"></a>
+<span class="sourceLineNo">622</span>  public static FileStatus[] listStatus(final FileSystem fs,<a name="line.622"></a>
+<span class="sourceLineNo">623</span>      final Path dir, final PathFilter filter) throws IOException {<a name="line.623"></a>
+<span class="sourceLineNo">624</span>    FileStatus [] status = null;<a name="line.624"></a>
+<span class="sourceLineNo">625</span>    try {<a name="line.625"></a>
+<span class="sourceLineNo">626</span>      status = filter == null ? fs.listStatus(dir) : fs.listStatus(dir, filter);<a name="line.626"></a>
+<span class="sourceLineNo">627</span>    } catch (FileNotFoundException fnfe) {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>      // if directory doesn't exist, return null<a name="line.628"></a>
+<span class="sourceLineNo">629</span>      if (LOG.isTraceEnabled()) {<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        LOG.trace("{} doesn't exist", dir);<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span>    }<a name="line.632"></a>
+<span class="sourceLineNo">633</span>    if (status == null || status.length &lt; 1) {<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      return null;<a name="line.634"></a>
 <span class="sourceLineNo">635</span>    }<a name="line.635"></a>
-<span class="sourceLineNo">636</span>    if (status == null || status.length &lt; 1) {<a name="line.636"></a>
-<span class="sourceLineNo">637</span>      return null;<a name="line.637"></a>
-<span class="sourceLineNo">638</span>    }<a name="line.638"></a>
-<span class="sourceLineNo">639</span>    return status;<a name="line.639"></a>
-<span class="sourceLineNo">640</span>  }<a name="line.640"></a>
-<span class="sourceLineNo">641</span><a name="line.641"></a>
-<span class="sourceLineNo">642</span>  /**<a name="line.642"></a>
-<span class="sourceLineNo">643</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.643"></a>
-<span class="sourceLineNo">644</span>   * This would accommodates differences between hadoop versions<a name="line.644"></a>
-<span class="sourceLineNo">645</span>   *<a name="line.645"></a>
-<span class="sourceLineNo">646</span>   * @param fs file system<a name="line.646"></a>
-<span class="sourceLineNo">647</span>   * @param dir directory<a name="line.647"></a>
-<span class="sourceLineNo">648</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.648"></a>
-<span class="sourceLineNo">649</span>   */<a name="line.649"></a>
-<span class="sourceLineNo">650</span>  public static FileStatus[] listStatus(final FileSystem fs, final Path dir) throws IOException {<a name="line.650"></a>
-<span class="sourceLineNo">651</span>    return listStatus(fs, dir, null);<a name="line.651"></a>
-<span class="sourceLineNo">652</span>  }<a name="line.652"></a>
-<span class="sourceLineNo">653</span><a name="line.653"></a>
-<span class="sourceLineNo">654</span>  /**<a name="line.654"></a>
-<span class="sourceLineNo">655</span>   * Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call<a name="line.655"></a>
-<span class="sourceLineNo">656</span>   *<a name="line.656"></a>
-<span class="sourceLineNo">657</span>   * @param fs file system<a name="line.657"></a>
-<span class="sourceLineNo">658</span>   * @param dir directory<a name="line.658"></a>
-<span class="sourceLineNo">659</span>   * @return LocatedFileStatus list<a name="line.659"></a>
-<span class="sourceLineNo">660</span>   */<a name="line.660"></a>
-<span class="sourceLineNo">661</span>  public static List&lt;LocatedFileStatus&gt; listLocatedStatus(final FileSystem fs,<a name="line.661"></a>
-<span class="sourceLineNo">662</span>      final Path dir) throws IOException {<a name="line.662"></a>
-<span class="sourceLineNo">663</span>    List&lt;LocatedFileStatus&gt; status = null;<a name="line.663"></a>
-<span class="sourceLineNo">664</span>    try {<a name="line.664"></a>
-<span class="sourceLineNo">665</span>      RemoteIterator&lt;LocatedFileStatus&gt; locatedFileStatusRemoteIterator = fs<a name="line.665"></a>
-<span class="sourceLineNo">666</span>          .listFiles(dir, false);<a name="line.666"></a>
-<span class="sourceLineNo">667</span>      while (locatedFileStatusRemoteIterator.hasNext()) {<a name="line.667"></a>
-<span class="sourceLineNo">668</span>        if (status == null) {<a name="line.668"></a>
-<span class="sourceLineNo">669</span>          status = Lists.newArrayList();<a name="line.669"></a>
-<span class="sourceLineNo">670</span>        }<a name="line.670"></a>
-<span class="sourceLineNo">671</span>        status.add(locatedFileStatusRemoteIterator.next());<a name="line.671"></a>
-<span class="sourceLineNo">672</span>      }<a name="line.672"></a>
-<span class="sourceLineNo">673</span>    } catch (FileNotFoundException fnfe) {<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      // if directory doesn't exist, return null<a name="line.674"></a>
-<span class="sourceLineNo">675</span>      if (LOG.isTraceEnabled()) {<a name="line.675"></a>
-<span class="sourceLineNo">676</span>        LOG.trace("{} doesn't exist", dir);<a name="line.676"></a>
-<span class="sourceLineNo">677</span>      }<a name="line.677"></a>
-<span class="sourceLineNo">678</span>    }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>    return status;<a name="line.679"></a>
-<span class="sourceLineNo">680</span>  }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>  /**<a name="line.682"></a>
-<span class="sourceLineNo">683</span>   * Calls fs.delete() and returns the value returned by the fs.delete()<a name="line.683"></a>
-<span class="sourceLineNo">684</span>   *<a name="line.684"></a>
-<span class="sourceLineNo">685</span>   * @param fs must not be null<a name="line.685"></a>
-<span class="sourceLineNo">686</span>   * @param path must not be null<a name="line.686"></a>
-<span class="sourceLineNo">687</span>   * @param recursive delete tree rooted at path<a name="line.687"></a>
-<span class="sourceLineNo">688</span>   * @return the value returned by the fs.delete()<a name="line.688"></a>
-<span class="sourceLineNo">689</span>   * @throws IOException from underlying FileSystem<a name="line.689"></a>
-<span class="sourceLineNo">690</span>   */<a name="line.690"></a>
-<span class="sourceLineNo">691</span>  public static boolean delete(final FileSystem fs, final Path path, final boolean recursive)<a name="line.691"></a>
-<span class="sourceLineNo">692</span>      throws IOException {<a name="line.692"></a>
-<span class="sourceLineNo">693</span>    return fs.delete(path, recursive);<a name="line.693"></a>
-<span class="sourceLineNo">694</span>  }<a name="line.694"></a>
-<span class="sourceLineNo">695</span><a name="line.695"></a>
-<span class="sourceLineNo">696</span>  /**<a name="line.696"></a>
-<span class="sourceLineNo">697</span>   * Calls fs.exists(). Checks if the specified path exists<a name="line.697"></a>
-<span class="sourceLineNo">698</span>   *<a name="line.698"></a>
-<span class="sourceLineNo">699</span>   * @param fs must not be null<a name="line.699"></a>
-<span class="sourceLineNo">700</span>   * @param path must not be null<a name="line.700"></a>
-<span class="sourceLineNo">701</span>   * @return the value returned by fs.exists()<a name="line.701"></a>
-<span class="sourceLineNo">702</span>   * @throws IOException from underlying FileSystem<a name="line.702"></a>
-<span class="sourceLineNo">703</span>   */<a name="line.703"></a>
-<span class="sourceLineNo">704</span>  public static boolean isExists(final FileSystem fs, final Path path) throws IOException {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>    return fs.exists(path);<a name="line.705"></a>
-<span class="sourceLineNo">706</span>  }<a name="line.706"></a>
-<span class="sourceLineNo">707</span><a name="line.707"></a>
-<span class="sourceLineNo">708</span>  /**<a name="line.708"></a>
-<span class="sourceLineNo">709</span>   * Log the current state of the filesystem from a certain root directory<a name="line.709"></a>
-<span class="sourceLineNo">710</span>   * @param fs filesystem to investigate<a name="line.710"></a>
-<span class="sourceLineNo">711</span>   * @param root root file/directory to start logging from<a name="line.711"></a>
-<span class="sourceLineNo">712</span>   * @param log log to output information<a name="line.712"></a>
-<span class="sourceLineNo">713</span>   * @throws IOException if an unexpected exception occurs<a name="line.713"></a>
-<span class="sourceLineNo">714</span>   */<a name="line.714"></a>
-<span class="sourceLineNo">715</span>  public static void logFileSystemState(final FileSystem fs, final Path root, Logger log)<a name="line.715"></a>
-<span class="sourceLineNo">716</span>      throws IOException {<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    log.debug("File system contents for path {}", root);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    logFSTree(log, fs, root, "|-");<a name="line.718"></a>
-<span class="sourceLineNo">719</span>  }<a name="line.719"></a>
-<span class="sourceLineNo">720</span><a name="line.720"></a>
-<span class="sourceLineNo">721</span>  /**<a name="line.721"></a>
-<span class="sourceLineNo">722</span>   * Recursive helper to log the state of the FS<a name="line.722"></a>
-<span class="sourceLineNo">723</span>   *<a name="line.723"></a>
-<span class="sourceLineNo">724</span>   * @see #logFileSystemState(FileSystem, Path, Logger)<a name="line.724"></a>
-<span class="sourceLineNo">725</span>   */<a name="line.725"></a>
-<span class="sourceLineNo">726</span>  private static void logFSTree(Logger log, final FileSystem fs, final Path root, String prefix)<a name="line.726"></a>
-<span class="sourceLineNo">727</span>      throws IOException {<a name="line.727"></a>
-<span class="sourceLineNo">728</span>    FileStatus[] files = listStatus(fs, root, null);<a name="line.728"></a>
-<span class="sourceLineNo">729</span>    if (files == null) {<a name="line.729"></a>
-<span class="sourceLineNo">730</span>      return;<a name="line.730"></a>
-<span class="sourceLineNo">731</span>    }<a name="line.731"></a>
-<span class="sourceLineNo">732</span><a name="line.732"></a>
-<span class="sourceLineNo">733</span>    for (FileStatus file : files) {<a name="line.733"></a>
-<span class="sourceLineNo">734</span>      if (file.isDirectory()) {<a name="line.734"></a>
-<span class="sourceLineNo">735</span>        log.debug(prefix + file.getPath().getName() + "/");<a name="line.735"></a>
-<span class="sourceLineNo">736</span>        logFSTree(log, fs, file.getPath(), prefix + "---");<a name="line.736"></a>
-<span class="sourceLineNo">737</span>      } else {<a name="line.737"></a>
-<span class="sourceLineNo">738</span>        log.debug(prefix + file.getPath().getName());<a name="line.738"></a>
-<span class="sourceLineNo">739</span>      }<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    }<a name="line.740"></a>
-<span class="sourceLineNo">741</span>  }<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>  public static boolean renameAndSetModifyTime(final FileSystem fs, final Path src, final Path dest)<a name="line.743"></a>
-<span class="sourceLineNo">744</span>      throws IOException {<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    // set the modify time for TimeToLive Cleaner<a name="line.745"></a>
-<span class="sourceLineNo">746</span>    fs.setTimes(src, EnvironmentEdgeManager.currentTime(), -1);<a name="line.746"></a>
-<span class="sourceLineNo">747</span>    return fs.rename(src, dest);<a name="line.747"></a>
-<span class="sourceLineNo">748</span>  }<a name="line.748"></a>
-<span class="sourceLineNo">749</span><a name="line.749"></a>
-<span class="sourceLineNo">750</span>  /**<a name="line.750"></a>
-<span class="sourceLineNo">751</span>   * Check if short circuit read buffer size is set and if not, set it to hbase value.<a name="line.751"></a>
-<span class="sourceLineNo">752</span>   * @param conf must not be null<a name="line.752"></a>
-<span class="sourceLineNo">753</span>   */<a name="line.753"></a>
-<span class="sourceLineNo">754</span>  public static void checkShortCircuitReadBufferSize(final Configuration conf) {<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    final int defaultSize = HConstants.DEFAULT_BLOCKSIZE * 2;<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    final int notSet = -1;<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    // DFSConfigKeys.DFS_CLIENT_READ_SHORTCIRCUIT_BUFFER_SIZE_KEY is only defined in h2<a name="line.757"></a>
-<span class="sourceLineNo">758</span>    final String dfsKey = "dfs.client.read.shortcircuit.buffer.size";<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    int size = conf.getInt(dfsKey, notSet);<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    // If a size is set, return -- we will use it.<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    if (size != notSet) {<a name="line.761"></a>
-<span class="sourceLineNo">762</span>      return;<a name="line.762"></a>
-<span class="sourceLineNo">763</span>    }<a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // But short circuit buffer size is normally not set.  Put in place the hbase wanted size.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    int hbaseSize = conf.getInt("hbase." + dfsKey, defaultSize);<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    conf.setIfUnset(dfsKey, Integer.toString(hbaseSize));<a name="line.766"></a>
-<span class="sourceLineNo">767</span>  }<a name="line.767"></a>
-<span class="sourceLineNo">768</span><a name="line.768"></a>
-<span class="sourceLineNo">769</span>  private static final class DfsBuilderUtility {<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    private static final Class&lt;?&gt; BUILDER;<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    private static final Method REPLICATE;<a name="line.771"></a>
-<span class="sourceLineNo">772</span><a name="line.772"></a>
-<span class="sourceLineNo">773</span>    static {<a name="line.773"></a>
-<span class="sourceLineNo">774</span>      String builderName = "org.apache.hadoop.hdfs.DistributedFileSystem$HdfsDataOutputStreamBuilder";<a name="line.774"></a>
-<span class="sourceLineNo">775</span>      Class&lt;?&gt; builderClass = null;<a name="line.775"></a>
-<span class="sourceLineNo">776</span>      try {<a name="line.776"></a>
-<span class="sourceLineNo">777</span>        builderClass = Class.forName(builderName);<a name="line.777"></a>
-<span class="sourceLineNo">778</span>      } catch (ClassNotFoundException e) {<a name="line.778"></a>
-<span class="sourceLineNo">779</span>        LOG.debug("{} not available, will not set replicate when creating output stream", builderName);<a name="line.779"></a>
-<span class="sourceLineNo">780</span>      }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>      Method replicateMethod = null;<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      if (builderClass != null) {<a name="line.782"></a>
-<span class="sourceLineNo">783</span>        try {<a name="line.783"></a>
-<span class="sourceLineNo">784</span>          replicateMethod = builderClass.getMethod("replicate");<a name="line.784"></a>
-<span class="sourceLineNo">785</span>          LOG.debug("Using builder API via reflection for DFS file creation.");<a name="line.785"></a>
-<span class="sourceLineNo">786</span>        } catch (NoSuchMethodException e) {<a name="line.786"></a>
-<span class="sourceLineNo">787</span>          LOG.debug("Could not find replicate method on builder; will not set replicate when" +<a name="line.787"></a>
-<span class="sourceLineNo">788</span>            " creating output stream", e);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>        }<a name="line.789"></a>
-<span class="sourceLineNo">790</span>      }<a name="line.790"></a>
-<span class="sourceLineNo">791</span>      BUILDER = builderClass;<a name="line.791"></a>
-<span class="sourceLineNo">792</span>      REPLICATE = replicateMethod;<a name="line.792"></a>
-<span class="sourceLineNo">793</span>    }<a name="line.793"></a>
-<span class="sourceLineNo">794</span><a name="line.794"></a>
-<span class="sourceLineNo">795</span>    /**<a name="line.795"></a>
-<span class="sourceLineNo">796</span>     * Attempt to use builder API via reflection to call the replicate method on the given builder.<a name="line.796"></a>
-<span class="sourceLineNo">797</span>     */<a name="line.797"></a>
-<span class="sourceLineNo">798</span>    static void replicate(FSDataOutputStreamBuilder&lt;?, ?&gt; builder) {<a name="line.798"></a>
-<span class="sourceLineNo">799</span>      if (BUILDER != null &amp;&amp; REPLICATE != null &amp;&amp; BUILDER.isAssignableFrom(builder.getClass())) {<a name="line.799"></a>
-<span class="sourceLineNo">800</span>        try {<a name="line.800"></a>
-<span class="sourceLineNo">801</span>          REPLICATE.invoke(builder);<a name="line.801"></a>
-<span class="sourceLineNo">802</span>        } catch (IllegalAccessException | InvocationTargetException e) {<a name="line.802"></a>
-<span class="sourceLineNo">803</span>          // Should have caught this failure during initialization, so log full trace here<a name="line.803"></a>
-<span class="sourceLineNo">804</span>          LOG.warn("Couldn't use reflection with builder API", e);<a name="line.804"></a>
-<span class="sourceLineNo">805</span>        }<a name="line.805"></a>
-<span class="sourceLineNo">806</span>      }<a name="line.806"></a>
-<span class="sourceLineNo">807</span>    }<a name="line.807"></a>
-<span class="sourceLineNo">808</span>  }<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>  /**<a name="line.810"></a>
-<span class="sourceLineNo">811</span>   * Attempt to use builder API via reflection to create a file with the given parameters and<a name="line.811"></a>
-<span class="sourceLineNo">812</span>   * replication enabled.<a name="line.812"></a>
-<span class="sourceLineNo">813</span>   * &lt;p/&gt;<a name="line.813"></a>
-<span class="sourceLineNo">814</span>   * Will not attempt to enable replication when passed an HFileSystem.<a name="line.814"></a>
-<span class="sourceLineNo">815</span>   */<a name="line.815"></a>
-<span class="sourceLineNo">816</span>  public static FSDataOutputStream createForWal(FileSystem fs, Path path, boolean overwrite)<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    throws IOException {<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(path).overwrite(overwrite);<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    DfsBuilderUtility.replicate(builder);<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    return builder.build();<a name="line.820"></a>
-<span class="sourceLineNo">821</span>  }<a name="line.821"></a>
-<span class="sourceLineNo">822</span><a name="line.822"></a>
-<span class="sourceLineNo">823</span>  /**<a name="line.823"></a>
-<span class="sourceLineNo">824</span>   * Attempt to use builder API via reflection to create a file with the given parameters and<a name="line.824"></a>
-<span class="sourceLineNo">825</span>   * replication enabled.<a name="line.825"></a>
-<span class="sourceLineNo">826</span>   * &lt;p/&gt;<a name="line.826"></a>
-<span class="sourceLineNo">827</span>   * Will not attempt to enable replication when passed an HFileSystem.<a name="line.827"></a>
-<span class="sourceLineNo">828</span>   */<a name="line.828"></a>
-<span class="sourceLineNo">829</span>  public static FSDataOutputStream createForWal(FileSystem fs, Path path, boolean overwrite,<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    int bufferSize, short replication, long blockSize, boolean isRecursive) throws IOException {<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    FSDataOutputStreamBuilder&lt;?, ?&gt; builder = fs.createFile(path).overwrite(overwrite)<a name="line.831"></a>
-<span class="sourceLineNo">832</span>      .bufferSize(bufferSize).replication(replication).blockSize(blockSize);<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    if (isRecursive) {<a name="line.833"></a>
-<span class="sourceLineNo">834</span>      builder.recursive();<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    }<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    DfsBuilderUtility.replicate(builder);<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    return builder.build();<a name="line.837"></a>
-<span class="sourceLineNo">838</span>  }<a name="line.838"></a>
-<span class="sourceLineNo">839</span><a name="line.839"></a>
-<span class="sourceLineNo">840</span>  /**<a name="line.840"></a>
-<span class="sourceLineNo">841</span>   * Helper exception for those cases where the place where we need to check a stream capability<a name="line.841"></a>
-<span class="sourceLineNo">842</span>   * is not where we have the needed context to explain the impact and mitigation for a lack.<a name="line.842"></a>
-<span class="sourceLineNo">843</span>   */<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  public static class StreamLacksCapabilityException extends Exception {<a name="line.844"></a>
-<span class="sourceLineNo">845</span>    public StreamLacksCapabilityException(String message, Throwable cause) {<a name="line.845"></a>
-<span class="sourceLineNo">846</span>      super(message, cause);<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    }<a name="line.847"></a>
-<span class="sourceLineNo">848</span>    public StreamLacksCapabilityException(String message) {<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      super(message);<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span>}<a name="line.852"></a>
+<span class="sourceLineNo">636</span>    return status;<a name="line.636"></a>
+<span class="sourceLineNo">637</span>  }<a name="line.637"></a>
+<span class="sourceLineNo">638</span><a name="line.638"></a>
+<span class="sourceLineNo">639</span>  /**<a name="line.639"></a>
+<span class="sourceLineNo">640</span>   * Calls fs.listStatus() and treats FileNotFoundException as non-fatal<a name="line.640"></a>
+<span class="sourceLineNo">641</span>   * This would accommodates differences between hadoop versions<a name="line.641"></a>
+<span class="sourceLineNo">642</span>   *<a name="line.642"></a>
+<span class="sourceLineNo">643</span>   * @param fs file system<a name="line.643"></a>
+<span class="sourceLineNo">644</span>   * @param dir directory<a name="line.644"></a>
+<span class="sourceLineNo">645</span>   * @return null if dir is empty or doesn't exist, otherwise FileStatus array<a name="line.645"></a>
+<span class="sourceLineNo">646</span>   */<a name="line.646"></a>
+<span class="sourceLineNo">647</span>  public static FileStatus[] listStatus(final FileSystem fs, final Path dir) throws IOException {<a name="line.647"></a>
+<span class="sourceLineNo">648</span>    return listStatus(fs, dir, null);<a name="line.648"></a>
+<span class="sourceLineNo">649</span>  }<a name="line.649"></a>
+<span class="sourceLineNo">650</span><a name="line.650"></a>
+<span class="sourceLineNo">651</span>  /**<a name="line.651"></a>
+<span class="sourceLineNo">652</span>   * Calls fs.listFiles() to get FileStatus and BlockLocations together for reducing rpc call<a name="line.652"></a>
+<span class="sourceLineNo">653</span>   *<a name="line.653"></a>
+<span class="sourceLineNo">654</span>   * @param fs file system<a name="line.654"></a>
+<span class="sourceLineNo">655</span>   * @param dir directory<a name="line.655"></a>
+<span class="sourceLineNo">656</span>   * @return LocatedFileStatus list<a name="line.656"></a>
+<span class="sourceLineNo">657</span>   */<a name="line.657"></a>
+<span class="sourceLineNo">658</span>  public static List&lt;LocatedFileStatus&gt; listLocatedStatus(final FileSystem fs,<a name="line.658"></a>
+<span class="sourceLineNo">659</span>      final Path dir) throws IOException {<a name="line.659"></a>
+<span class="sourceLineNo">660</span>    List&lt;LocatedFileStatus&gt; status = null;<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    try {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      RemoteIterator&lt;LocatedFileStatus&gt; locatedFileStatusRemoteIterator = fs<a name="line.662"></a>
+<span class="sourceLineNo">663</span>          .listFiles(dir, false);<a name="line.663"></a>
+<span class="sourceLineNo">664</span>      while (locatedFileStatusRemoteIterator.hasNext()) {<a name="line.664"></a>
+<span class="sourceLineNo">665</span>        if (status == null) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>          status = Lists.newArrayList();<a name="line.666"></a>
+<span class="sourceLineNo">667</span>        }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>        status.add(locatedFileStatusRemoteIterator.next());<a name="line.668"></a>
+<span class="sourceLineNo">669</span>      }<a name="line.669"></a>
+<span class="sourceLineNo">670</span>    } catch (FileNotFoundException fnfe) {<a name="line.670"></a>
+<span class="sourceLineNo">671</span>      // if directory doesn't exist, return null<a name="line.671"></a>
+<span class="sourceLineNo">672</span>      if (LOG.isTraceEnabled()) {<a name="line.672"></a>
+<span class="sourceLineNo">673</span>        LOG.trace("{} doesn't exist", dir);<a name="line.673"></a>
+<span class="sourceLineNo">674</span>      }<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    }<a name="line.675"></a>
+<span class="sourceLineNo">676</span>    return status;<a name="line.676"></a>
+<span class="sourceLineNo">677</span>  }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>  /**<a name="line.679"></a>
+<span class="sourceLineNo">680</span>   * Calls fs.delete() and returns the value returned by the fs.delete()<a name="line.680"></a>
+<span class="sourceLineNo">681</span>   *<a name="line.681"></a>
+<span class="sourceLineNo">682</span>   * @param fs must not be null<a name="line.682"></a>
+<span class="sourceLineNo">683</span>   * @param path must not be null<a name="line.683"></a>
+<span class="sourceLineNo">684</span>   * @param recursive delete tree rooted at path<a name="line.684"></a>
+<span class="sourceLineNo">685</span>   * @return the value returned by the fs.delete()<a name="line.685"></a>
+<span class="sourceLineNo">686</span>   * @throws IOException from underlying FileSystem<a name="line.686"></a>
+<span class="sourceLineNo">687</span>   */<a name="line.687"></a>
+<span class="sourceLineNo">688</span>  public static boolean delete(final FileSystem fs, final Path path, final boolean recursive)<a name="line.688"></a>
+<span class="sourceLineNo">689</span>      throws IOException {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>    return fs.delete(path, recursive);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>  }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>  /**<a name="line.693"></a>
+<span class="sourceLineNo">694</span>   * Calls fs.exists(). Checks if the specified path exists<a name="line.694"></a>
+<span class="sourceLineNo">695</span>   *<a name="line.695"></a>
+<span class="sourceLineNo">696</span>   * @param fs must not be null<a name="line.696"></a>
+<span class="sourceLineNo">697</span>   * @param path must not be null<a name="line.697"></a>
+<span class="sourceLineNo">698</span>   * @return the value returned by fs.exists()<a name="line.698"></a>
+<span class="sourceLineNo">699</span>   * @throws IOException from underlying FileSystem<a name="line.699"></a>
+<span class="sourceLineNo">700</span>   */<a name="line.700"></a>
+<span class="sourceLineNo">701</span>  public static boolean isExists(final FileSystem fs, final Path path) throws IOException {<a name="line.701"></a>
+<span class="sourceLineNo">702</span>    return fs.exists(path);<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  }<a name="line.703"></a>
+<span class="sourceLineNo">704</span><a name="line.704"></a>
+<span class="sourceLineNo">705</span>  /**<a name="line.705"></a>
+<span class="sourceLineNo">706</span>   * Log the current state of the filesystem from a certain root directory<a name="line.706"></a>
+<span class="sourceLineNo">707</span>   * @param fs filesystem to investigate<a name="line.707"></a>
+<span class="sourceLineNo">708</span>   * @param root root file/directory to start logging from<a name="line.708"></a>
+<span class="sourceLineNo">709</span>   * @param log log to output information<a name="line.709"></a>
+<span class="sourceLineNo">710</span>   * @throws IOException if an unexpected exception occurs<a name="line.710"></a>
+<span class="sourceLineNo">711</span>   */<a name="line.711"></a>
+<span class="sourceLineNo">712</span>  public static void logFileSystemState(final FileSystem fs, final Path root, Logger log)<a name="line.712"></a>
+<span class="sourceLineNo">713</span>      throws IOException {<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    log.debug("File system contents for path {}", root);<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    logFSTree(log, fs, root, "|-");<a name="line.715"></a>
+<span class="sourceLineNo">716</span>  }<a name="line.716"></a>
+<span class="sourceLineNo">717</span><a name="line.717"></a>
+<span class="sourceLineNo">718</span>  /**<a name="line.718"></a>
+<span class="sourceLineNo">719</span>   * Recursive helper to log the state of the FS<a name="line.719"></a>
+<span class="sourceLineNo">720</span>   *<a name="line.720"></a>
+<span class="sourceLineNo">721</span>   * @see #logFileSystemState(FileSystem, Path, Logger)<a name="line.721"></a>
+<span class="sourceLineNo">722</span>   */<a name="line.722"></a>
+<span class="sourceLineNo">723</span>  private static void logFSTree(Logger log, final FileSystem fs, final Path root, String prefix)<a name="line.723"></a>
+<span class="sourceLineNo">724</span>      throws IOException {<a name="line.724"></a>
+<span class="sourceLineNo">725</span>    FileStatus[] files = listStatus(fs, root, null);<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    if (files == null) {<a name="line.726"></a>
+<span class="sourceLineNo">727</span>      return;<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    }<a name="line.728"></a>
+<span class="sourceLineNo">729</span><a name="line.729"></a>
+<span class="sourceLineNo">730</span>    for (FileStatus file : files) {<a name="line.730"></a>
+<span class="sourceLineNo">731</span>      if (file.isDirectory()) {<a name="line.731"></a>
+<span class="sourceLineNo">732</span>        log.debug(prefix + file.getPath().getName() + "/");<a name="line.732"></a>
+<span class="sourceLineNo">733</span>        logFSTree(log, fs, file.getPath(), prefix + "---");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>      } else {<a name="line.734"></a>
+<span class="sourceLineNo">735</span>        log.debug(prefix + file.getPath().getName());<a name="line.735"></a>
+<span class="sourceLineNo">736</span>      }<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    }<a name="line.737"></a>
+<span class="sourceLineNo">738</span>  }<a name="line.738"></a>
+<span class="sourceLineNo">739</span><a name="line.739"></a>
+<span class="sourceLineNo">740</span>  public static boolean renameAndSetModifyTime(final FileSystem fs, final Path src, final Path dest)<a name="line.740"></a>
+<span class="sourceLineNo">741</span>      throws IOException {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>    // set the modify time for TimeToLive Cleaner<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    fs.setTimes(src, EnvironmentEdgeManager.currentTime(), -1);<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    return fs.rename(src, dest);<a name="line.744"></a>
+<span class="sourceLineNo">745</span>  }<a name="line.745"></a>
+<span class="sourceLineNo">746</span><a name="line.746"></a>
+<span class="sourceLineNo">747</span>  /**<a name="line.747"></a>
+<span class="sourceLineNo">748</span>   * Check if short circuit read buffer size is set and if not, set it to hbase value.<a name="line.748"></a>
+<span class="sourceLineNo">749</span>   * @param conf must not be null<a name="line.749"></a>
+<span class="sourceLineNo">750</span>   */<a name="line.750"></a>
+<span class="sourceLineNo">751</span>  public static void checkShortCircuitReadBufferSize(final Configuration conf) {<a name="line.751"></a>
+<span class="sourceLineNo">752</span>    final int defaultSize = HConstants.DEFAULT_BLOCKSIZE * 2;<a name="line.752"></a>
+<span class="sourceLineNo">753</span>    final int notSet = -1;<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    // DFSConfigKeys.DFS_CLIENT_READ_SHORTCIRCUIT_BUFFER_SIZE_KEY is only defined in h2<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    final String dfsKey = "dfs.client.read.shortcircuit.buffer.size";<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    int size = conf.getInt(dfsKey, notSet);<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    // If a size is set, return -- we will use it.<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    if (size != notSet) {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      return;<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    }<a name="line.760"></a>
+<span class="sourceLineNo">761</span>    // But short circuit buffer size is normally not set.  Put in place the hbase wanted size.<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    int hbaseSize = conf.getInt("hbase." + dfsKey, defaultSize);<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    conf.setIfUnset(dfsKey, Integer.toString(hbaseSize));<a name="line.763"></a>
+<span class="sourceLineNo">764</span>  }<a name="line.764"></a>
+<span class="sourceLineNo">765</span><a name="line.765"></a>
+<span class="sourceLineNo">766</span>  /**<a name="line.766"></a>
+<span class="sourceLineNo">767</span>   * Helper exception for those cases where the place where we need to check a stream capability<a name="line.767"></a>
+<span class="sourceLineNo">768</span>   * is not where we have the needed context to explain the impact and mitigation for a lack.<a name="line.768"></a>
+<span class="sourceLineNo">769</span>   */<a name="line.769"></a>
+<span class="sourceLineNo">770</span>  public static class StreamLacksCapabilityException extends Exception {<a name="line.770"></a>
+<span class="sourceLineNo">771</span>    public StreamLacksCapabilityException(String message, Throwable cause) {<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      super(message, cause);<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
+<span class="sourceLineNo">774</span>    public StreamLacksCapabilityException(String message) {<a name="line.774"></a>
+<span class="sourceLineNo">775</span>      super(message);<a name="line.775"></a>
+<span class="sourceLineNo">776</span>    }<a name="line.776"></a>
+<span class="sourceLineNo">777</span>  }<a name="line.777"></a>
+<span class="sourceLineNo">778</span>}<a name="line.778"></a>
 
 
 
diff --git a/downloads.html b/downloads.html
index 8e51517..1e90c8c 100644
--- a/downloads.html
+++ b/downloads.html
@@ -457,7 +457,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/export_control.html b/export_control.html
index d702d12..69b1dde 100644
--- a/export_control.html
+++ b/export_control.html
@@ -186,7 +186,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/index.html b/index.html
index 99241bc..63589ae 100644
--- a/index.html
+++ b/index.html
@@ -264,7 +264,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/issue-tracking.html b/issue-tracking.html
index 06d952e..5f2c914 100644
--- a/issue-tracking.html
+++ b/issue-tracking.html
@@ -158,7 +158,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/mail-lists.html b/mail-lists.html
index 44c026c..8185821 100644
--- a/mail-lists.html
+++ b/mail-lists.html
@@ -204,7 +204,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/metrics.html b/metrics.html
index 6f9832e..ed8cc7b 100644
--- a/metrics.html
+++ b/metrics.html
@@ -314,7 +314,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/old_news.html b/old_news.html
index d21328e..ee90bac 100644
--- a/old_news.html
+++ b/old_news.html
@@ -305,7 +305,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/plugin-management.html b/plugin-management.html
index ff9c8b3..ed17d8e 100644
--- a/plugin-management.html
+++ b/plugin-management.html
@@ -310,7 +310,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/plugins.html b/plugins.html
index 53cc395..4e1fd4f 100644
--- a/plugins.html
+++ b/plugins.html
@@ -237,7 +237,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/poweredbyhbase.html b/poweredbyhbase.html
index 06f62a8..7143053 100644
--- a/poweredbyhbase.html
+++ b/poweredbyhbase.html
@@ -639,7 +639,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/project-info.html b/project-info.html
index 33a568a..5e01774 100644
--- a/project-info.html
+++ b/project-info.html
@@ -199,7 +199,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/project-reports.html b/project-reports.html
index b7066ef..ef7b7a7 100644
--- a/project-reports.html
+++ b/project-reports.html
@@ -175,7 +175,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/project-summary.html b/project-summary.html
index 48ac132..b6be211 100644
--- a/project-summary.html
+++ b/project-summary.html
@@ -201,7 +201,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/pseudo-distributed.html b/pseudo-distributed.html
index 164f334..61a64d1 100644
--- a/pseudo-distributed.html
+++ b/pseudo-distributed.html
@@ -163,7 +163,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/replication.html b/replication.html
index e3de7c8..00b43f2 100644
--- a/replication.html
+++ b/replication.html
@@ -158,7 +158,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/resources.html b/resources.html
index 54e2a7e..64b6067 100644
--- a/resources.html
+++ b/resources.html
@@ -186,7 +186,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/source-repository.html b/source-repository.html
index f719f25..96d75f3 100644
--- a/source-repository.html
+++ b/source-repository.html
@@ -169,7 +169,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/sponsors.html b/sponsors.html
index 1605ce2..4ae7de0 100644
--- a/sponsors.html
+++ b/sponsors.html
@@ -188,7 +188,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/supportingprojects.html b/supportingprojects.html
index b708fee..8fea6a7 100644
--- a/supportingprojects.html
+++ b/supportingprojects.html
@@ -379,7 +379,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/team-list.html b/team-list.html
index 0152d09..b89bdff 100644
--- a/team-list.html
+++ b/team-list.html
@@ -732,7 +732,7 @@
         <div class="row">
             <p>Copyright &copy;2007&#x2013;2021
 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
-All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-25</li>
+All rights reserved.        <li id="publishDate" class="pull-right">Last Published: 2021-07-26</li>
 </p>
         </div>
         <p id="poweredBy" class="pull-right"><a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
diff --git a/testdevapidocs/allclasses-frame.html b/testdevapidocs/allclasses-frame.html
index e089eca..9b65bc2 100644
--- a/testdevapidocs/allclasses-frame.html
+++ b/testdevapidocs/allclasses-frame.html
@@ -856,6 +856,7 @@
 <li><a href="org/apache/hadoop/hbase/ipc/TestBlockingIPC.html" title="class in org.apache.hadoop.hbase.ipc" target="classFrame">TestBlockingIPC</a></li>
 <li><a href="org/apache/hadoop/hbase/ipc/TestBlockingIPC.TestFailingRpcServer.html" title="class in org.apache.hadoop.hbase.ipc" target="classFrame">TestBlockingIPC.TestFailingRpcServer</a></li>
 <li><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestBlockIOUtils</a></li>
+<li><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestBlockIOUtils.MyFSDataInputStream</a></li>
 <li><a href="org/apache/hadoop/hbase/fs/TestBlockReorder.html" title="class in org.apache.hadoop.hbase.fs" target="classFrame">TestBlockReorder</a></li>
 <li><a href="org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html" title="class in org.apache.hadoop.hbase.fs" target="classFrame">TestBlockReorderBlockLocation</a></li>
 <li><a href="org/apache/hadoop/hbase/fs/TestBlockReorderMultiBlocks.html" title="class in org.apache.hadoop.hbase.fs" target="classFrame">TestBlockReorderMultiBlocks</a></li>
diff --git a/testdevapidocs/allclasses-noframe.html b/testdevapidocs/allclasses-noframe.html
index a63522e..c7905aa 100644
--- a/testdevapidocs/allclasses-noframe.html
+++ b/testdevapidocs/allclasses-noframe.html
@@ -856,6 +856,7 @@
 <li><a href="org/apache/hadoop/hbase/ipc/TestBlockingIPC.html" title="class in org.apache.hadoop.hbase.ipc">TestBlockingIPC</a></li>
 <li><a href="org/apache/hadoop/hbase/ipc/TestBlockingIPC.TestFailingRpcServer.html" title="class in org.apache.hadoop.hbase.ipc">TestBlockingIPC.TestFailingRpcServer</a></li>
 <li><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils</a></li>
+<li><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils.MyFSDataInputStream</a></li>
 <li><a href="org/apache/hadoop/hbase/fs/TestBlockReorder.html" title="class in org.apache.hadoop.hbase.fs">TestBlockReorder</a></li>
 <li><a href="org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html" title="class in org.apache.hadoop.hbase.fs">TestBlockReorderBlockLocation</a></li>
 <li><a href="org/apache/hadoop/hbase/fs/TestBlockReorderMultiBlocks.html" title="class in org.apache.hadoop.hbase.fs">TestBlockReorderMultiBlocks</a></li>
diff --git a/testdevapidocs/constant-values.html b/testdevapidocs/constant-values.html
index c1ca97d7..178e223 100644
--- a/testdevapidocs/constant-values.html
+++ b/testdevapidocs/constant-values.html
@@ -3622,19 +3622,19 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><a name="org.apache.hadoop.hbase.client.TestAsyncNonMetaRegionLocator.META_STOREFILE_REFRESH_PERIOD">
-<!--   -->
-</a><code>private&nbsp;static&nbsp;final&nbsp;int</code></td>
-<td><code><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#META_STOREFILE_REFRESH_PERIOD">META_STOREFILE_REFRESH_PERIOD</a></code></td>
-<td class="colLast"><code>100</code></td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.client.TestAsyncNonMetaRegionLocator.NB_SERVERS">
 <!--   -->
 </a><code>private&nbsp;static&nbsp;final&nbsp;int</code></td>
 <td><code><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#NB_SERVERS">NB_SERVERS</a></code></td>
 <td class="colLast"><code>4</code></td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.hadoop.hbase.client.TestAsyncNonMetaRegionLocator.NUM_OF_META_REPLICA">
+<!--   -->
+</a><code>private&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#NUM_OF_META_REPLICA">NUM_OF_META_REPLICA</a></code></td>
+<td class="colLast"><code>3</code></td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/testdevapidocs/index-all.html b/testdevapidocs/index-all.html
index feeecd7..ebb3cfd 100644
--- a/testdevapidocs/index-all.html
+++ b/testdevapidocs/index-all.html
@@ -10454,7 +10454,7 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncConnectionTracing.html#conn">conn</a></span> - Variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncConnectionTracing.html" title="class in org.apache.hadoop.hbase.client">TestAsyncConnectionTracing</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#CONN">CONN</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#conn">conn</a></span> - Variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html#CONN">CONN</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocatorConcurrenyLimit</a></dt>
 <dd>&nbsp;</dd>
@@ -26150,6 +26150,11 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/MockHStoreFile.html#isBulkLoadResult--">isBulkLoadResult()</a></span> - Method in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/MockHStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">MockHStoreFile</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#isByteBufferPositionedReadable--">isByteBufferPositionedReadable()</a></span> - Method in class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils</a></dt>
+<dd>
+<div class="block">Determine if ByteBufferPositionedReadable API is available
+ .</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.ParentClass.html#isCallUnbuffer">isCallUnbuffer</a></span> - Variable in class org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.ParentClass.html" title="class in org.apache.hadoop.hbase.io">TestFSDataInputStreamWrapper.ParentClass</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/ClassFinder.And.html#isCandidateClass-java.lang.Class-">isCandidateClass(Class&lt;?&gt;)</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClassFinder.And.html" title="class in org.apache.hadoop.hbase">ClassFinder.And</a></dt>
@@ -27817,7 +27822,7 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocatorFailFast.html#LOCATOR">LOCATOR</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocatorFailFast.html" title="class in org.apache.hadoop.hbase.client">TestAsyncMetaRegionLocatorFailFast</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#LOCATOR">LOCATOR</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#locator">locator</a></span> - Variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html#LOCATOR">LOCATOR</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocatorConcurrenyLimit</a></dt>
 <dd>&nbsp;</dd>
@@ -28045,8 +28050,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncAdminBuilder.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncAdminBuilder.html" title="class in org.apache.hadoop.hbase.client">TestAsyncAdminBuilder</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreaded.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreaded.html" title="class in org.apache.hadoop.hbase.client">TestAsyncTableGetMultiThreaded</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestBlockEvictionFromClient.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestBlockEvictionFromClient.html" title="class in org.apache.hadoop.hbase.client">TestBlockEvictionFromClient</a></dt>
@@ -28789,8 +28792,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestCompactingToCellFlatMapMemStore.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCompactingToCellFlatMapMemStore.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompactingToCellFlatMapMemStore</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestCompaction.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCompaction.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompaction</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestCompactionFileNotFound.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCompactionFileNotFound.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompactionFileNotFound</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestCompactionInDeadRegionServer.html#LOG">LOG</a></span> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCompactionInDeadRegionServer.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompactionInDeadRegionServer</a></dt>
@@ -30467,8 +30468,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestReplicaWithCluster.html#META_SCAN_TIMEOUT_IN_MILLISEC">META_SCAN_TIMEOUT_IN_MILLISEC</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestReplicaWithCluster.html" title="class in org.apache.hadoop.hbase.client">TestReplicaWithCluster</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#META_STOREFILE_REFRESH_PERIOD">META_STOREFILE_REFRESH_PERIOD</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestHFile.html#metablocks-java.lang.String-">metablocks(String)</a></span> - Method in class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestHFile.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFile</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestCacheConfig.MetaCacheEntry.html#MetaCacheEntry--">MetaCacheEntry()</a></span> - Constructor for class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestCacheConfig.MetaCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheConfig.MetaCacheEntry</a></dt>
@@ -31554,6 +31553,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestSecureBulkLoadManager.MyExceptionToAvoidRetry.html#MyExceptionToAvoidRetry--">MyExceptionToAvoidRetry()</a></span> - Constructor for exception org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestSecureBulkLoadManager.MyExceptionToAvoidRetry.html" title="class in org.apache.hadoop.hbase.regionserver">TestSecureBulkLoadManager.MyExceptionToAvoidRetry</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html#MyFSDataInputStream-java.io.InputStream-">MyFSDataInputStream(InputStream)</a></span> - Constructor for class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils.MyFSDataInputStream</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/http/TestHttpServer.MyGroupsProvider.html#MyGroupsProvider--">MyGroupsProvider()</a></span> - Constructor for class org.apache.hadoop.hbase.http.<a href="org/apache/hadoop/hbase/http/TestHttpServer.MyGroupsProvider.html" title="class in org.apache.hadoop.hbase.http">TestHttpServer.MyGroupsProvider</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/TestLocalHBaseCluster.MyHMaster.html#MyHMaster-org.apache.hadoop.conf.Configuration-">MyHMaster(Configuration)</a></span> - Constructor for class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/TestLocalHBaseCluster.MyHMaster.html" title="class in org.apache.hadoop.hbase">TestLocalHBaseCluster.MyHMaster</a></dt>
@@ -33121,6 +33122,8 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestCellFlatSet.html#NUM_OF_CELLS">NUM_OF_CELLS</a></span> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCellFlatSet.html" title="class in org.apache.hadoop.hbase.regionserver">TestCellFlatSet</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#NUM_OF_META_REPLICA">NUM_OF_META_REPLICA</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/master/TestRetainAssignmentOnRestart.html#NUM_OF_RS">NUM_OF_RS</a></span> - Static variable in class org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/TestRetainAssignmentOnRestart.html" title="class in org.apache.hadoop.hbase.master">TestRetainAssignmentOnRestart</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/TestSyncTimeRangeTracker.html#NUM_OF_THREADS">NUM_OF_THREADS</a></span> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestSyncTimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TestSyncTimeRangeTracker</a></dt>
@@ -33459,8 +33462,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/test/IntegrationTestReplication.html#numNodes">numNodes</a></span> - Variable in class org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestReplication.html" title="class in org.apache.hadoop.hbase.test">IntegrationTestReplication</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#numOfMetaReplica">numOfMetaReplica</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html#numOfMetaReplica">numOfMetaReplica</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html" title="class in org.apache.hadoop.hbase.client">TestCatalogReplicaLoadBalanceSimpleSelector</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.html#numOfMetaReplica">numOfMetaReplica</a></span> - Variable in class org.apache.hadoop.hbase.replication.regionserver.<a href="org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.html" title="class in org.apache.hadoop.hbase.replication.regionserver">TestMetaRegionReplicaReplicationEndpoint</a></dt>
@@ -38348,6 +38349,8 @@
 <dd>
 <div class="block">Read the timer.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html#read-long-java.nio.ByteBuffer-">read(long, ByteBuffer)</a></span> - Method in class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils.MyFSDataInputStream</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.ParentClass.html#read--">read()</a></span> - Method in class org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.ParentClass.html" title="class in org.apache.hadoop.hbase.io">TestFSDataInputStreamWrapper.ParentClass</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.ParentClass.html#read-org.apache.hadoop.io.ByteBufferPool-int-java.util.EnumSet-">read(ByteBufferPool, int, EnumSet&lt;ReadOption&gt;)</a></span> - Method in class org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.ParentClass.html" title="class in org.apache.hadoop.hbase.io">TestFSDataInputStreamWrapper.ParentClass</a></dt>
@@ -39077,8 +39080,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.html#REGISTRY">REGISTRY</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncMetaRegionLocator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#registry">registry</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html#registry">registry</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html" title="class in org.apache.hadoop.hbase.client">TestCatalogReplicaLoadBalanceSimpleSelector</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestMetaRegionLocationCache.html#REGISTRY">REGISTRY</a></span> - Static variable in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestMetaRegionLocationCache.html" title="class in org.apache.hadoop.hbase.client">TestMetaRegionLocationCache</a></dt>
@@ -45383,6 +45384,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncClientPauseForCallQueueTooBig.html#setUpBeforeTest--">setUpBeforeTest()</a></span> - Method in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncClientPauseForCallQueueTooBig.html" title="class in org.apache.hadoop.hbase.client">TestAsyncClientPauseForCallQueueTooBig</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#setUpBeforeTest--">setUpBeforeTest()</a></span> - Method in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncTableBatch.html#setUpBeforeTest--">setUpBeforeTest()</a></span> - Method in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncTableBatch.html" title="class in org.apache.hadoop.hbase.client">TestAsyncTableBatch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncTableScanException.html#setUpBeforeTest--">setUpBeforeTest()</a></span> - Method in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncTableScanException.html" title="class in org.apache.hadoop.hbase.client">TestAsyncTableScanException</a></dt>
@@ -53677,7 +53680,7 @@
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestAsyncNonMetaRegionLocator</span></a> - Class in <a href="org/apache/hadoop/hbase/client/package-summary.html">org.apache.hadoop.hbase.client</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TestAsyncNonMetaRegionLocator-java.lang.String-">TestAsyncNonMetaRegionLocator(String)</a></span> - Constructor for class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TestAsyncNonMetaRegionLocator--">TestAsyncNonMetaRegionLocator()</a></span> - Constructor for class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html" title="class in org.apache.hadoop.hbase.client">TestAsyncNonMetaRegionLocator</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestAsyncNonMetaRegionLocatorConcurrenyLimit</span></a> - Class in <a href="org/apache/hadoop/hbase/client/package-summary.html">org.apache.hadoop.hbase.client</a></dt>
 <dd>&nbsp;</dd>
@@ -54629,6 +54632,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#TestBlockIOUtils--">TestBlockIOUtils()</a></span> - Constructor for class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils</a></dt>
 <dd>&nbsp;</dd>
+<dt><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestBlockIOUtils.MyFSDataInputStream</span></a> - Class in <a href="org/apache/hadoop/hbase/io/hfile/package-summary.html">org.apache.hadoop.hbase.io.hfile</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html#testBlockLocation--">testBlockLocation()</a></span> - Method in class org.apache.hadoop.hbase.fs.<a href="org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html" title="class in org.apache.hadoop.hbase.fs">TestBlockReorderBlockLocation</a></dt>
 <dd>
 <div class="block">Test that the reorder algo works as we expect.</div>
@@ -54999,6 +55004,10 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/TestByteBufferOutputStream.html#TestByteBufferOutputStream--">TestByteBufferOutputStream()</a></span> - Constructor for class org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/TestByteBufferOutputStream.html" title="class in org.apache.hadoop.hbase.io">TestByteBufferOutputStream</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testByteBufferPositionedReadable--">testByteBufferPositionedReadable()</a></span> - Method in class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testByteBufferPositionedReadableEOF--">testByteBufferPositionedReadableEOF()</a></span> - Method in class org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/io/TestByteBufferOutputStream.html#testByteBufferReuse--">testByteBufferReuse()</a></span> - Method in class org.apache.hadoop.hbase.io.<a href="org/apache/hadoop/hbase/io/TestByteBufferOutputStream.html" title="class in org.apache.hadoop.hbase.io">TestByteBufferOutputStream</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/util/TestByteBufferUtils.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">TestByteBufferUtils</span></a> - Class in <a href="org/apache/hadoop/hbase/util/package-summary.html">org.apache.hadoop.hbase.util</a></dt>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html b/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html
index 767e156..6d2be1a 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html
@@ -248,7 +248,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.CommandProvider.Operation</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html#line.48">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.CommandProvider.Operation</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html#line.103">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -268,7 +268,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.CommandProvider.Operation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html#line.48">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.CommandProvider.Operation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html#line.103">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html b/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html
index 6eda859..978de42 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html
@@ -248,7 +248,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.Signal.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.Signal</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html#line.48">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.Signal.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.Signal</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html#line.103">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -268,7 +268,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.Signal.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.Signal</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html#line.48">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.Signal.html" title="enum in org.apache.hadoop.hbase">HBaseClusterManager.Signal</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/HBaseClusterManager.Signal.html#line.103">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html
index da4a816..b1c8794 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html
@@ -294,7 +294,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.HealthSummary</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html#line.570">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.HealthSummary</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html#line.85">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -314,7 +314,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.HealthSummary</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html#line.570">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.HealthSummary</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html#line.85">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html
index 97f523f..9105d06 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html
@@ -252,7 +252,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleCommand</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html#line.570">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleCommand</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html#line.85">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -272,7 +272,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleCommand</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html#line.570">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleCommand</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html#line.85">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html
index 24d5517..3d76cb7 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html
@@ -318,7 +318,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleState</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html#line.570">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleState</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html#line.85">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -338,7 +338,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleState</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html#line.570">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.RoleState</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html#line.85">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html
index 2c94b19..2a459bc 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html
@@ -248,7 +248,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.Service</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html#line.570">values</a>()</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.Service</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html#line.85">values</a>()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.  This method may be used to iterate
 over the constants as follows:
@@ -268,7 +268,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.Service</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html#line.570">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<pre>public static&nbsp;<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase">RESTApiClusterManager.Service</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RESTApiClusterManager.Service.html#line.85">valueOf</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
diff --git a/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/class-use/Action.ActionContext.html b/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/class-use/Action.ActionContext.html
index 21ce539..545f269 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/class-use/Action.ActionContext.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/class-use/Action.ActionContext.html
@@ -121,7 +121,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">DecreaseMaxHFileSizeAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/DecreaseMaxHFileSizeAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AddColumnAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/AddColumnAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -129,23 +129,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RemoveColumnAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/RemoveColumnAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SplitAllRegionOfTableAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/SplitAllRegionOfTableAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SudoCommandAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/SudoCommandAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">DumpClusterStatusAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/DumpClusterStatusAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">AddColumnAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/AddColumnAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SplitAllRegionOfTableAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/SplitAllRegionOfTableAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DecreaseMaxHFileSizeAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/DecreaseMaxHFileSizeAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">SudoCommandAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/SudoCommandAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">RemoveColumnAction.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/RemoveColumnAction.html#init-org.apache.hadoop.hbase.chaos.actions.Action.ActionContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/actions/Action.ActionContext.html" title="class in org.apache.hadoop.hbase.chaos.actions">Action.ActionContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/package-tree.html
index d7d9b9a..24c8931 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/chaos/actions/package-tree.html
@@ -159,8 +159,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="../../../../../../org/apache/hadoop/hbase/chaos/actions/RollingBatchRestartRsAction.KillOrStart.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchRestartRsAction.KillOrStart</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="../../../../../../org/apache/hadoop/hbase/chaos/actions/RollingBatchSuspendResumeRsAction.SuspendOrResume.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchSuspendResumeRsAction.SuspendOrResume</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="../../../../../../org/apache/hadoop/hbase/chaos/actions/RollingBatchRestartRsAction.KillOrStart.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchRestartRsAction.KillOrStart</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/chaos/factories/class-use/MonkeyFactory.html b/testdevapidocs/org/apache/hadoop/hbase/chaos/factories/class-use/MonkeyFactory.html
index 72de721..77819bd 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/chaos/factories/class-use/MonkeyFactory.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/chaos/factories/class-use/MonkeyFactory.html
@@ -278,11 +278,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.html" title="class in org.apache.hadoop.hbase.chaos.factories">MonkeyFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestTimeBoundedRequestsWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/test/IntegrationTestTimeBoundedRequestsWithRegionReplicas.html#getDefaultMonkeyFactory--">getDefaultMonkeyFactory</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestBigLinkedListWithVisibility.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedListWithVisibility.html#getDefaultMonkeyFactory--">getDefaultMonkeyFactory</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.html" title="class in org.apache.hadoop.hbase.chaos.factories">MonkeyFactory</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestBigLinkedListWithVisibility.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedListWithVisibility.html#getDefaultMonkeyFactory--">getDefaultMonkeyFactory</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestTimeBoundedRequestsWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/test/IntegrationTestTimeBoundedRequestsWithRegionReplicas.html#getDefaultMonkeyFactory--">getDefaultMonkeyFactory</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/chaos/monkies/class-use/ChaosMonkey.html b/testdevapidocs/org/apache/hadoop/hbase/chaos/monkies/class-use/ChaosMonkey.html
index 711eeed..6c66d78 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/chaos/monkies/class-use/ChaosMonkey.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/chaos/monkies/class-use/ChaosMonkey.html
@@ -134,11 +134,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterKillingMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MasterKillingMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">ServerKillingMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/ServerKillingMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SlowDeterministicMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/SlowDeterministicMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">StressAssignmentManagerMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/StressAssignmentManagerMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
@@ -146,15 +146,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MobNoKillMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MobNoKillMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">UnbalanceMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/UnbalanceMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerAndDependenciesKillingMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/ServerAndDependenciesKillingMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NoKillMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/NoKillMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
+<td class="colLast"><span class="typeNameLabel">DataIssuesMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/DataIssuesMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MobNoKillMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MobNoKillMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ServerAndDependenciesKillingMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/ServerAndDependenciesKillingMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
@@ -162,23 +170,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ServerKillingMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/ServerKillingMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">MasterKillingMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MasterKillingMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DataIssuesMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/DataIssuesMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SlowDeterministicMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/SlowDeterministicMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NoKillMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/NoKillMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">UnbalanceMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/UnbalanceMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
-<td class="colLast"><span class="typeNameLabel">StressAssignmentManagerMonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/StressAssignmentManagerMonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MonkeyFactory.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.html#build--">build</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/hbase/chaos/monkies/ChaosMonkey.html" title="class in org.apache.hadoop.hbase.chaos.monkies">ChaosMonkey</a></code></td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/chaos/policies/class-use/Policy.PolicyContext.html b/testdevapidocs/org/apache/hadoop/hbase/chaos/policies/class-use/Policy.PolicyContext.html
index 4cd8e96..242f7ec 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/chaos/policies/class-use/Policy.PolicyContext.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/chaos/policies/class-use/Policy.PolicyContext.html
@@ -117,15 +117,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">TwoConcurrentActionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/TwoConcurrentActionPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">CompositeSequentialPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/CompositeSequentialPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeriodicPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/PeriodicPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">Policy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
@@ -133,11 +125,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">Policy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">PeriodicRandomActionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/PeriodicRandomActionPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">PeriodicRandomActionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/PeriodicRandomActionPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CompositeSequentialPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/CompositeSequentialPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">TwoConcurrentActionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/TwoConcurrentActionPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">PeriodicPolicy.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/PeriodicPolicy.html#init-org.apache.hadoop.hbase.chaos.policies.Policy.PolicyContext-">init</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/chaos/policies/Policy.PolicyContext.html" title="class in org.apache.hadoop.hbase.chaos.policies">Policy.PolicyContext</a>&nbsp;context)</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.ServiceType.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.ServiceType.html
index 6443607..cb35ca4 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.ServiceType.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.ServiceType.html
@@ -243,21 +243,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#isRunning-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">isRunning</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+         int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#isRunning-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">isRunning</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
          int&nbsp;port)</code>
 <div class="block">Returns whether the service is running on the remote host.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#isRunning-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">isRunning</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-         int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#isRunning-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">isRunning</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#isRunning-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">isRunning</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
          int&nbsp;port)</code>&nbsp;</td>
 </tr>
@@ -273,21 +273,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#kill-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">kill</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+    int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#kill-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">kill</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
     int&nbsp;port)</code>
 <div class="block">Kills the service running on the given host</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#kill-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">kill</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-    int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#kill-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">kill</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#kill-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">kill</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
     int&nbsp;port)</code>&nbsp;</td>
 </tr>
@@ -313,21 +313,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#restart-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">restart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+       int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#restart-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">restart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
        int&nbsp;port)</code>
 <div class="block">Restart the service on the given host</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#restart-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">restart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-       int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#restart-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">restart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#restart-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">restart</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
        int&nbsp;port)</code>&nbsp;</td>
 </tr>
@@ -339,21 +339,21 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#resume-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">resume</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+      int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#resume-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">resume</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
       int&nbsp;port)</code>
 <div class="block">Resumes the services running on the given host</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#resume-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">resume</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-      int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#resume-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">resume</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#resume-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">resume</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
       int&nbsp;port)</code>&nbsp;</td>
 </tr>
@@ -382,21 +382,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#start-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+     int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#start-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
      int&nbsp;port)</code>
 <div class="block">Start the service on the given host</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#start-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-     int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#start-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#start-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">start</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
      int&nbsp;port)</code>&nbsp;</td>
 </tr>
@@ -408,21 +408,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#stop-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+    int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#stop-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
     int&nbsp;port)</code>
 <div class="block">Stop the service on the given host</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#stop-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-    int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#stop-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#stop-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">stop</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
     int&nbsp;port)</code>&nbsp;</td>
 </tr>
@@ -434,21 +434,21 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#suspend-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">suspend</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
+       int&nbsp;port)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">ClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html#suspend-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">suspend</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
        int&nbsp;port)</code>
 <div class="block">Suspends the service running on the given host</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#suspend-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">suspend</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
-       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
-       int&nbsp;port)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><span class="typeNameLabel">ZNodeClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ZNodeClusterManager.html#suspend-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">suspend</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
+<td class="colLast"><span class="typeNameLabel">RESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/RESTApiClusterManager.html#suspend-org.apache.hadoop.hbase.ClusterManager.ServiceType-java.lang.String-int-">suspend</a></span>(<a href="../../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase">ClusterManager.ServiceType</a>&nbsp;service,
        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;hostname,
        int&nbsp;port)</code>&nbsp;</td>
 </tr>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.html
index 97aafe4..fc8ce9f 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/ClusterManager.html
@@ -136,11 +136,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html" title="interface in org.apache.hadoop.hbase">ClusterManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">DistributedHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/DistributedHBaseCluster.html#clusterManager">clusterManager</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRESTApiClusterManager.html#clusterManager">clusterManager</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html" title="interface in org.apache.hadoop.hbase">ClusterManager</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRESTApiClusterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRESTApiClusterManager.html#clusterManager">clusterManager</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">DistributedHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/DistributedHBaseCluster.html#clusterManager">clusterManager</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/ClusterManager.html" title="interface in org.apache.hadoop.hbase">ClusterManager</a></code></td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html
index edd25e5..641c70a 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html
@@ -536,11 +536,43 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitMerge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSplitMerge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClientClusterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientClusterMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseMetaEdit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseMetaEdit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithAdaptivePolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithAdaptivePolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMultiVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerSideScanMetricsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerSideScanMetricsFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCachedClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCachedClusterId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNamespace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNamespace.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientClusterStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientClusterStatus.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestInfoServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestInfoServers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -548,31 +580,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptorForceCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestFSTableDescriptorForceCreation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaUpdatesGoToPriorityQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaUpdatesGoToPriorityQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPartialResultsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestPartialResultsFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithNoInMemCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithNoInMemCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIOFencing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestIOFencing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithEagerPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithEagerPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableAccessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionRebalancing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRegionRebalancing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -580,7 +588,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseTestingUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseTestingUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPartialResultsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestPartialResultsFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSequenceIdMonotonicallyIncreasing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSequenceIdMonotonicallyIncreasing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaUpdatesGoToPriorityQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaUpdatesGoToPriorityQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -588,7 +604,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientClusterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientClusterMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithNoInMemCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithNoInMemCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseOnOtherDfsCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseOnOtherDfsCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorDefaultVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestColumnFamilyDescriptorDefaultVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -596,15 +620,63 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNodeHealthCheckChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNodeHealthCheckChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGlobalMemStoreSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestGlobalMemStoreSize.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionRebalancing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRegionRebalancing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClusterBootOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClusterBootOrder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterBootOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClusterBootOrder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTagRewriteCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTagRewriteCell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithEagerPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithEagerPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestJMXListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestJMXListener.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIOFencing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestIOFencing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMovedRegionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMovedRegionCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithBasicPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithBasicPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNodeHealthCheckChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNodeHealthCheckChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseMetaEdit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseMetaEdit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableAccessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFullLogReconstruction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestFullLogReconstruction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitMerge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSplitMerge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCheckTestClasses.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCheckTestClasses.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -616,23 +688,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientClusterStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientClusterStatus.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNamespace.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTagRewriteCell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTagRewriteCell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFullLogReconstruction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestFullLogReconstruction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterPortAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClusterPortAssignment.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseTestingUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseTestingUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -640,75 +696,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClusterPortAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClusterPortAssignment.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGlobalMemStoreSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestGlobalMemStoreSize.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetaTableLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCheckTestClasses.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCheckTestClasses.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInfoServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestInfoServers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCachedClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCachedClusterId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJMXListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestJMXListener.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithBasicPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithBasicPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestIPv6NIOServerSocketChannel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestIPv6NIOServerSocketChannel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseOnOtherDfsCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseOnOtherDfsCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorDefaultVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestColumnFamilyDescriptorDefaultVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerSideScanMetricsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerSideScanMetricsFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMovedRegionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMovedRegionCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAcidGuaranteesWithAdaptivePolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestAcidGuaranteesWithAdaptivePolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSequenceIdMonotonicallyIncreasing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSequenceIdMonotonicallyIncreasing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMultiVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptorForceCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestFSTableDescriptorForceCreation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -724,15 +724,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestKeyValue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTagBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTagBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTagBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTagBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestKeyValue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestChoreService.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestChoreService.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestServerName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHDFSBlocksDistribution.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHDFSBlocksDistribution.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClassFinder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClassFinder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -744,11 +752,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestByteBufferKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestByteBufferKeyValue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCellUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCellComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -756,15 +764,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTableName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCellBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -772,23 +772,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteBufferKeyValue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestByteBufferKeyValue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestChoreService.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestChoreService.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClassFinder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClassFinder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTableName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHDFSBlocksDistribution.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHDFSBlocksDistribution.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCellComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCellUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -796,6 +788,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCellBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestIntegrationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestIntegrationTestBase.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -843,27 +843,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupMerge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupMerge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementalBackupDeleteTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupDeleteTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupDescribe.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDescribe.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupSmallTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupSmallTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupMultipleDeletes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupMultipleDeletes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupShowHistory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupShowHistory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFullBackup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestFullBackup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -871,19 +855,35 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteRestore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestRemoteRestore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementalBackupWithFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupWithFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBackupUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFullBackup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestFullBackup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBackupDescribe.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDescribe.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupHFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDelete.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteRestore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestRemoteRestore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupBoundaryTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupBoundaryTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementalBackupWithFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupWithFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFullBackupSetRestoreSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -891,31 +891,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupDeleteRestore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDeleteRestore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementalBackup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupSystemTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupSystemTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRestoreBoundaryTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestRestoreBoundaryTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDelete.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupRepair.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupRepair.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFullBackupSetRestoreSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementalBackup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteBackup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestRemoteBackup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -923,47 +907,63 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementalBackupWithBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupWithBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBackupManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupBoundaryTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupBoundaryTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupHFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupDeleteWithFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDeleteWithFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBackupStatusProgress.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupStatusProgress.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementalBackupDeleteTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupDeleteTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFullRestore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestFullRestore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSystemTableSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestSystemTableSnapshot.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFullBackupWithFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestFullBackupWithFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementalBackupWithBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupWithBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupRepair.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupRepair.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupSystemTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupSystemTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupDeleteWithFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDeleteWithFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSystemTableSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestSystemTableSnapshot.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupDeleteRestore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDeleteRestore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupMerge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupMerge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupMultipleDeletes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupMultipleDeletes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBackupCommandLineTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupCommandLineTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteBackup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestRemoteBackup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBackupSmallTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupSmallTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupShowHistory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupShowHistory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBackupStatusProgress.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupStatusProgress.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1035,659 +1035,83 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPutWithDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutWithDelete.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientSimple.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientSimple.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetProcedureResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetProcedureResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide5.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide5.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideScanExcpetionWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideScanExcpetionWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableRegionReplicasScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRegionReplicasScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFlushFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCIIncrementRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIIncrementRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterSplittingRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterSplittingRegions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableAdminApi3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableAdminApi3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawAsyncTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTableScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDropTimeoutRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestDropTimeoutRequest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableOperationException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableOperationException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientSchemaChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientSchemaChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientScannerRPCTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientClone.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientClone.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotMetadata.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotMetadata.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannerTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestHbck.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeparateClientZKCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSeparateClientZKCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMvccConsistentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMvccConsistentScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncAdminBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdmin4.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin4.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientSimple.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientSimple.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPreadReversedScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPreadReversedScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreaded.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreaded.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCIDeleteOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIDeleteOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPutDeleteEtcCellIteration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutDeleteEtcCellIteration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessorNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaTableAccessorNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCIGetRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIGetRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatchRetryImmediately.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatchRetryImmediately.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterTruncate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterTruncate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConnectionUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnectionUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncreaseMetaReplicaThroughConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncreaseMetaReplicaThroughConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncSnapshotAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncSnapshotAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncReplicationAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncReplicationAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientClone.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientClone.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeStatus.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionLocationCaching.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionLocationCaching.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotTemporaryDirectoryWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotTemporaryDirectoryWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncResultScannerCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncResultScannerCursor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdmin2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompleteResultScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCompleteResultScanResultCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncToolAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncToolAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultipleTimestamps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultipleTimestamps.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBufferedMutator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupMetaReplicaThroughConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCleanupMetaReplicaThroughConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncClusterAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClusterAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShutdownOfMetaReplicaHolder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestShutdownOfMetaReplicaHolder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientAfterTruncate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientAfterTruncate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreadedWithEagerCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreadedWithEagerCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncAccessControlAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAccessControlAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCIGetOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIGetOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientOperationInterrupt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientOperationInterrupt.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncRegionAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncBufferMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncBufferMutator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncRegionAdminApi2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionAdminApi2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientSchemaChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientSchemaChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResultScannerCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultScannerCursor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupMetaReplica.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCleanupMetaReplica.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobSnapshotCloneIndependence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobSnapshotCloneIndependence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableRegionReplicasGet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRegionReplicasGet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBatchScanResultCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAllowPartialScanResultCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSizeFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSizeFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncClientPauseForCallQueueTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClientPauseForCallQueueTooBig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncClientPushback.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClientPushback.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawAsyncScanCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncScanCursor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableNoncedRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableNoncedRetry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaRegionLocationCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaRegionLocationCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAvoidCellReferencesIntoShippedBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAvoidCellReferencesIntoShippedBlocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanAll.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanAll.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCheckAndMutateWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutateWithByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideWithCoprocessor5.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor5.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIllegalTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIllegalTableDescriptor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerLoadDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestServerLoadDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableAdminApi2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableAdminApi2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTimestampsFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetScanPartialResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanPartialResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotTemporaryDirectory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicaWithCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestReplicaWithCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIntraRowPagination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIntraRowPagination.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotWithAcl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotWithAcl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiRespectsLimits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiRespectsLimits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableRSCrashPublish.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRSCrashPublish.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableLocatePrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableLocatePrefetch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanWithoutFetchingData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocatorConcurrenyLimit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableSnapshotScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableSnapshotScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdmin3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideWithCoprocessor4.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor4.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncSingleRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncSingleRequestRpcRetryingCaller.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterRegistry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableFavoredNodes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreadedWithBasicCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreadedWithBasicCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientGetCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientGetCompactionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientTimeouts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientTimeouts.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUpdateConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestUpdateConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerBusyException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestServerBusyException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide4.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide4.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiActionMetricsFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiActionMetricsFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdmin1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin1.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetScanColumnsWithNewVersionBehavior.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanColumnsWithNewVersionBehavior.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableUseMetaReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableUseMetaReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncDecommissionAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncDecommissionAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCloneSnapshotFromClientNormal.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCloneSnapshotFromClientNormal.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResultSizeEstimation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultSizeEstimation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncQuotaAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncQuotaAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientCloneLinksAfterDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientCloneLinksAfterDelete.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFromClientWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotFromClientWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCIPutOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIPutOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncReplicationAdminApiWithClusters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncReplicationAdminApiWithClusters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFailedMetaReplicaAssigment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFailedMetaReplicaAssigment.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncrementsFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCIDeleteRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIDeleteRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotDFSTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotDFSTemporaryDirectory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResultFromCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultFromCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEnableTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestEnableTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCloneSnapshotFromClientAfterSplittingRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCloneSnapshotFromClientAfterSplittingRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMutationGetCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMutationGetCellBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreaded.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreaded.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncProcedureAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncProcedureAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRawAsyncTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTableScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockEvictionFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBlockEvictionFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotDFSTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotDFSTemporaryDirectory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRequestTooBigException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRequestTooBigException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMalformedCellFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMalformedCellFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableRSCrashPublish.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRSCrashPublish.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAlwaysSetScannerId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAlwaysSetScannerId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetaCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideScanExcpetion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideScanExcpetion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAdmin3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaWithReplicasBasic.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaWithReplicasBasic.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideNoCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideNoCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientNormal.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientNormal.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncNamespaceAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNamespaceAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncAdminWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaReplicasAddressChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaReplicasAddressChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestLimitedScanWithFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawAsyncTableLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTableLimitedScanWithFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicasClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestReplicasClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCIPutRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIPutRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientAfterSplittingRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientAfterSplittingRegions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncAdminMasterSwitch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminMasterSwitch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideScanExcpetionWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideScanExcpetionWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableLocateRegionForDeletedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableLocateRegionForDeletedTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCISleep.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCISleep.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRawAsyncScanCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncScanCursor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideScanExcpetion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideScanExcpetion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCloneSnapshotFromClientError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCloneSnapshotFromClientError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncBufferMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncBufferMutator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAdmin4.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin4.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetScanPartialResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanPartialResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1695,19 +1119,83 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiParallel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiParallel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCloneSnapshotFromClientError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCloneSnapshotFromClientError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAvoidCellReferencesIntoShippedBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAvoidCellReferencesIntoShippedBlocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotWithAclAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotWithAclAsyncAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotWithAcl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotWithAcl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotCloneIndependence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotCloneIndependence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestServerLoadDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestServerLoadDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDropTimeoutRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestDropTimeoutRequest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultipleTimestamps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultipleTimestamps.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRawAsyncTablePartialScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTablePartialScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableSnapshotScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableSnapshotScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotMetadata.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotMetadata.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSeparateClientZKCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSeparateClientZKCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaWithReplicasBasic.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaWithReplicasBasic.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientClone.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientClone.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncrementsFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCheckAndMutateWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutateWithByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCIGetRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIGetRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTimestampsFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1715,55 +1203,71 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAddressRefresher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterAddressRefresher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestZKConnectionRegistry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeAtTableLevel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeAtTableLevel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanRenewLease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanRenewLease.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientGetCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientGetCompactionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawAsyncTablePartialScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTablePartialScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreadedWithEagerCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreadedWithEagerCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInvalidMutationDurabilityException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestInvalidMutationDurabilityException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFlushFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFlushFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementFromClientSideWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncrementFromClientSideWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPreadReversedScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPreadReversedScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAppendFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAppendFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide4.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide4.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientAfterSplittingRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientAfterSplittingRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientSimple.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientSimple.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide5.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide5.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaWithReplicasShutdownHandling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaWithReplicasShutdownHandling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncSingleRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncSingleRequestRpcRetryingCaller.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResultScannerCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultScannerCursor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaReplicasAddressChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaReplicasAddressChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiRespectsLimits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiRespectsLimits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatchRetryImmediately.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatchRetryImmediately.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncClusterAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClusterAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncAdminWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientOperationInterrupt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientOperationInterrupt.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIntraRowPagination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIntraRowPagination.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1771,19 +1275,499 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdminShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdminShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientCloneLinksAfterDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientCloneLinksAfterDelete.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableRegionReplicasScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRegionReplicasScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShellNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestShellNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiActionMetricsFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiActionMetricsFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRSGroupShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAdmin2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientSchemaChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientSchemaChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncDecommissionAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncDecommissionAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetProcedureResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetProcedureResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncQuotaAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncQuotaAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableOperationException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableOperationException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAllowPartialScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAllowPartialScanResultCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestInvalidMutationDurabilityException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestInvalidMutationDurabilityException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMvccConsistentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMvccConsistentScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableAdminApi2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableAdminApi2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterRegistry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBlockEvictionFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBlockEvictionFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupMetaReplica.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCleanupMetaReplica.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncRegionAdminApi2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionAdminApi2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncAccessControlAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAccessControlAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCIPutOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIPutOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncReplicationAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncReplicationAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncToolAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncToolAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncResultScannerCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncResultScannerCursor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientNormal.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientNormal.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompleteResultScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCompleteResultScanResultCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestUpdateConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestUpdateConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResultFromCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultFromCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaWithReplicasShutdownHandling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaWithReplicasShutdownHandling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncClientPauseForCallQueueTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClientPauseForCallQueueTooBig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestConnectionUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnectionUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestHbck.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreadedWithBasicCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreadedWithBasicCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRequestTooBigException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRequestTooBigException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCIDeleteOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIDeleteOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableLocatePrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableLocatePrefetch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicaWithCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestReplicaWithCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobSnapshotCloneIndependence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobSnapshotCloneIndependence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeAtTableLevel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeAtTableLevel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotTemporaryDirectory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCIDeleteRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIDeleteRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementFromClientSideWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncrementFromClientSideWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideWithCoprocessor5.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor5.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBatchScanResultCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBatchScanResultCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFromClientWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotFromClientWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaRegionLocationCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaRegionLocationCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncSnapshotAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncSnapshotAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanAll.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanAll.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideNoCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideNoCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocatorConcurrenyLimit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncRegionAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBufferedMutator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPutWithDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutWithDelete.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIllegalTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIllegalTableDescriptor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupMetaReplicaThroughConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCleanupMetaReplicaThroughConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientGetCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientGetCompactionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAddressRefresher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterAddressRefresher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientAfterSplittingRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientAfterSplittingRegions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiParallel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiParallel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPutDeleteEtcCellIteration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutDeleteEtcCellIteration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCloneSnapshotFromClientNormal.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCloneSnapshotFromClientNormal.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncNamespaceAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNamespaceAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestZKConnectionRegistry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCIGetOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIGetOperationTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableRegionReplicasGet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRegionReplicasGet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResultSizeEstimation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultSizeEstimation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterSplittingRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterSplittingRegions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicasClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestReplicasClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableUseMetaReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableUseMetaReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideWithCoprocessor4.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideWithCoprocessor4.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerBusyException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestServerBusyException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMutationGetCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMutationGetCellBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestLimitedScanWithFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScanWithoutFetchingData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMalformedCellFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMalformedCellFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientClone.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientClone.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncAdminMasterSwitch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminMasterSwitch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAppendFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAppendFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFailedMetaReplicaAssigment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFailedMetaReplicaAssigment.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeStatus.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessorNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaTableAccessorNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientSimple.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientSimple.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotCloneIndependence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotCloneIndependence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientScannerRPCTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncReplicationAdminApiWithClusters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncReplicationAdminApiWithClusters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncreaseMetaReplicaThroughConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncreaseMetaReplicaThroughConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableNoncedRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableNoncedRetry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientSchemaChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientSchemaChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCISleep.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCISleep.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCIIncrementRpcTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCIIncrementRpcTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCloneSnapshotFromClientAfterSplittingRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobCloneSnapshotFromClientAfterSplittingRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableLocateRegionForDeletedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableLocateRegionForDeletedTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannerTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetScanColumnsWithNewVersionBehavior.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanColumnsWithNewVersionBehavior.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAlwaysSetScannerId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAlwaysSetScannerId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRawAsyncTableLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTableLimitedScanWithFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSizeFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSizeFailures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionLocationCaching.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionLocationCaching.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestShutdownOfMetaReplicaHolder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestShutdownOfMetaReplicaHolder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotTemporaryDirectoryWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotTemporaryDirectoryWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotFromClientAfterTruncate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRestoreSnapshotFromClientAfterTruncate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAdmin1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdmin1.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotWithAclAsyncAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotWithAclAsyncAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanRenewLease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanRenewLease.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientTimeouts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientTimeouts.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableAdminApi3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableAdminApi3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableFavoredNodes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncClientPushback.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClientPushback.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncProcedureAdminApi.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncProcedureAdminApi.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterTruncate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterTruncate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEnableTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestEnableTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1791,11 +1775,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotasShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestQuotasShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAdminShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdminShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdminShell2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdminShell2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestShellNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestShellNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1803,23 +1787,31 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSimpleRequestController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRSGroupShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableDescriptorBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestQuotasShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestQuotasShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInterfaceAlign.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestInterfaceAlign.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestShell.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestShell.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAdminShell2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdminShell2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMutation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestColumnFamilyDescriptorBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetricsConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestConnectionRegistryLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnectionRegistryLeak.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1827,95 +1819,55 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncRegionLocatorTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionLocatorTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCoprocessorDescriptor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPutDotHas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutDotHas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOperation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestOperation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAttributes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAttributes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncrement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorLowerCaseEnum.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestColumnFamilyDescriptorLowerCaseEnum.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRowComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRowComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestColumnFamilyDescriptorBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteTimeStamp.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestDeleteTimeStamp.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableRpcPriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRpcPriority.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableDescriptorUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableDescriptorUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionInfoBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncConnectionTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncConnectionTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBufferedMutatorParams.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientExponentialBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientExponentialBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetricsConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRetriesExhaustedWithDetailsException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRetriesExhaustedWithDetailsException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionInfoDisplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionInfoDisplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncConnectionConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncConnectionConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncAdminRpcPriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminRpcPriority.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClientExponentialBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientExponentialBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCoprocessorDescriptor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorLowerCaseEnum.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestColumnFamilyDescriptorLowerCaseEnum.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestInterfaceAlign.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestInterfaceAlign.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIncrement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMutation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMutation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBufferedMutatorParams.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBufferedMutatorParams.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionInfoBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionInfoBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleRequestController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSimpleRequestController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAttributes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAttributes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -1923,16 +1875,64 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResultStatsUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultStatsUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncRegionLocatorTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionLocatorTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConnectionRegistryLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnectionRegistryLeak.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableDescriptorBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableDescriptorBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteTimeStamp.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestDeleteTimeStamp.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterRegistryHedgedReads.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterRegistryHedgedReads.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionInfoDisplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionInfoDisplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableDescriptorUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableDescriptorUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResultStatsUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultStatsUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOperation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestOperation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPutDotHas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutDotHas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncConnectionTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncConnectionTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRetriesExhaustedWithDetailsException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRetriesExhaustedWithDetailsException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncAdminRpcPriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminRpcPriority.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableRpcPriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRpcPriority.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -1949,15 +1949,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRefreshHFilesClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestRefreshHFilesClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncClientExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestAsyncClientExample.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHttpProxyExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestHttpProxyExample.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRefreshHFilesClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestRefreshHFilesClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncClientExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestAsyncClientExample.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHttpProxyExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestHttpProxyExample.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2015,20 +2015,20 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyValueCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/TestKeyValueCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/TestKeyValueCodecWithTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/TestCellCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestKeyValueCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/TestKeyValueCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCellCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/TestCellCodecWithTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestKeyValueCodecWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/codec/TestKeyValueCodecWithTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -2063,11 +2063,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConstraints.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/constraint/TestConstraints.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestConstraint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/constraint/TestConstraint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConstraint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/constraint/TestConstraint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestConstraints.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/constraint/TestConstraints.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2085,111 +2085,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverForAddingMutationsFromCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverForAddingMutationsFromCoprocessors.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverScannerOpenHook.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverScannerOpenHook.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNegativeMemStoreSizeWithSlowCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestNegativeMemStoreSizeWithSlowCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerCoprocessorExceptionWithRemove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithRemove.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverStacking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverStacking.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPassCustomCellViaRegionObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPassCustomCellViaRegionObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementAndAppendWithNullResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementAndAppendWithNullResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenTableInCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestOpenTableInCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionCoprocessorHost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoreMasterCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreMasterCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReadOnlyConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestReadOnlyConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementTimeRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementTimeRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAppendTimeRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestAppendTimeRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterObserverToModifyTableSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterObserverToModifyTableSchema.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPostIncrementAndAppendBeforeWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPostIncrementAndAppendBeforeWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMetaTableMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithRemove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoreRegionCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreRegionCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoreRegionServerCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreRegionServerCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorHost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverPreFlushAndPreCompact.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverPreFlushAndPreCompact.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAppendTimeRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestAppendTimeRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2197,19 +2101,115 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestWALObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementAndAppendWithNullResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementAndAppendWithNullResult.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorSharedConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorSharedConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorStop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorStop.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverPreFlushAndPreCompact.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverPreFlushAndPreCompact.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverScannerOpenHook.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverScannerOpenHook.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementTimeRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementTimeRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPassCustomCellViaRegionObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPassCustomCellViaRegionObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestWALObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoreMasterCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreMasterCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorHost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithRemove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerCoprocessorExceptionWithRemove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithRemove.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMetaTableMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOpenTableInCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestOpenTableInCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoreRegionCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreRegionCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorSharedConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorSharedConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorStop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorStop.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoreRegionServerCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreRegionServerCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionCoprocessorHost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionCoprocessorHost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverForAddingMutationsFromCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverForAddingMutationsFromCoprocessors.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverStacking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverStacking.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNegativeMemStoreSizeWithSlowCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestNegativeMemStoreSizeWithSlowCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReadOnlyConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestReadOnlyConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPostIncrementAndAppendBeforeWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPostIncrementAndAppendBeforeWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2227,15 +2227,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestValueReplacingCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRefreshHFilesEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2243,12 +2235,20 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRefreshHFilesEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWriteHeavyIncrementObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWriteHeavyIncrementObserverWithMemStoreCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestValueReplacingCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -2265,15 +2265,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestForeignExceptionSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/errorhandling/TestForeignExceptionSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTimeoutExceptionInjector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/errorhandling/TestTimeoutExceptionInjector.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimeoutExceptionInjector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/errorhandling/TestTimeoutExceptionInjector.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestForeignExceptionDispatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/errorhandling/TestForeignExceptionDispatcher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestForeignExceptionDispatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/errorhandling/TestForeignExceptionDispatcher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestForeignExceptionSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/errorhandling/TestForeignExceptionSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2349,31 +2349,47 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanRowPrefix.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestScanRowPrefix.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestInclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestInclusiveStopFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegexComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestRegexComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFilterSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFilterList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterList.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestComparatorSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestComparatorSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQualifierFilterWithEmptyQualifier.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestQualifierFilterWithEmptyQualifier.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestSingleColumnValueFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestSingleColumnValueExcludeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFilterListOrOperatorWithBlkCnt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterListOrOperatorWithBlkCnt.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnPaginationFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestParseFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestParseFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestMultipleColumnPrefixFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSingleColumnValueExcludeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestSingleColumnValueExcludeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestMultiRowRangeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2381,11 +2397,67 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBigDecimalComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestBigDecimalComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnRangeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInclusiveStopFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestInclusiveStopFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFilterFromRegionSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterFromRegionSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScanRowPrefix.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestScanRowPrefix.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPageFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestPageFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestRandomRowFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQualifierFilterWithEmptyQualifier.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestQualifierFilterWithEmptyQualifier.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestParseFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestParseFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFuzzyRowFilterEndToEnd.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowFilterEndToEnd.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFilterListOnMini.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterListOnMini.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBitComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestBitComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNullComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestNullComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestDependentColumnFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestPrefixFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFuzzyRowAndColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowAndColumnRangeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestColumnPaginationFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnPaginationFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2396,104 +2468,32 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnRangeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterWithScanLimits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterWithScanLimits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBitComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestBitComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRandomRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestRandomRowFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiRowRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestMultiRowRangeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFuzzyRowFilterEndToEnd.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowFilterEndToEnd.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFuzzyRowFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFilterWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterListOnMini.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterListOnMini.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNullComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestNullComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFuzzyRowAndColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowAndColumnRangeFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDependentColumnFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestDependentColumnFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnPrefixFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterFromRegionSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterFromRegionSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBigDecimalComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestBigDecimalComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestComparatorSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestComparatorSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFilterWithScanLimits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterWithScanLimits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSingleColumnValueFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestSingleColumnValueFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestComparators.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestComparators.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegexComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestRegexComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestMultipleColumnPrefixFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestPrefixFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPageFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestPageFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestKeyOnlyFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLongComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestLongComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestComparators.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestComparators.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyOnlyFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestKeyOnlyFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -2514,11 +2514,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockReorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlockReorderBlockLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockReorderBlockLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlockReorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2536,11 +2536,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecord.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/TestRecord.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRecordFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/TestRecordFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecordFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/TestRecordFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRecord.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/TestRecord.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2576,14 +2576,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestTableMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUserMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestUserMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestRegionMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -2592,15 +2584,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestTableMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestClientMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRequestCountPerSecond.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestRequestCountPerSecond.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespaceMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestNamespaceMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestUserMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestUserMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestClientMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNamespaceMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/mode/TestNamespaceMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2676,24 +2676,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTopScreenModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestTopScreenModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPaging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestPaging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestInputModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestInputModeScreenPresenter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterDisplayModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestFilterDisplayModeScreenPresenter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTopScreenModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestTopScreenModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFilterDisplayModeScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestFilterDisplayModeScreenPresenter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTopScreenPresenter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestTopScreenPresenter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPaging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/hbtop/screen/top/TestPaging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -2710,19 +2710,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpnegoHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestSpnegoHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSecurityHeadersFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestSecurityHeadersFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGlobalFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestGlobalFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHttpServerWebapps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestHttpServerWebapps.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPathFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestPathFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2730,11 +2722,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServletFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestServletFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHtmlQuoting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestHtmlQuoting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProxyUserSpnegoHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestProxyUserSpnegoHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHttpServerWebapps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestHttpServerWebapps.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2742,19 +2734,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHtmlQuoting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestHtmlQuoting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHttpCookieFlag.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestHttpCookieFlag.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHttpCookieFlag.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestHttpCookieFlag.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProxyUserSpnegoHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestProxyUserSpnegoHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSSLHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestSSLHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpnegoHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestSpnegoHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPathFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestPathFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSSLHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestSSLHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2766,6 +2758,14 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGlobalFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestGlobalFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServletFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestServletFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestInfoServersACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/http/TestInfoServersACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
@@ -2860,23 +2860,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileLink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestHFileLink.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHalfStoreFileReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestHalfStoreFileReader.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFSDataInputStreamWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestFSDataInputStreamWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHeapSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestHeapSize.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFileLink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestHFileLink.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteBufferOutputStream.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestByteBufferOutputStream.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHeapSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestHeapSize.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -2884,6 +2876,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHalfStoreFileReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestHalfStoreFileReader.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestByteBufferOutputStream.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestByteBufferOutputStream.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestImmutableBytesWritable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestImmutableBytesWritable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -2892,15 +2892,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteBuffAllocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestByteBuffAllocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTagCompressionContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestTagCompressionContext.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTagCompressionContext.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestTagCompressionContext.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiByteBuffInputStream.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestMultiByteBuffInputStream.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiByteBuffInputStream.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestMultiByteBuffInputStream.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestByteBuffAllocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/TestByteBuffAllocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2926,15 +2926,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSendBufSizePredictor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/asyncfs/TestSendBufSizePredictor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLocalAsyncOutput.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/asyncfs/TestLocalAsyncOutput.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLocalAsyncOutput.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/asyncfs/TestLocalAsyncOutput.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestOverwriteFileUnderConstruction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/asyncfs/TestOverwriteFileUnderConstruction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOverwriteFileUnderConstruction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/asyncfs/TestOverwriteFileUnderConstruction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSendBufSizePredictor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/asyncfs/TestSendBufSizePredictor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2956,11 +2956,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/crypto/TestKeyProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/crypto/TestCipherProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCipherProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/crypto/TestCipherProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestKeyProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/crypto/TestKeyProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3004,7 +3004,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeekToBlockWithEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestSeekToBlockWithEncoders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDataBlockEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestDataBlockEncoders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3012,7 +3012,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDataBlockEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestDataBlockEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSeekToBlockWithEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestSeekToBlockWithEncoders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestBufferedDataBlockEncoder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestChangingEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestChangingEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3020,15 +3028,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBufferedDataBlockEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestBufferedDataBlockEncoder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDataBlockEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestDataBlockEncoders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestChangingEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestChangingEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDataBlockEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/encoding/TestDataBlockEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3072,115 +3072,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCachedBlockQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCachedBlockQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowIndexV1DataEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestRowIndexV1DataEncoder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileBlockIndex.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileEncryption.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLruCachedBlock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLruCachedBlock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFilePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFilePrettyPrinter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestTinyLfuBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLruBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileInlineToRootChunkConversion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileInlineToRootChunkConversion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCacheOnWrite.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLruAdaptiveBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestForceCacheImportantBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeekBeforeWithInlineBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekBeforeWithInlineBlocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockIOUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerFromBucketCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerFromBucketCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileWriterV3WithDataEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3WithDataEncoders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingKeyRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingKeyRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCacheConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTinyLfuBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestTinyLfuBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileReaderImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlockCacheReporting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockCacheReporting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileScannerImplReferenceCount.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileScannerImplReferenceCount.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReseekTo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestReseekTo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestChecksum.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestChecksum.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileWriterV3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileSeek.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestPrefetch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFixedFileTrailer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestFixedFileTrailer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3188,23 +3092,119 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCombinedBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlockIOUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLazyDataBlockDecompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLazyDataBlockDecompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSeekBeforeWithInlineBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekBeforeWithInlineBlocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockCacheReporting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockCacheReporting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSeekTo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekTo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileReaderImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFixedFileTrailer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestFixedFileTrailer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestPrefetch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCombinedBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCachedBlockQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCachedBlockQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileWriterV3WithDataEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3WithDataEncoders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCacheOnWrite.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRowIndexV1DataEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestRowIndexV1DataEncoder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLruBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLruBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingKeyRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingKeyRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReseekTo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestReseekTo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileBlockIndex.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileSeek.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileBlock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerFromBucketCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerFromBucketCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileWriterV3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLruCachedBlock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLruCachedBlock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestChecksum.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestChecksum.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileInlineToRootChunkConversion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileInlineToRootChunkConversion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFilePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFilePrettyPrinter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileScannerImplReferenceCount.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileScannerImplReferenceCount.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileEncryption.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestForceCacheImportantBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLazyDataBlockDecompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLazyDataBlockDecompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCacheConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLruAdaptiveBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLruAdaptiveBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -3222,36 +3222,36 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestByteBufferIOEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestExclusiveMemoryMmapEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestExclusiveMemoryMmapEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRAMCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestRAMCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBucketCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestBucketCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBucketWriterThread.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestBucketWriterThread.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteBufferIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestByteBufferIOEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestFileIOEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExclusiveMemoryMmapEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestExclusiveMemoryMmapEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBucketCacheRefCnt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestBucketCacheRefCnt.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBucketCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestBucketCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRAMCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestRAMCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestVerifyBucketCacheFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestVerifyBucketCacheFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFileIOEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/bucket/TestFileIOEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -3286,23 +3286,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRpcClientLeaks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcClientLeaks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRpcServerSlowConnectionSetup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcServerSlowConnectionSetup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBufferChain.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestBufferChain.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestMasterFifoRpcScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNettyIPC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyIPC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestFifoRpcScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3310,68 +3294,84 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCallRunner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestCallRunner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRpcMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestSimpleRpcScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBufferChain.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestBufferChain.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestFifoRpcScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestHBaseClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProtoBufRpc.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestProtoBufRpc.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestNettyRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyRpcServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRpcClientLeaks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcClientLeaks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRpcServerTraceLogging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcServerTraceLogging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestHBaseClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRpcServerSlowConnectionSetup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcServerSlowConnectionSetup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestMasterFifoRpcScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCallRunner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestCallRunner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNettyIPC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyIPC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBlockingIPC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestBlockingIPC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRpcMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellBlockBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestCellBlockBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestSimpleRpcScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestHBaseRpcControllerImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProtoBufRpc.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestProtoBufRpc.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIPCUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestIPCUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFailedServersLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestFailedServersLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellBlockBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestCellBlockBuilder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestConnectionId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestConnectionId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyRpcConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseRpcControllerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestHBaseRpcControllerImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRpcClientDeprecatedNameMapping.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestRpcClientDeprecatedNameMapping.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIPCUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestIPCUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNettyRpcConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyRpcConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -3410,23 +3410,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableMapReduce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduce.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestIdentityTableMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableOutputFormatConnectionExhaust.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableOutputFormatConnectionExhaust.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestGroupingTableMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIdentityTableMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestIdentityTableMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduceUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3434,15 +3434,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestSplitTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGroupingTableMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestGroupingTableMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDriver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestDriver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableMapReduce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduce.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSplitTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestSplitTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3450,7 +3450,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduceUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDriver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapred/TestDriver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -3468,191 +3468,191 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableRecordReader.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportExport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportExport.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRoundRobinTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRoundRobinTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSizeCalculator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRegionSizeCalculator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableInputFormatScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanOPPToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanOPPToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCellCounter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiTableSnapshotInputFormatImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableSnapshotInputFormatImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanYZYToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanYZYToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatBase.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithTTLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithTTLs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestImportTsv.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTsv.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanYYXToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanYYXToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanYYYToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanYYYToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableSnapshotInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseMRTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHBaseMRTestingUtility.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleTotalOrderPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSimpleTotalOrderPartitioner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCopyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCopyTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToOPP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToOPP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithVisibilityLabels.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultithreadedTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultithreadedTableMapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJarFinder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestJarFinder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestGroupingTableMapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALPlayer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALPlayer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableMapReduce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRowCounter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGroupingTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestGroupingTableMapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToAPP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToAPP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithOperationAttributes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithOperationAttributes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHRegionPartitioner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSyncTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanOBBToQPP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanOBBToQPP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduceUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanOBBToOPP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanOBBToOPP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithOperationAttributes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithOperationAttributes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHFileOutputFormat2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALPlayer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALPlayer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTimeRangeMapRed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTimeRangeMapRed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALRecordReader.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCopyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCopyTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseMRTestingUtility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHBaseMRTestingUtility.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMultiTableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableInputFormatBase.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanYYXToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanYYXToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableRecordReader.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestImportTsvParser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTsvParser.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHRegionPartitioner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToBBB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToBBB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestJarFinder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestJarFinder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduceUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHashTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHashTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatBase.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSizeCalculator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRegionSizeCalculator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableSnapshotInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithVisibilityLabels.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanYYYToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanYYYToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleTotalOrderPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSimpleTotalOrderPartitioner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCellCounter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToBBA.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToBBA.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimeRangeMapRed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTimeRangeMapRed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiTableSnapshotInputFormatImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableSnapshotInputFormatImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHashTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHashTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultithreadedTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultithreadedTableMapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToBBB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToBBB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToAPP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToAPP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTsv.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTsv.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestImportExport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportExport.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithTTLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithTTLs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanOPPToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanOPPToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanEmptyToEmpty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanEmptyToEmpty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHFileOutputFormat2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRoundRobinTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRoundRobinTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultiTableInputFormat.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALRecordReader.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRowCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRowCounter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanOBBToOPP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanOBBToOPP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3678,71 +3678,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterMetricsWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetricsWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFailoverBalancerPersistence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFailoverBalancerPersistence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRetainAssignmentOnRestartSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRetainAssignmentOnRestartSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRollingRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRollingRestart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNewStartedRegionServerVersion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestNewStartedRegionServerVersion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFileSystemWithWALDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystemWithWALDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterCoprocessorServices.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLoadProcedureError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestLoadProcedureError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHMasterRPCException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestHMasterRPCException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAlwaysStandByHMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAlwaysStandByHMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterBalanceThrottling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterBalanceThrottling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionsRecoveryChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionsRecoveryChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitRegionWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitRegionWhileRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaShutdownHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetaShutdownHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterRestartFailoverSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestartFailoverSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionPlacement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMigrateNamespaceTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMigrateNamespaceTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerCrashProcedureCarryingMetaStuck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestServerCrashProcedureCarryingMetaStuck.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRepairMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterRepairMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3750,95 +3694,47 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDLSAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDLSAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetReplicationLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetReplicationLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRoundRobinAssignmentOnRestartSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRoundRobinAssignmentOnRestartSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionPlacement2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAbortAndRSGotKilled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterAbortAndRSGotKilled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitLogManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitLogManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterShutdown.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterShutdown.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMergeTableRegionsWhileRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHMasterCommandLine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestHMasterCommandLine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterRestartFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestartFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystem.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestGetInfoPort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetInfoPort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterQosFunction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterQosFunction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterChoreScheduled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterChoreScheduled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShutdownWithNoRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestShutdownWithNoRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRetainAssignmentOnRestartSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRetainAssignmentOnRestartSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionPlansWithThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlansWithThrottle.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMergeTableRegionsWhileRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterQosFunction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterQosFunction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitWALManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitWALManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDLSFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDLSFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRoundRobinAssignmentOnRestartSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRoundRobinAssignmentOnRestartSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterHandlerFullWhenTransitRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterHandlerFullWhenTransitRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAbortAndRSGotKilled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterAbortAndRSGotKilled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3846,51 +3742,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDLSFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDLSFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetaShutdownHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetaShutdownHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRepairMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterRepairMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterRestartSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestartSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaAssignmentWithStopMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetaAssignmentWithStopMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetLastFlushedSequenceId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetLastFlushedSequenceId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionsRecoveryConfigManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionsRecoveryConfigManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterTransitions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterTransitions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterBalanceThrottling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterBalanceThrottling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterOperationsForRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRollingRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRollingRestart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3898,7 +3754,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientMetaServiceRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClientMetaServiceRPCs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionsRecoveryChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionsRecoveryChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNewStartedRegionServerVersion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestNewStartedRegionServerVersion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterHandlerFullWhenTransitRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterHandlerFullWhenTransitRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3906,15 +3770,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDeadServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRetainAssignmentOnRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRetainAssignmentOnRestart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRetainAssignmentOnRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRetainAssignmentOnRestart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetaAssignmentWithStopMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetaAssignmentWithStopMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClockSkewDetection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClockSkewDetection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMigrateNamespaceTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMigrateNamespaceTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionPlansWithThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlansWithThrottle.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3922,19 +3794,147 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDLSAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDLSAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestActiveMasterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestActiveMasterManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetLastFlushedSequenceId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetLastFlushedSequenceId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterShutdown.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterShutdown.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClusterRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClockSkewDetection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClockSkewDetection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientMetaServiceRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClientMetaServiceRPCs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterNotCarryTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterNotCarryTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitRegionWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitRegionWhileRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterCoprocessorServices.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClusterRestartFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestartFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHMasterRPCException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestHMasterRPCException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerCrashProcedureCarryingMetaStuck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestServerCrashProcedureCarryingMetaStuck.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAlwaysStandByHMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAlwaysStandByHMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionsRecoveryConfigManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionsRecoveryConfigManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitLogManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitLogManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystem.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRestartAfterDisablingTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterRestartAfterDisablingTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterTransitions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterTransitions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionPlacement2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitWALManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitWALManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHMasterCommandLine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestHMasterCommandLine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDeadServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetReplicationLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetReplicationLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFailoverBalancerPersistence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFailoverBalancerPersistence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClusterRestartSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestartSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClusterRestartFailoverSplitWithoutZk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClusterRestartFailoverSplitWithoutZk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCloseAnOpeningRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestCloseAnOpeningRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRestartAfterDisablingTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterRestartAfterDisablingTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterOperationsForRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterNotCarryTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterNotCarryTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterMetricsWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetricsWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestShutdownWithNoRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestShutdownWithNoRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionPlacement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFileSystemWithWALDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystemWithWALDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -3942,11 +3942,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsMasterSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetricsMasterSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsMasterProcSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetricsMasterProcSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsMasterProcSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetricsMasterProcSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsMasterSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetricsMasterSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -3964,143 +3964,143 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSplitAndSeparateChildren.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionSplitAndSeparateChildren.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSplitTableRegionProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestModifyTableWhileMerging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestModifyTableWhileMerging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCloseRegionWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestCloseRegionWhileRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionAssignedToMultipleRegionServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionAssignedToMultipleRegionServers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExceptionInUnassignedRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInUnassignedRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentOnRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentOnRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndDTP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndDTP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestTransitRegionStateProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeadServerMetricRegionChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestDeadServerMetricRegionChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerLoadMetaRegionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerLoadMetaRegionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAMServerFailedOpen.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAMServerFailedOpen.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAbortWhileMergingTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMasterAbortWhileMergingTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStates.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAMAssignWithRandExec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAMAssignWithRandExec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReportOnlineRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportOnlineRegionsRace.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureHang.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureHang.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMoveAndAbandon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionMoveAndAbandon.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExceptionInAssignRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInAssignRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionFromDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionFromDeadServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWakeUpUnexpectedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestWakeUpUnexpectedProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndTRSP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndTRSP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMergeTableRegionsProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHbckChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestHbckChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionRetry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicaSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionReplicaSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStateStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAssignRegionToUninitializedRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignRegionToUninitializedRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPGetRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSCPGetRegionsRace.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCloseRegionWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestCloseRegionWhileRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestExceptionInAssignRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInAssignRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSplitTableRegionProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAMServerFailedOpen.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAMServerFailedOpen.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRogueRSAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRogueRSAssignment.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestTransitRegionStateProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPGetRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSCPGetRegionsRace.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRogueRSAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRogueRSAssignment.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestExceptionInUnassignedRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInUnassignedRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionAssignedToMultipleRegionServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionAssignedToMultipleRegionServers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestModifyTableWhileMerging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestModifyTableWhileMerging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicaSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionReplicaSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHbckChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestHbckChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndTRSP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndTRSP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStateStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndDTP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndDTP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionFromDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionFromDeadServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAMAssignWithRandExec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAMAssignWithRandExec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAbortWhileMergingTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMasterAbortWhileMergingTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentOnRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentOnRSCrash.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSplitAndSeparateChildren.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionSplitAndSeparateChildren.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMergeTableRegionsProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReportOnlineRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportOnlineRegionsRace.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerLoadMetaRegionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerLoadMetaRegionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMoveAndAbandon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionMoveAndAbandon.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionRetry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureHang.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureHang.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeadServerMetricRegionChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestDeadServerMetricRegionChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWakeUpUnexpectedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestWakeUpUnexpectedProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4118,7 +4118,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerHeterogeneousCostRules.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerHeterogeneousCostRules.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplica.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplica.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4126,23 +4126,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplicaReplicationGreaterThanNumNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaReplicationGreaterThanNumNodes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerMidCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerMidCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplica.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplica.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionHDFSBlockLocationFinder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestRegionHDFSBlockLocationFinder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDoubleArrayCost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestDoubleArrayCost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerHeterogeneousCostRules.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerHeterogeneousCostRules.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4150,15 +4134,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerHeterogeneousCost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerHeterogeneousCost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestSimpleLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplicaSameHosts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaSameHosts.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBaseLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4166,27 +4142,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerSmallCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerSmallCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplicaSameHosts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaSameHosts.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerLargeCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerLargeCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplicaWithRacks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaWithRacks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerBalanceCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerBalanceCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBaseLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBaseLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerAndLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestServerAndLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionHDFSBlockLocationFinder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestRegionHDFSBlockLocationFinder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4194,11 +4154,43 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticBalancerJmxMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticBalancerJmxMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplicaWithRacks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaWithRacks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBalancerRejection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerRejection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDoubleArrayCost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestDoubleArrayCost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerHeterogeneousCost.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerHeterogeneousCost.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerAndLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestServerAndLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerLargeCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerLargeCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerRegionReplicaReplicationGreaterThanNumNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplicaReplicationGreaterThanNumNodes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerBalanceCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerBalanceCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerSmallCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerSmallCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestSimpleLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerMidCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerMidCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4206,31 +4198,39 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFavoredNodeTableImport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredNodeTableImport.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRSGroupBasedLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestRSGroupBasedLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticBalancerPickers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticBalancerPickers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBalancerDecision.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerDecision.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestStochasticLoadBalancerHeterogeneousCostRulesLoadFromHDFS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerHeterogeneousCostRulesLoadFromHDFS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBalancerStatusTagInJMXMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerStatusTagInJMXMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFavoredNodeTableImport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredNodeTableImport.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticBalancerJmxMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticBalancerJmxMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBalancerDecision.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerDecision.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticBalancerPickers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticBalancerPickers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBalancerRejection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerRejection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticLoadBalancer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4248,27 +4248,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFromMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFileLinkCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestHFileLinkCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationBarrierCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestReplicationBarrierCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestCleanerChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileLinkCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestHFileLinkCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestHFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationBarrierCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestReplicationBarrierCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogsCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestHFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4278,6 +4270,14 @@
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestSnapshotCleanerChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFromMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLogsCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -4324,15 +4324,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorInMemoryStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorInMemoryStates.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogJanitor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogJanitor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorInMemoryStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorInMemoryStates.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4354,11 +4354,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLockManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLockManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4376,23 +4376,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleRegionNormalizerOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestSimpleRegionNormalizerOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionNormalizerWorker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestRegionNormalizerWorker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestSimpleRegionNormalizer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionNormalizerManagerConfigurationObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestRegionNormalizerManagerConfigurationObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionNormalizerWorkQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestRegionNormalizerWorkQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionNormalizerManagerConfigurationObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestRegionNormalizerManagerConfigurationObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleRegionNormalizerOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestSimpleRegionNormalizerOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleRegionNormalizer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/normalizer/TestSimpleRegionNormalizer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4410,99 +4410,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReopenTableRegionsProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestReopenTableRegionsProcedureBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBCKSCPUnknown.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestHBCKSCPUnknown.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBCKSCP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestHBCKSCP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterProcedureScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterProcedureScheduler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteColumnFamilyProcedureFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteColumnFamilyProcedureFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableDescriptorModificationFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTableDescriptorModificationFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterObserverPostCalls.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterObserverPostCalls.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestEnableTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSafemodeBringsDownMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSafemodeBringsDownMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDisableTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestServerRemoteProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReopenTableRegionsProcedureInfiniteLoop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestReopenTableRegionsProcedureInfiniteLoop.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedurePriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedurePriority.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteNamespaceProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithoutMeta.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMeta.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSCPWithoutMetaWithReplicasWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMetaWithReplicasWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFastFailOnProcedureNotRegistered.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestFastFailOnProcedureNotRegistered.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReopenTableRegionsProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestReopenTableRegionsProcedureBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCloneSnapshotProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithMetaWithReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithMetaWithReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithoutMeta.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMeta.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4510,75 +4430,27 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithReplicasWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithReplicasWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableDescriptorModificationFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTableDescriptorModificationFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFailoverWithProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterFailoverWithProcedures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestServerRemoteProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithoutMetaWithReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMetaWithReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSCP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIgnoreUnknownFamily.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestIgnoreUnknownFamily.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedureAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCreateTableProcedureMuitipleRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedureMuitipleRegions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestModifyNamespaceProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterProcedureEvents.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSchedulerQueueDeadLock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSchedulerQueueDeadLock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestRestoreSnapshotProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCreateNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateNamespaceProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithMetaWithReplicasWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithMetaWithReplicasWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithoutMetaWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMetaWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSplitWALProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALProcedureStoreOnHDFS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestWALProcedureStoreOnHDFS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestModifyTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithMetaWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithMetaWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPWithReplicasWithRSGroup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithReplicasWithRSGroup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4586,7 +4458,135 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedureAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithReplicasWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithReplicasWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterProcedureEvents.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBCKSCPUnknown.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestHBCKSCPUnknown.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithoutMetaWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMetaWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIgnoreUnknownFamily.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestIgnoreUnknownFamily.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithoutMetaWithReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithoutMetaWithReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEnableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestEnableTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestModifyTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestModifyTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithMetaWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithMetaWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestRestoreSnapshotProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDisableTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDisableTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestModifyNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestModifyNamespaceProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithMetaWithReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithMetaWithReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCreateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSplitWALProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteNamespaceProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCloneSnapshotProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCloneSnapshotProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithReplicasWithRSGroup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithReplicasWithRSGroup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteColumnFamilyProcedureFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteColumnFamilyProcedureFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALProcedureStoreOnHDFS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestWALProcedureStoreOnHDFS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCreateTableProcedureMuitipleRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedureMuitipleRegions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFastFailOnProcedureNotRegistered.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestFastFailOnProcedureNotRegistered.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCreateNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateNamespaceProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBCKSCP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestHBCKSCP.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterObserverPostCalls.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterObserverPostCalls.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSafemodeBringsDownMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSafemodeBringsDownMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFailoverWithProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterFailoverWithProcedures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTruncateTableProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReopenTableRegionsProcedureInfiniteLoop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestReopenTableRegionsProcedureInfiniteLoop.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedurePriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedurePriority.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPWithMetaWithReplicasWithoutZKCoordinated.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPWithMetaWithReplicasWithoutZKCoordinated.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4604,15 +4604,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRegionOnTwoFileSystems.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/region/TestMasterRegionOnTwoFileSystems.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRegionFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/region/TestMasterRegionFlush.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRegionWALCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/region/TestMasterRegionWALCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRegionOnTwoFileSystems.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/region/TestMasterRegionOnTwoFileSystems.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRegionFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/region/TestMasterRegionFlush.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRegionWALCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/region/TestMasterRegionWALCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4634,7 +4634,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTransitPeerSyncReplicationStateProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestTransitPeerSyncReplicationStateProcedureBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestModifyPeerProcedureRetryBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestModifyPeerProcedureRetryBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4642,15 +4642,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegisterPeerWorkerWhenRestarting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestRegisterPeerWorkerWhenRestarting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationReplayWALManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestSyncReplicationReplayWALManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationReplayWALManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestSyncReplicationReplayWALManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegisterPeerWorkerWhenRestarting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestRegisterPeerWorkerWhenRestarting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestModifyPeerProcedureRetryBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestModifyPeerProcedureRetryBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTransitPeerSyncReplicationStateProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestTransitPeerSyncReplicationStateProcedureBackoff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4668,27 +4668,27 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotFileCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotFileCacheWithDifferentWorkingDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotFileCacheWithDifferentWorkingDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotHFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTakeSnapshotHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestTakeSnapshotHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotWhileRSCrashes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotWhileRSCrashes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotFileCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTakeSnapshotHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestTakeSnapshotHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotHFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4732,11 +4732,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricRegistryImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestMetricRegistryImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCounterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestCounterImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestTimerImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetricRegistryImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestMetricRegistryImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4744,19 +4744,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHistogramImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestHistogramImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFastLongHistogram.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestFastLongHistogram.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestGauge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestGauge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCounterImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestCounterImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHistogramImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestHistogramImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFastLongHistogram.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestFastLongHistogram.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTimerImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/metrics/impl/TestTimerImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4774,15 +4774,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobStoreCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCompactionOptMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionOptMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobFileLink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileLink.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobWithByteBuffAllocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobWithByteBuffAllocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4790,15 +4782,31 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExpiredMobFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestExpiredMobFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExpiredMobFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestExpiredMobFileCleaner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobWithByteBuffAllocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobWithByteBuffAllocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobFileLink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileLink.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobFileCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileCleanerChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCompactionRegularRegionBatchMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionRegularRegionBatchMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobStoreCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4806,23 +4814,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCachedMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestCachedMobFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCompactionWithDefaults.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionWithDefaults.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobFileCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileCleanerChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobDataBlockEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobDataBlockEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4830,16 +4822,24 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCompactionRegularRegionBatchMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionRegularRegionBatchMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCachedMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestCachedMobFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobDataBlockEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobDataBlockEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMobCompactionOptRegionBatchMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionOptRegionBatchMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCompactionWithDefaults.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionWithDefaults.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCompactionOptMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionOptMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -4856,11 +4856,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTaskMonitor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/monitoring/TestTaskMonitor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMemoryBoundedLogMessageBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/monitoring/TestMemoryBoundedLogMessageBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMemoryBoundedLogMessageBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/monitoring/TestMemoryBoundedLogMessageBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTaskMonitor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/monitoring/TestTaskMonitor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4878,11 +4878,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamedQueueRecorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestNamedQueueRecorder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSlowLogAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestSlowLogAccessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSlowLogAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestSlowLogAccessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNamedQueueRecorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestNamedQueueRecorder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4936,11 +4936,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/nio/TestMultiByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSingleByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/nio/TestSingleByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSingleByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/nio/TestSingleByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/nio/TestMultiByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4958,15 +4958,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFailedProcCleanup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestFailedProcCleanup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKProcedureControllers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestZKProcedureControllers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureCoordinator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureCoordinator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKProcedureControllers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestZKProcedureControllers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestZKProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFailedProcCleanup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestFailedProcCleanup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -4974,20 +4982,12 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureDescriber.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureDescriber.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestZKProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureCoordinator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureCoordinator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -5004,72 +5004,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureNonce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureNonce.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureExecution.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureExecution.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureEvents.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureSuspended.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSuspended.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteProcedureDispatcherUncaughtExceptionHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestRemoteProcedureDispatcherUncaughtExceptionHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureInMemoryChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureInMemoryChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureSkipPersistence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSkipPersistence.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestYieldProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureCleanup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureCleanup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestChildProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestChildProcedures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureReplayOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureReplayOrder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureRollbackAIOOB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRollbackAIOOB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestForceUpdateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestForceUpdateProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureExecutor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestLockAndQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureSchedulerConcurrency.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSchedulerConcurrency.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
@@ -5080,15 +5032,63 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStateMachineProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteProcedureDispatcherUncaughtExceptionHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestRemoteProcedureDispatcherUncaughtExceptionHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureNonce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureNonce.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureSuspended.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSuspended.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureInMemoryChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureInMemoryChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestYieldProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureExecutor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestChildProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestChildProcedures.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureEvents.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestForceUpdateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestForceUpdateProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureReplayOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureReplayOrder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureRollbackAIOOB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRollbackAIOOB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLockAndQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestLockAndQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStateMachineProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5124,19 +5124,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALProcedurePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestWALProcedurePrettyPrinter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionProcedureStoreMigration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestRegionProcedureStoreMigration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileProcedurePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestHFileProcedurePrettyPrinter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestRegionProcedureStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileProcedurePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestHFileProcedurePrettyPrinter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionProcedureStoreMigration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestRegionProcedureStoreMigration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALProcedurePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestWALProcedurePrettyPrinter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5154,19 +5154,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBitSetNode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestBitSetNode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureStoreTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestProcedureStoreTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureStoreTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestProcedureStoreTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBitSetNode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestBitSetNode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStressWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestStressWALProcedureStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestWALProcedureStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestWALProcedureStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStressWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestStressWALProcedureStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5202,155 +5202,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTablesWithQuotas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestTablesWithQuotas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGlobalQuotaSettingsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestGlobalQuotaSettingsImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFileSystemUtilizationChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestFileSystemUtilizationChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaIncrease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaIncrease.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnNonExistingTables.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnNonExistingTables.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestActivePolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestActivePolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaBasicFunctioning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaBasicFunctioning.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRateLimiter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRateLimiter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableQuotaViolationStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestTableQuotaViolationStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaDropTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaDropTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterScopeQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestClusterScopeQuotaThrottle.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLowLatencySpaceQuotas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaViolationPolicyRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaViolationPolicyRefresherChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestFileArchiverNotifierImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaRemoval.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaRemoval.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSnapshotQuotaObserverChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotaManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreRegionReports.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreRegionReports.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSizeUse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeUse.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserverWithMocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserverWithMocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerSpaceQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionServerSpaceQuotaManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestNamespaceQuotaViolationStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestNamespaceQuotaViolationStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSuperUserQuotaPermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaSwitchPolicies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaSwitchPolicies.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaThrottle.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableSpaceQuotaViolationNotifier.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestTableSpaceQuotaViolationNotifier.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaTableUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaTableUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeStoreImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSizeImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSizeReportingChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeReportingChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithSnapshots.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithSnapshots.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaBasicFunctioning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaBasicFunctioning.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaStatusRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerSpaceQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionServerSpaceQuotaManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -5358,11 +5222,139 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThrottleSettings.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestThrottleSettings.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaGlobalsSettingsBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaGlobalsSettingsBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSuperUserQuotaPermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableQuotaViolationStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestTableQuotaViolationStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSizeUse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeUse.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSizeStoreImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeStoreImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSizeImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTablesWithQuotas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestTablesWithQuotas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFileSystemUtilizationChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestFileSystemUtilizationChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClusterScopeQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestClusterScopeQuotaThrottle.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaIncrease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaIncrease.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGlobalQuotaSettingsImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestGlobalQuotaSettingsImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSnapshotQuotaObserverChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSizeReportingChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeReportingChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestActivePolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestActivePolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaAdmin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaThrottle.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableSpaceQuotaViolationNotifier.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestTableSpaceQuotaViolationNotifier.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaViolationPolicyRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaViolationPolicyRefresherChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnNonExistingTables.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnNonExistingTables.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserverWithMocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserverWithMocks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaSwitchPolicies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaSwitchPolicies.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaDropTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaDropTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLowLatencySpaceQuotas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaTableUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaTableUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaRemoval.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaRemoval.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaStatusRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithSnapshots.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithSnapshots.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreRegionReports.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreRegionReports.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterQuotaManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotaManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRateLimiter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRateLimiter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestFileArchiverNotifierImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -5376,6 +5368,14 @@
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestQuotaSettingsFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaSettingsFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaGlobalsSettingsBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaGlobalsSettingsBypass.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestThrottleSettings.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestThrottleSettings.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -5392,24 +5392,24 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNoWritesViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestNoWritesViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestDisableTableViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestDisableTableViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNoInsertsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestNoInsertsViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNoWritesCompactionsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestNoWritesCompactionsViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNoInsertsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestNoInsertsViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestBulkLoadCheckingViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestBulkLoadCheckingViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNoWritesViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestNoWritesViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNoWritesCompactionsViolationPolicyEnforcement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/policies/TestNoWritesCompactionsViolationPolicyEnforcement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -5430,319 +5430,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionFileNotFound.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionFileNotFound.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerAbortTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAbortTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerOnlineConfigChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerOnlineConfigChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNotCleanupCompactedFileWhenRegionWarmup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNotCleanupCompactedFileWhenRegionWarmup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionInterrupt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInterrupt.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecoveredEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEdits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleTimeRangeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSimpleTimeRangeTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerAccounting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAccounting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellSkipListSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCellSkipListSet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHMobStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHMobStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionSplitPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSRpcServices.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerHostname.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerHostname.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionIncrement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionIncrement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerReportForDuty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReportForDuty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNewVersionBehaviorFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNewVersionBehaviorFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSChoresScheduled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSChoresScheduled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeekOptimizations.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreLAB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkLoadReplicationHFileRefs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkLoadReplicationHFileRefs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResettingCounters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestResettingCounters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionSplitRestriction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenSeqNumUnexpectedIncrease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestOpenSeqNumUnexpectedIncrease.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithModifyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithModifyTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJoinedScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestJoinedScanners.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerWithBulkload.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithBulkload.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerWithCorruptHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithCorruptHFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWideScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWideScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMemStoreSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreSegmentsIterator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCVFWithMiniCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSCVFWithMiniCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAddressTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMasterAddressTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMergeTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionMergeTransactionOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanWithBloomError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanWithBloomError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnSeeking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestColumnSeeking.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithNoneAndNoDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithNoneAndNoDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionWithInMemoryFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionWithInMemoryFlush.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMinorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinorCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCacheOnWriteInSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsUserAggregate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsUserAggregate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiLogThreshold.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiLogThreshold.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreFileScannerWithTagCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileScannerWithTagCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMajorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMajorCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMemStoreChunkPool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreChunkPool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionFileSystem.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsTableLatencies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableLatencies.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteMobTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDeleteMobTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeepDeletes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestKeepDeletes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFailedAppendAndSync.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFailedAppendAndSync.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALLockup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALLockup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionInfoStaticInitialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInfoStaticInitialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClearRegionBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClearRegionBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithAlgoGZAndNoDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithAlgoGZAndNoDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlocksRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksRead.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactorMemLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactorMemLeak.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoveRegionMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRemoveRegionMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionReplayEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionRandomKeying.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionRandomKeying.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushRegionEntry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFlushRegionEntry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactingMemStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileOnRegionClose.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileOnRegionClose.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsTableAggregate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableAggregate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetClosestAtOrBefore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestGetClosestAtOrBefore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithNoneAndUseDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithNoneAndUseDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactionPolicyOverflow.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicyOverflow.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerRetriableFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRetriableFailure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerCrashDisableWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerCrashDisableWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRpcSchedulerFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionWithByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionOpen.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionOpen.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSErrorsExposed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFSErrorsExposed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRowPrefixBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowPrefixBloomFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -5750,239 +5438,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWalAndCompactingMemStoreFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWalAndCompactingMemStoreFlush.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithAlgoGZAndNoDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithAlgoGZAndNoDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStripeStoreFileManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenRegionFailedMemoryLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestOpenRegionFailedMemoryLeak.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyValueScanFixture.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestKeyValueScanFixture.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALMonotonicallyIncreasingSeqId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALMonotonicallyIncreasingSeqId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerNoMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiVersionConcurrencyControl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiVersionConcurrencyControl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPriorityRpc.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestPriorityRpc.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowTooBig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkLoadReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkLoadReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogRoller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestLogRoller.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsHeapMemoryManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShutdownWhileWALBroken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestShutdownWhileWALBroken.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicaFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicaFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreScannerClosure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScannerClosure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactionPolicyHeterogeneousStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicyHeterogeneousStorage.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestParallelPut.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestParallelPut.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitLogWorker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionFavoredNodes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQosFunction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestQosFunction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreFileRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileRefresherChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitWalDataLoss.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitWalDataLoss.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionInDeadRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionInDeadRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReadAndWriteRegionInfoFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestReadAndWriteRegionInfoFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDefaultStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDefaultStoreEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFlushLifeCycleTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStripeStoreEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecoveredEditsReplayAndAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEditsReplayAndAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicasAreDistributed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasAreDistributed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileAfterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileAfterFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowPrefixBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowPrefixBloomFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMemstoreLABWithoutPool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreFlusher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestObservedExceptionsInBatch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestObservedExceptionsInBatch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDefaultCompactSelection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDefaultCompactSelection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionAfterBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionAfterBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSecureBulkLoadManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIsDeleteFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestIsDeleteFailure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSettingTimeoutOnBlockingPoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSettingTimeoutOnBlockingPoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAtomicOperation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestAtomicOperation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionKeyRotation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionKeyRotation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerNonceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestServerNonceManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithAlgoGZAndUseDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithAlgoGZAndUseDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithRestartScenarios.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithRestartScenarios.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompoundBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompoundBloomFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellFlatSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCellFlatSet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerRPCScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRPCScanMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReversibleScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestReversibleScanners.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionDisabled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionDisabled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDataBlockEncodingTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDataBlockEncodingTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlocksScanned.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksScanned.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionServerBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRpcSchedulerFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRpcSchedulerFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -5990,67 +5454,35 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSKilledWhenInitializing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSKilledWhenInitializing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerAccounting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAccounting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRequestsPerSecondMetric.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRequestsPerSecondMetric.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerAbortTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAbortTimeout.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClusterId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWalAndCompactingMemStoreFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWalAndCompactingMemStoreFlush.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMinVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestOpenRegionFailedMemoryLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestOpenRegionFailedMemoryLeak.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDefaultMemStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClearRegionBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClearRegionBlockCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimestampFilterSeekHint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestTimestampFilterSeekHint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlocksScanned.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksScanned.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiVersionConcurrencyControlBasic.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiVersionConcurrencyControlBasic.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerRegionSpaceUseReport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerRegionSpaceUseReport.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMutateRowsRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMutateRowsRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStripeStoreFileManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHdfsSnapshotHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHdfsSnapshotHRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionReplayEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6058,19 +5490,83 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactSplitThread.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactSplitThread.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMemstoreLABWithoutPool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactingToCellFlatMapMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactingToCellFlatMapMemStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerRegionSpaceUseReport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerRegionSpaceUseReport.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerReadRequestMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionInterrupt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInterrupt.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMiniBatchOperationInProgress.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMiniBatchOperationInProgress.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStoreFileScannerWithTagCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileScannerWithTagCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNotCleanupCompactedFileWhenRegionWarmup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNotCleanupCompactedFileWhenRegionWarmup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSwitchToStreamRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSwitchToStreamRead.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBulkLoadReplicationHFileRefs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkLoadReplicationHFileRefs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionWithByteBuff.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestObservedExceptionsInBatch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestObservedExceptionsInBatch.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOpenSeqNumUnexpectedIncrease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestOpenSeqNumUnexpectedIncrease.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCacheOnWriteInSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRemoveRegionMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRemoveRegionMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLogRoller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestLogRoller.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithRestartScenarios.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithRestartScenarios.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNewVersionBehaviorFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNewVersionBehaviorFromClientSide.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithNoneAndUseDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithNoneAndUseDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALMonotonicallyIncreasingSeqId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALMonotonicallyIncreasingSeqId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBlocksRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksRead.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionFavoredNodes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6078,11 +5574,131 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncTimeRangeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSyncTimeRangeTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSplitLogWorker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionArchiveIOException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionArchiveIOException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsTableLatencies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableLatencies.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSChoresScheduled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSChoresScheduled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerReportForDuty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReportForDuty.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSplitRestriction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionSplitRestriction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithAlgoGZAndUseDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithAlgoGZAndUseDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionDisabled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionDisabled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicasAreDistributed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasAreDistributed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestParallelPut.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestParallelPut.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestJoinedScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestJoinedScanners.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCVFWithMiniCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSCVFWithMiniCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDefaultMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDefaultMemStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHdfsSnapshotHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHdfsSnapshotHRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicas.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMemStoreChunkPool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreChunkPool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicaFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicaFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResettingCounters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestResettingCounters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRecoveredEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEdits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactingToCellFlatMapMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactingToCellFlatMapMemStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSErrorsExposed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFSErrorsExposed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitWalDataLoss.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitWalDataLoss.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiLogThreshold.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiLogThreshold.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestKeepDeletes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestKeepDeletes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompoundBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompoundBloomFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerRPCScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRPCScanMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactionPolicyHeterogeneousStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicyHeterogeneousStorage.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsHeapMemoryManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionTracing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSKilledWhenInitializing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSKilledWhenInitializing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreFileRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileRefresherChore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6090,31 +5706,415 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestKeyValueScanFixture.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestKeyValueScanFixture.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAtomicOperation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestAtomicOperation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerWithCorruptHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithCorruptHFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactorMemLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactorMemLeak.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestEndToEndSplitTransaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEndToEndSplitTransaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupMetaWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupMetaWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTimestampFilterSeekHint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestTimestampFilterSeekHint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQosFunction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestQosFunction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteMobTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDeleteMobTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFlushLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFlushLifeCycleTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellSkipListSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCellSkipListSet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCompactionLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionLifeCycleTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionServerBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSwitchToStreamRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSwitchToStreamRead.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMergeTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionMergeTransactionOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScanWithBloomError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanWithBloomError.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSettingTimeoutOnBlockingPoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSettingTimeoutOnBlockingPoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithModifyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithModifyTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPriorityRpc.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestPriorityRpc.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerWithBulkload.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithBulkload.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRequestsPerSecondMetric.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRequestsPerSecondMetric.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerReadRequestMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSeekOptimizations.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSecureBulkLoadManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStripeStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStripeStoreEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncTimeRangeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSyncTimeRangeTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileAfterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileAfterFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClusterId.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiVersionConcurrencyControlBasic.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiVersionConcurrencyControlBasic.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionFileSystem.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReadAndWriteRegionInfoFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestReadAndWriteRegionInfoFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRecoveredEditsReplayAndAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEditsReplayAndAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionWithInMemoryFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionWithInMemoryFlush.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMutateRowsRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMutateRowsRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSRpcServices.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSRpcServices.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionState.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBulkLoadReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkLoadReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReversibleScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestReversibleScanners.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionAfterBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionAfterBulkLoad.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIsDeleteFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestIsDeleteFailure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiVersionConcurrencyControl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiVersionConcurrencyControl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDefaultCompactSelection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDefaultCompactSelection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSplitPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionSplitPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionFileNotFound.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionFileNotFound.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionKeyRotation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionKeyRotation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerRetriableFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRetriableFailure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMemStoreLAB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreLAB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsUserAggregate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsUserAggregate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRowTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowTooBig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestShutdownWhileWALBroken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestShutdownWhileWALBroken.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerNonceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestServerNonceManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHMobStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHMobStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMinorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinorCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestColumnSeeking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestColumnSeeking.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionWithCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionWithCoprocessor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMinVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWideScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWideScanner.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellFlatSet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCellFlatSet.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegion.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupMetaWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupMetaWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerCrashDisableWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerCrashDisableWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDefaultStoreEngine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDefaultStoreEngine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMiniBatchOperationInProgress.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMiniBatchOperationInProgress.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionArchiveIOException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionArchiveIOException.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionInfoStaticInitialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInfoStaticInitialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMemStoreSegmentsIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreSegmentsIterator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactionPolicyOverflow.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicyOverflow.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestKeyValueHeap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMemStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMemStoreFlusher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionIncrement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionIncrement.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileOnRegionClose.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileOnRegionClose.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAddressTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMasterAddressTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiColumnScannerWithNoneAndNoDataEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithNoneAndNoDataEncoding.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerOnlineConfigChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerOnlineConfigChange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionRandomKeying.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionRandomKeying.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionInDeadRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionInDeadRegionServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerNoMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactSplitThread.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactSplitThread.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactingMemStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactingMemStore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMajorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMajorCompaction.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetClosestAtOrBefore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestGetClosestAtOrBefore.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleTimeRangeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSimpleTimeRangeTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionOpen.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionOpen.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerHostname.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerHostname.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDataBlockEncodingTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDataBlockEncodingTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALLockup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALLockup.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFailedAppendAndSync.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFailedAppendAndSync.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreScannerClosure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScannerClosure.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFlushRegionEntry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFlushRegionEntry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsTableAggregate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableAggregate.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionServerSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetricsTableSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsRegionSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsUserSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsRegionSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6122,7 +6122,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsRegionServerSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionServerSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsUserSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsUserSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6140,31 +6140,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStripeCompactor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStripeCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">PerfTestCompactionPolicies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/PerfTestCompactionPolicies.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestDateTieredCompactor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCurrentHourProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestCurrentHourProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestFIFOCompactionPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestOffPeakHours.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestOffPeakHours.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCloseChecker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestCloseChecker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStripeCompactor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6172,7 +6156,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOffPeakHours.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestOffPeakHours.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDateTieredCompactor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestDateTieredCompactor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCloseChecker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestCloseChecker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStripeCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestFIFOCompactionPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PerfTestCompactionPolicies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/PerfTestCompactionPolicies.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6208,15 +6208,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestExplicitColumnTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestScanDeleteTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestCompactionScanQueryMatcher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScanWildcardColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestScanWildcardColumnTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6224,11 +6216,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanWildcardColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestScanWildcardColumnTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestNewVersionBehaviorTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNewVersionBehaviorTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestNewVersionBehaviorTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScanDeleteTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestScanDeleteTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestExplicitColumnTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestExplicitColumnTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionScanQueryMatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/TestCompactionScanQueryMatcher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6250,11 +6250,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushWithThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionWithThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/throttle/TestCompactionWithThroughputController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionWithThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/throttle/TestCompactionWithThroughputController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFlushWithThroughputController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6272,123 +6272,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncWALReplayCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncWALReplayCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALActionsListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALActionsListener.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALReplayCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplayCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestMetricsWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogRollingNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollingNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncWALReplayValueCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncWALReplayValueCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALCellCodecWithCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALCellCodecWithCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALReplayValueCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplayValueCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncFutureCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSyncFutureCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSecureWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncLogRolling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncLogRolling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncFuture.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSyncFuture.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCustomWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCustomWALCellCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogRollPeriod.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollPeriod.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogRolling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRolling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureAsyncWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSecureAsyncWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseWalOnEC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestHBaseWalOnEC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSequenceIdAccounting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSequenceIdAccounting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSWALEntry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestFSWALEntry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncLogRollPeriod.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncLogRollPeriod.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncFSWALDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncFSWALDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncProtobufLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncProtobufLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALReplayBoundedLogWriterCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplayBoundedLogWriterCreation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCombinedAsyncWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCombinedAsyncWriter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSHLogDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestFSHLogDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6396,14 +6284,126 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSecureWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSecureWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLogRolling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRolling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLogRollingNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollingNoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncWALReplayValueCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncWALReplayValueCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncFuture.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSyncFuture.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALReplayBoundedLogWriterCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplayBoundedLogWriterCreation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncLogRolling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncLogRolling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSWALEntry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestFSWALEntry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncWALReplayCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncWALReplayCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALActionsListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALActionsListener.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSecureAsyncWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSecureAsyncWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCombinedAsyncWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCombinedAsyncWriter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncFutureCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSyncFutureCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALReplayValueCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplayValueCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLogRollPeriod.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollPeriod.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCustomWALCellCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCustomWALCellCodec.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplay.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLogRollAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollAbort.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSequenceIdAccounting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestSequenceIdAccounting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALReplayCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALReplayCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALCellCodecWithCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALCellCodecWithCompression.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncFSWALDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncFSWALDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestMetricsWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncProtobufLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestAsyncProtobufLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSHLogDurability.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestFSHLogDurability.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseWalOnEC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestHBaseWalOnEC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCompressor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCompressor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -6434,11 +6434,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStateZKImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStateZKImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestZKReplicationQueueStorage.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKReplicationQueueStorage.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestZKReplicationQueueStorage.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStateZKImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStateZKImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6454,67 +6454,51 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNamespaceReplicationWithBulkLoadedData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestNamespaceReplicationWithBulkLoadedData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationKillSlaveRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillSlaveRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDroppedTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEmptyWALRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEmptyWALRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationKillMasterRSCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillMasterRSCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationWALEntryFilters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWALEntryFilters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClaimReplicationQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestClaimReplicationQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDroppedTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHBaseReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestHBaseReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStatusAfterLagging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStatusAfterLagging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationChangingPeerRegionservers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationChangingPeerRegionservers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAddToSerialReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestAddToSerialReplicationPeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSmallTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationSmallTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationKillSlaveRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillSlaveRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationKillMasterRSCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillMasterRSCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationStandBy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationStandBy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationDisableInactivePeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationDisableInactivePeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoveFromSerialReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestRemoveFromSerialReplicationPeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSerialReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationKillSlaveRSWithSeparateOldWALs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillSlaveRSWithSeparateOldWALs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWithTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpToolWithBulkLoadedData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationSyncUpToolWithBulkLoadedData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStatusSourceStartedTargetStoppedNewOp.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStatusSourceStartedTargetStoppedNewOp.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6522,15 +6506,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDeletedTableCFs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationMetricsforUI.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationMetricsforUI.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationStandbyKillRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationStandbyKillRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6542,15 +6518,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDeletedTableCFs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationProcedureRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationProcedureRetry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationDroppedTables.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationDroppedTables.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDeletedTableCFs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDroppedTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationStandBy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationStandBy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVerifyCellsReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestVerifyCellsReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationKillMasterRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillMasterRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6558,15 +6542,47 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDroppedTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpToolWithBulkLoadedData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationSyncUpToolWithBulkLoadedData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespaceReplicationWithBulkLoadedData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestNamespaceReplicationWithBulkLoadedData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationNewRSJoinBetweenRefreshes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationNewRSJoinBetweenRefreshes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEmptyWALRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEmptyWALRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationMetricsforUI.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationMetricsforUI.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSerialSyncReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSerialSyncReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWithTags.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationDroppedTables.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationDroppedTables.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSerialReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSerialReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationChangingPeerRegionservers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationChangingPeerRegionservers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMasterReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationStandbyKillMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationStandbyKillMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationActive.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationActive.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6578,7 +6594,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationMoreLogsInLocalGiveUpSplitting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationMoreLogsInLocalGiveUpSplitting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSmallTests.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationSmallTests.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationKillSlaveRSWithSeparateOldWALs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillSlaveRSWithSeparateOldWALs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6586,43 +6610,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVerifyCellsReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestVerifyCellsReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMasterReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationNewRSJoinBetweenRefreshes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationNewRSJoinBetweenRefreshes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationProcedureRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationProcedureRetry.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialReplicationFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSerialReplicationFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationActive.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationActive.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialSyncReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSerialSyncReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationKillMasterRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationKillMasterRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStatusSourceStartedTargetStoppedNewOp.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStatusSourceStartedTargetStoppedNewOp.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDeletedTableCFs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6630,15 +6622,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationStandbyKillMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationStandbyKillMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStatusAfterLagging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStatusAfterLagging.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStatusSourceStartedTargetStoppedWithRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStatusSourceStartedTargetStoppedWithRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoveFromSerialReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestRemoveFromSerialReplicationPeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationWALEntryFilters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWALEntryFilters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAddToSerialReplicationPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestAddToSerialReplicationPeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationMoreLogsInLocalGiveUpSplitting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationMoreLogsInLocalGiveUpSplitting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationDisableInactivePeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationDisableInactivePeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6646,11 +6646,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationStandbyKillRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSyncReplicationStandbyKillRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStatusSourceStartedTargetStoppedWithRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStatusSourceStartedTargetStoppedWithRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClaimReplicationQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestClaimReplicationQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSerialReplicationFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestSerialReplicationFailover.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6690,7 +6690,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpToolWithMultipleWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationSyncUpToolWithMultipleWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEndpointWithMultipleWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationEndpointWithMultipleWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6698,15 +6698,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpToolWithMultipleAsyncWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationSyncUpToolWithMultipleAsyncWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEndpointWithMultipleAsyncWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationEndpointWithMultipleAsyncWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEndpointWithMultipleAsyncWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationEndpointWithMultipleAsyncWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpToolWithMultipleAsyncWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationSyncUpToolWithMultipleAsyncWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEndpointWithMultipleWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationEndpointWithMultipleWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSyncUpToolWithMultipleWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/multiwal/TestReplicationSyncUpToolWithMultipleWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6728,111 +6728,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseInterClusterReplicationEndpointFilterEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestHBaseInterClusterReplicationEndpointFilterEdits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSourceLogQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceLogQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRefreshPeerWhileRegionServerRestarts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRefreshPeerWhileRegionServerRestarts.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpointNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpointNoMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDumpReplicationQueues.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestDumpReplicationQueues.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationCompressedWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationCompressedWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGlobalReplicationThrottler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestGlobalReplicationThrottler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialReplicationChecker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSerialReplicationChecker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBasicWALEntryStreamFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestBasicWALEntryStreamFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALEntryStreamDifferentCountsAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestWALEntryStreamDifferentCountsAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDrainReplicationQueuesForStandBy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestDrainReplicationQueuesForStandBy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSourceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBasicWALEntryStreamAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestBasicWALEntryStreamAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationShipperQuit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSyncReplicationShipperQuit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationThrottler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationThrottler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALEntrySinkFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestWALEntrySinkFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSourceManagerJoin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceManagerJoin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSourceManagerZkImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceManagerZkImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALEntryStreamDifferentCountsFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestWALEntryStreamDifferentCountsFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSerialReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReplicationSink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSink.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationValueCompressedWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationValueCompressedWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRefreshPeerWhileRegionServerRestarts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRefreshPeerWhileRegionServerRestarts.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRefreshRecoveredReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRefreshRecoveredReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationCompressedWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationCompressedWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6840,16 +6744,112 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsReplicationSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetricsReplicationSourceFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBasicWALEntryStreamAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestBasicWALEntryStreamAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsReplicationSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetricsReplicationSourceFactoryImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSourceLogQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceLogQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationValueCompressedWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationValueCompressedWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSerialReplicationChecker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSerialReplicationChecker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSourceManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGlobalReplicationThrottler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestGlobalReplicationThrottler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseInterClusterReplicationEndpointFilterEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestHBaseInterClusterReplicationEndpointFilterEdits.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALEntrySinkFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestWALEntrySinkFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationThrottler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationThrottler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDrainReplicationQueuesForStandBy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestDrainReplicationQueuesForStandBy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSourceManagerZkImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceManagerZkImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSourceManagerJoin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSourceManagerJoin.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALEntryStreamDifferentCountsFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestWALEntryStreamDifferentCountsFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpointNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpointNoMaster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRefreshRecoveredReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRefreshRecoveredReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBasicWALEntryStreamFSHLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestBasicWALEntryStreamFSHLog.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALEntryStreamDifferentCountsAsyncFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestWALEntryStreamDifferentCountsAsyncFSWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDumpReplicationQueues.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestDumpReplicationQueues.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationShipperQuit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSyncReplicationShipperQuit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSerialReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSerialReplicationEndpoint.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetricsReplicationSourceImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetricsReplicationSourceImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsReplicationSourceFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetricsReplicationSourceFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsReplicationSourceFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetricsReplicationSourceFactoryImpl.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -6874,47 +6874,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGzipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGzipFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersWithFilters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannersWithFilters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestMultiRowResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecurityHeadersFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecurityHeadersFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannerResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRESTServerSSL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestRESTServerSSL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureRESTServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecureRESTServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResourceFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestResourceFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespacesInstanceResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestNamespacesInstanceResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestTableResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGZIPResponseWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGZIPResponseWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVersionResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestVersionResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6922,15 +6882,47 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteRow.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestDeleteRow.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecurityHeadersFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecurityHeadersFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStatusResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestStatusResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNamespacesInstanceResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestNamespacesInstanceResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVersionResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestVersionResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRESTServerSSL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestRESTServerSSL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestTableScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStatusResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestStatusResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestTableResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetAndPutResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGetAndPutResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannerResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResourceFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestResourceFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteRow.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestDeleteRow.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSchemaResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSchemaResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -6938,15 +6930,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestTableScan.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestMultiRowResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSchemaResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSchemaResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureRESTServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecureRESTServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetAndPutResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGetAndPutResource.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGZIPResponseWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGZIPResponseWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannersWithFilters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannersWithFilters.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGzipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGzipFilter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6964,19 +6964,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteHTableRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteHTableRetries.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteAdminRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteAdminRetries.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteHTableRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteHTableRetries.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestXmlParsing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestXmlParsing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteAdminRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteAdminRetries.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestXmlParsing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestXmlParsing.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -6994,7 +6994,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnSchemaModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestColumnSchemaModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestCellModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7002,15 +7002,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStorageClusterVersionModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestStorageClusterVersionModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestScannerModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestRowModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStorageClusterStatusModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestStorageClusterStatusModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7018,35 +7010,43 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestCellModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableInfoModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestTableInfoModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableListModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestTableListModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellSetModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestCellSetModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespacesModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestNamespacesModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestNamespacesInstanceModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestNamespacesInstanceModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNamespacesModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestNamespacesModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableRegionModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestTableRegionModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRowModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestRowModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStorageClusterStatusModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestStorageClusterStatusModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableListModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestTableListModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInfoModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestTableInfoModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestColumnSchemaModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestColumnSchemaModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestScannerModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStorageClusterVersionModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestStorageClusterVersionModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableRegionModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestTableRegionModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellSetModel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/model/TestCellSetModel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -7064,11 +7064,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEnableRSGroupsCompatibility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestEnableRSGroupsCompatibility.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupConfig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupConfig.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestUpdateRSGroupConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestUpdateRSGroupConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7076,31 +7076,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsAdmin1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsAdmin1.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsBasics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBasics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsAdmin2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsAdmin2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUpdateRSGroupConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestUpdateRSGroupConfiguration.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupMajorCompactionTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupMajorCompactionTTL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsOfflineMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsBalance.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBalance.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7108,24 +7084,48 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsKillRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsKillRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRSGroupMappingScript.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupMappingScript.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsCPHookCalled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsCPHookCalled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsKillRS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsKillRS.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEnableRSGroupsCompatibility.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestEnableRSGroupsCompatibility.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMigrateRSGroupInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestMigrateRSGroupInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsBalance.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBalance.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsOfflineMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsCPHookCalled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsCPHookCalled.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsBasics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBasics.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsAdmin1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsAdmin1.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupMajorCompactionTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupMajorCompactionTTL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsAdmin2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsAdmin2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -7142,15 +7142,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUsersOperationsWithSecureHadoop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/TestUsersOperationsWithSecureHadoop.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestUser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/TestUser.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureIPC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/TestSecureIPC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestUsersOperationsWithSecureHadoop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/TestUsersOperationsWithSecureHadoop.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/TestUser.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureIPC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/TestSecureIPC.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7180,11 +7180,27 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotScannerHDFSAclController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestSnapshotScannerHDFSAclController2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellACLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAccessController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNamespaceCommands.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestNamespaceCommands.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTablePermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestTablePermissions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAccessController3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorWhitelistMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7192,51 +7208,27 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellACLWithMultipleVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorWhitelistMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotScannerHDFSAclController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestSnapshotScannerHDFSAclController2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUnloadAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestUnloadAccessController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessController3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestZKPermissionWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestZKPermissionWatcher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespaceCommands.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestNamespaceCommands.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestScanEarlyTermination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotScannerHDFSAclController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestSnapshotScannerHDFSAclController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestUnloadAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestUnloadAccessController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTablePermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestTablePermissions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotScannerHDFSAclController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestSnapshotScannerHDFSAclController.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7246,6 +7238,14 @@
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRpcAccessChecks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestRpcAccessChecks.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellACLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellACLWithMultipleVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -7266,11 +7266,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSaslServerAuthenticationProviders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/provider/TestSaslServerAuthenticationProviders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCustomSaslAuthenticationProviderNettyRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/provider/TestCustomSaslAuthenticationProviderNettyRpcServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCustomSaslAuthenticationProviderNettyRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/provider/TestCustomSaslAuthenticationProviderNettyRpcServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSaslServerAuthenticationProviders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/provider/TestSaslServerAuthenticationProviders.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7314,11 +7314,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDelegationTokenWithEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestDelegationTokenWithEncryption.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAuthenticationKey.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestAuthenticationKey.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGenerateDelegationToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestGenerateDelegationToken.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDelegationTokenWithEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestDelegationTokenWithEncryption.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFsDelegationToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestFsDelegationToken.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestZKSecretWatcherRefreshKeys.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestZKSecretWatcherRefreshKeys.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7326,20 +7334,12 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAuthenticationKey.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestAuthenticationKey.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGenerateDelegationToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestGenerateDelegationToken.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKSecretWatcherRefreshKeys.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestZKSecretWatcherRefreshKeys.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestZKSecretWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestZKSecretWatcher.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFsDelegationToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestFsDelegationToken.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestClientTokenUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestClientTokenUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
@@ -7360,7 +7360,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsOpWithDifferentUsersNoACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsOpWithDifferentUsersNoACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExpressionParser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestExpressionParser.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7368,43 +7368,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDefaultScanLabelGeneratorStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestDefaultScanLabelGeneratorStack.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithSLGStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithSLGStack.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithDefaultVisLabelService.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithDefaultVisLabelService.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelReplicationWithExpAsString.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelReplicationWithExpAsString.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithCustomVisLabService.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithCustomVisLabService.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestEnforcingScanLabelGenerator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestExpressionExpander.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestExpressionExpander.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLablesWithGroups.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLablesWithGroups.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithDefaultVisLabelService.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithDefaultVisLabelService.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithSLGStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithSLGStack.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7412,15 +7388,39 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsOpWithDifferentUsersNoACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsOpWithDifferentUsersNoACL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsOnNewVersionBehaviorTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsOnNewVersionBehaviorTable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExpressionParser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestExpressionParser.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithCustomVisLabService.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithCustomVisLabService.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestEnforcingScanLabelGenerator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLablesWithGroups.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLablesWithGroups.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelReplicationWithExpAsString.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelReplicationWithExpAsString.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDefaultScanLabelGeneratorStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestDefaultScanLabelGeneratorStack.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -7438,15 +7438,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshotHelpers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotHelpers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshotV1NoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotV1NoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshotAdjunct.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotAdjunct.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshotWithTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotWithTemporaryDirectory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7454,11 +7446,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshotWithTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotWithTemporaryDirectory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshotHelpers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotHelpers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobSecureExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobSecureExportSnapshot.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobExportSnapshot.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7466,11 +7458,43 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshotV2NoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotV2NoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshotV1NoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotV1NoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobExportSnapshot.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshotV2NoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotV2NoCluster.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshotAdjunct.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotAdjunct.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobSecureExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobSecureExportSnapshot.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotHelper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreSnapshotHelper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobRestoreFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotClientRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotClientRetries.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotHelper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobRestoreSnapshotHelper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7482,48 +7506,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSnapshotTask.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMobFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotHelper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobRestoreSnapshotHelper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotStoreFileSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotStoreFileSize.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotClientRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotClientRetries.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotWhenChoreCleaning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotWhenChoreCleaning.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobRestoreFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSnapshotTask.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestConcurrentFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestConcurrentFlushSnapshotFromClient.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotHelper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreSnapshotHelper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotWhenChoreCleaning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotWhenChoreCleaning.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -7558,31 +7558,31 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestCallQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestThriftSpnegoHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftSpnegoHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestThriftHttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftHttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestThriftSpnegoHttpFallbackServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftSpnegoHttpFallbackServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBindExceptionHandling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestBindExceptionHandling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftServerCmdLine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftServerCmdLine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftServerCmdLine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftServerCmdLine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestCallQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBindExceptionHandling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestBindExceptionHandling.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7608,28 +7608,28 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithLabels.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThrift2HttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThrift2HttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithReadOnly.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithReadOnly.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThrift2ServerCmdLine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThrift2ServerCmdLine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThrift2ServerCmdLine.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThrift2ServerCmdLine.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithReadOnly.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithReadOnly.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithLabels.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestThriftConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftConnection.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestThrift2HttpServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThrift2HttpServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -7646,11 +7646,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadHFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestSecureBulkLoadHFiles.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadHFilesSplitRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestSecureBulkLoadHFilesSplitRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkLoadHFilesSplitRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestBulkLoadHFilesSplitRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCanaryTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestCanaryTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7658,11 +7658,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadHFilesSplitRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestSecureBulkLoadHFilesSplitRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadHFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestSecureBulkLoadHFiles.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCanaryTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestCanaryTool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBulkLoadHFilesSplitRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestBulkLoadHFilesSplitRecovery.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7702,22 +7702,6 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStruct.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestStruct.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawBytes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestRawBytes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt16.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestTerminatedWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestUnion2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestUnion2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -7726,39 +7710,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt32.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt64.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRawString.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestRawString.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStructNullExtension.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestStructNullExtension.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTerminatedWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestTerminatedWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedString.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedString.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedFloat64.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedNumeric.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt8.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestFixedLengthWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCopyOnWriteMaps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestCopyOnWriteMaps.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7770,7 +7730,47 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCopyOnWriteMaps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestCopyOnWriteMaps.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFixedLengthWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestFixedLengthWrapper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRawBytes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestRawBytes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedInt32.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt32.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStructNullExtension.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestStructNullExtension.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedInt64.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt64.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedFloat64.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedFloat64.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedNumeric.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedNumeric.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedInt8.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt8.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStruct.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestStruct.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedString.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedString.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrderedInt16.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/types/TestOrderedInt16.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7796,51 +7796,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseFsckCleanReplicationBarriers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckCleanReplicationBarriers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestConnectionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConnectionCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSplitCalculator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionSplitCalculator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRootPath.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRootPath.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConfigurationUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConfigurationUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMover1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover1.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMover2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStealJobQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestStealJobQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionTest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestEncryptionTest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadSequential.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadSequential.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJSONMetricUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestJSONMetricUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompressionTest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCompressionTest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorScanPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCoprocessorScanPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7848,107 +7808,155 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadEncoded.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadEncoded.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSplitCalculator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionSplitCalculator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIdLock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIdLock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionSplitter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionSplitter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseFsckComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseFsckMOB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckMOB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBloomFilterChunk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestBloomFilterChunk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDefaultEnvironmentEdge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestDefaultEnvironmentEdge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseFsckReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileArchiveUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHFileArchiveUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSTableDescriptors.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIdReadWriteLockStrongRef.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIdReadWriteLockStrongRef.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionMover3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover3.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide3WoUnsafe.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFromClientSide3WoUnsafe.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorScanPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCoprocessorScanPolicy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteBuffUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteBuffUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConnectionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConnectionCache.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementingEnvironmentEdge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIncrementingEnvironmentEdge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSortedList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestSortedList.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMoverWithRSGroupEnable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMoverWithRSGroupEnable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadParallel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadParallel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestIdReadWriteLockWithObjectPool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIdReadWriteLockWithObjectPool.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestConfigurationUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConfigurationUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLossyCounting.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestLossyCounting.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileArchiveUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHFileArchiveUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseFsckCleanReplicationBarriers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckCleanReplicationBarriers.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMoverWithRSGroupEnable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMoverWithRSGroupEnable.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadEncoded.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadEncoded.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBloomFilterChunk.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestBloomFilterChunk.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHBaseFsckEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckEncryption.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadSequential.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadSequential.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSortedList.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestSortedList.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionTest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestEncryptionTest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseFsckReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckReplication.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseFsckMOB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckMOB.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSTableDescriptors.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMover1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover1.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRootPath.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRootPath.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseFsckComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckComparator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIdLock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIdLock.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementingEnvironmentEdge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIncrementingEnvironmentEdge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDefaultEnvironmentEdge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestDefaultEnvironmentEdge.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIdReadWriteLockStrongRef.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestIdReadWriteLockStrongRef.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide3WoUnsafe.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFromClientSide3WoUnsafe.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestJSONMetricUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestJSONMetricUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStealJobQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestStealJobQueue.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestByteBuffUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteBuffUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompressionTest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCompressionTest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMover2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover2.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadParallel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadParallel.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFSVisitor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSVisitor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThreadLocalPoolMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestThreadLocalPoolMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRoundRobinPoolMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRoundRobinPoolMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRoundRobinPoolMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRoundRobinPoolMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThreadLocalPoolMap.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestThreadLocalPoolMap.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVersionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestVersionInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestShowProperties.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestShowProperties.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7960,11 +7968,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRetryCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRetryCounter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestByteBufferArray.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteBufferArray.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEnvironmentEdgeManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestEnvironmentEdgeManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCommonFSUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCommonFSUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestSimpleMutableByteRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClasses.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestClasses.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7972,7 +7988,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLoadTestKVGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestLoadTestKVGenerator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestByteRangeWithKVSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteRangeWithKVSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7980,11 +7996,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFutureUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFutureUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStrings.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestStrings.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleKdcServerUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestSimpleKdcServerUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThreads.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestThreads.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -7992,31 +8008,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestOrder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestByteRangeUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteRangeUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConcatenatedLists.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConcatenatedLists.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLoadTestKVGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestLoadTestKVGenerator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBytes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestBytes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStrings.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestStrings.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteBufferArray.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteBufferArray.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGsonUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestGsonUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleMutableByteRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestSimpleMutableByteRange.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestEnvironmentEdgeManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestEnvironmentEdgeManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8028,19 +8028,35 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShowProperties.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestShowProperties.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRetryCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRetryCounter.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClasses.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestClasses.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAvlUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestAvlUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFutureUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFutureUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteRangeWithKVSerialization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteRangeWithKVSerialization.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestConcatenatedLists.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConcatenatedLists.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestOrder.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBytes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestBytes.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestKeyLocker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestKeyLocker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGsonUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestGsonUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8048,23 +8064,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestByteRangeUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestByteRangeUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVersionInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestVersionInfo.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThreads.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestThreads.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCommonFSUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCommonFSUtils.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestKeyLocker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestKeyLocker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleKdcServerUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestSimpleKdcServerUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8086,20 +8086,20 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMajorCompactionRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/compaction/TestMajorCompactionRequest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMajorCompactor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/compaction/TestMajorCompactor.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMajorCompactorTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/compaction/TestMajorCompactorTTL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMajorCompactionTTLRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/compaction/TestMajorCompactionTTLRequest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMajorCompactionRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/compaction/TestMajorCompactionRequest.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -8116,23 +8116,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceBetweenGetWALAndGetWALs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestRaceBetweenGetWALAndGetWALs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitToHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitToHFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncFSWALCorruptionDueToDanglingByteBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestAsyncFSWALCorruptionDueToDanglingByteBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWrongMetaWALFileName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitWithDeletedTableData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitWithDeletedTableData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALMethods.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALMethods.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8140,43 +8132,43 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALRootDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALRootDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWrongMetaWALFileName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncFSWALCorruptionDueToDanglingByteBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestAsyncFSWALCorruptionDueToDanglingByteBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALFiltering.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALFiltering.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSHLogCorruptionDueToDanglingByteBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogCorruptionDueToDanglingByteBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReadWriteSeqIdFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestReadWriteSeqIdFiles.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALOpenAfterDNRollingStart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALOpenAfterDNRollingStart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSyncReplicationWALProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCompressedWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestCompressedWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSHLogProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFSHLogCorruptionDueToDanglingByteBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogCorruptionDueToDanglingByteBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBoundedRegionGroupingStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestBoundedRegionGroupingStrategy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSHLogCorruptionWithMultiPutDueToDanglingByteBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogCorruptionWithMultiPutDueToDanglingByteBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8184,11 +8176,35 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALMethods.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALMethods.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRaceBetweenGetWALAndGetWALs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestRaceBetweenGetWALAndGetWALs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBoundedRegionGroupingStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestBoundedRegionGroupingStrategy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitWithDeletedTableData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitWithDeletedTableData.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReadWriteSeqIdFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestReadWriteSeqIdFiles.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSHLogProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSyncReplicationWALProvider.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALOpenAfterDNRollingStart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALOpenAfterDNRollingStart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8196,24 +8212,8 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSHLogCorruptionWithMultiPutDueToDanglingByteBuffer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogCorruptionWithMultiPutDueToDanglingByteBuffer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALReaderOnSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALReaderOnSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitToHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitToHFile.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALFactory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALFactory.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALRootDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALRootDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -8250,19 +8250,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInstancePending.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestInstancePending.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKLeaderManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHQuorumPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKMainServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKMainServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKMulti.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKMulti.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKLeaderManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRecoverableZooKeeper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestRecoverableZooKeeper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
@@ -8270,24 +8270,24 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKMulti.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKMulti.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKUtilNoServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKUtilNoServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKUtilNoServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKUtilNoServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKMainServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKMainServer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHQuorumPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestInstancePending.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestInstancePending.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestZKNodeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKNodeTracker.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecoverableZooKeeper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestRecoverableZooKeeper.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKUtil.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 </li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClusterInterface.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClusterInterface.html
index 1c1a827..01ac2cf 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClusterInterface.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClusterInterface.html
@@ -138,11 +138,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseClusterInterface.html" title="class in org.apache.hadoop.hbase">HBaseClusterInterface</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestDDLMasterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestIngest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestIngest.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseClusterInterface.html" title="class in org.apache.hadoop.hbase">HBaseClusterInterface</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestIngest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestIngest.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestDDLMasterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseClusterInterface.html" title="class in org.apache.hadoop.hbase">HBaseClusterInterface</a></code></td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseCommonTestingUtil.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseCommonTestingUtil.html
index fc05f83..aac2c08 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseCommonTestingUtil.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseCommonTestingUtil.html
@@ -381,75 +381,75 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureNonce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureNonce.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureExecution.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureExecution.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureEvents.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureSuspended.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSuspended.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureMetrics.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureInMemoryChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureInMemoryChore.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureSkipPersistence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSkipPersistence.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestYieldProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureCleanup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureCleanup.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestChildProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestChildProcedures.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureBypass.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureReplayOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureReplayOrder.html#htu">htu</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureSuspended.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureSuspended.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureInMemoryChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureInMemoryChore.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureMetrics.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestYieldProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestProcedureExecutor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureExecutor.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestChildProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestChildProcedures.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureEvents.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureReplayOrder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureReplayOrder.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestStateMachineProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureNonce.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureNonce.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRemoteProcedureDispatcherUncaughtExceptionHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestRemoteProcedureDispatcherUncaughtExceptionHandler.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureRollbackAIOOB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRollbackAIOOB.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestForceUpdateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestForceUpdateProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestForceUpdateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestForceUpdateProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureRollbackAIOOB.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRollbackAIOOB.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -466,13 +466,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RegionProcedureStoreTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStoreTestBase.html#htu">htu</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionProcedureStoreMigration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/TestRegionProcedureStoreMigration.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RegionProcedureStoreTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStoreTestBase.html#htu">htu</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -489,11 +489,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStressWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestStressWALProcedureStore.html#htu">htu</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestWALProcedureStore.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestWALProcedureStore.html#htu">htu</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStressWALProcedureStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/procedure2/store/wal/TestStressWALProcedureStore.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseCommonTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseCommonTestingUtil</a></code></td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtil.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtil.html
index 6b91b6d..1e21064 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtil.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtil.html
@@ -367,11 +367,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPartialResultsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestPartialResultsFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestServerSideScanMetricsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerSideScanMetricsFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIOFencing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestIOFencing.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCachedClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCachedClusterId.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNamespace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNamespace.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPartialResultsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestPartialResultsFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -379,7 +387,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNamespace.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorDefaultVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestColumnFamilyDescriptorDefaultVersions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGlobalMemStoreSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestGlobalMemStoreSize.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIOFencing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestIOFencing.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -387,27 +403,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterPortAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClusterPortAssignment.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLocalHBaseCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestLocalHBaseCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGlobalMemStoreSize.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestGlobalMemStoreSize.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCachedClusterId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestCachedClusterId.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnFamilyDescriptorDefaultVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestColumnFamilyDescriptorDefaultVersions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerSideScanMetricsFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestServerSideScanMetricsFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClusterPortAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClusterPortAssignment.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -419,71 +419,31 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitMerge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSplitMerge.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseMetaEdit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseMetaEdit.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJMXConnectorServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestJMXConnectorServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptorForceCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestFSTableDescriptorForceCreation.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaUpdatesGoToPriorityQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaUpdatesGoToPriorityQueue.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableAccessor.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestClientClusterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientClusterMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNodeHealthCheckChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNodeHealthCheckChore.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMultiVersions.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionRebalancing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRegionRebalancing.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientOperationTimeout.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRegionMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestClientClusterStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientClusterStatus.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableLocator.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestInfoServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestInfoServers.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AcidGuaranteesTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/AcidGuaranteesTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJMXListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestJMXListener.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientOperationTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestClientOperationTimeout.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestJMXConnectorServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestJMXConnectorServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMovedRegionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMovedRegionCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionRebalancing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRegionRebalancing.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -491,7 +451,47 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMultiVersions.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetaUpdatesGoToPriorityQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaUpdatesGoToPriorityQueue.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestJMXListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestJMXListener.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMovedRegionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMovedRegionCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNodeHealthCheckChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestNodeHealthCheckChore.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseMetaEdit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestHBaseMetaEdit.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableAccessor.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitMerge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestSplitMerge.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestRegionMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestMetaTableLocator.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptorForceCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/TestFSTableDescriptorForceCreation.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AcidGuaranteesTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/AcidGuaranteesTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -624,52 +624,12 @@
 <td class="colLast"><span class="typeNameLabel">TestReplicaWithCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestReplicaWithCluster.html#HTU2">HTU2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPutWithDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutWithDelete.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncAdminBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestCITimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestCITimeout.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFlushFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide3.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDropTimeoutRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestDropTimeoutRequest.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FromClientSideBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/FromClientSideBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientScannerRPCTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannerTimeout.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestHbck.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeparateClientZKCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSeparateClientZKCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutate.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestScanCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestScanCursor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -677,167 +637,71 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPreadReversedScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPreadReversedScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncTableGetMultiThreaded.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableGetMultiThreaded.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncAdminBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncAdminBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeStatus.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionLocationCaching.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionLocationCaching.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultipleTimestamps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultipleTimestamps.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBufferedMutator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetaWithReplicasTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MetaWithReplicasTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncBufferMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncBufferMutator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestScanCursor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestScanCursor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSizeFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSizeFailures.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableNoncedRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableNoncedRetry.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaRegionLocationCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaRegionLocationCache.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAvoidCellReferencesIntoShippedBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAvoidCellReferencesIntoShippedBlocks.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCheckAndMutateWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutateWithByteBuff.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIllegalTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIllegalTableDescriptor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTimestampsFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetScanPartialResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanPartialResult.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatch.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIntraRowPagination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIntraRowPagination.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiRespectsLimits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiRespectsLimits.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableLocatePrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableLocatePrefetch.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocatorConcurrenyLimit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetaCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaCache.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncSingleRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncSingleRequestRpcRetryingCaller.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterRegistry.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableFavoredNodes.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionLocator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientTimeouts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientTimeouts.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUpdateConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestUpdateConfiguration.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestAsyncTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestAsyncTableScan.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerBusyException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestServerBusyException.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiActionMetricsFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiActionMetricsFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetScanColumnsWithNewVersionBehavior.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanColumnsWithNewVersionBehavior.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideScanExcpetion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideScanExcpetion.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResultSizeEstimation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultSizeEstimation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FromClientSideBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/FromClientSideBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnection.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncBufferMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncBufferMutator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCheckAndMutate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutate.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetScanPartialResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanPartialResult.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAvoidCellReferencesIntoShippedBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAvoidCellReferencesIntoShippedBlocks.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDropTimeoutRequest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestDropTimeoutRequest.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultipleTimestamps.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultipleTimestamps.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRawAsyncTablePartialScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTablePartialScan.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSeparateClientZKCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSeparateClientZKCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncMetaRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFailedMetaReplicaAssigment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFailedMetaReplicaAssigment.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestAsyncTableRegionReplicasRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestAsyncTableRegionReplicasRead.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CloneSnapshotFromClientTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -845,19 +709,67 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResultFromCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultFromCoprocessor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCheckAndMutateWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCheckAndMutateWithByteBuff.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEnableTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestEnableTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTimestampsFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTimestampsFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMutationGetCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMutationGetCellBuilder.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogReplicaLoadBalanceSimpleSelector.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestCatalogReplicaLoadBalanceSimpleSelector.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFlushFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFlushFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPreadReversedScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPreadReversedScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncSingleRequestRpcRetryingCaller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncSingleRequestRpcRetryingCaller.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAdminBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdminBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiRespectsLimits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiRespectsLimits.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestAsyncTableScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestAsyncTableScan.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIntraRowPagination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIntraRowPagination.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScannerCloseWhileSuspending.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScannerCloseWhileSuspending.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiActionMetricsFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMultiActionMetricsFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetaWithReplicasTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MetaWithReplicasTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotWithAclTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SnapshotWithAclTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RestoreSnapshotFromClientTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMasterRegistry.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -865,27 +777,107 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestUpdateConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestUpdateConfiguration.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResultFromCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultFromCoprocessor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHbck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestHbck.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRequestTooBigException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRequestTooBigException.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableLocatePrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableLocatePrefetch.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeAtTableLevel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeAtTableLevel.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestCITimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestCITimeout.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaRegionLocationCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaRegionLocationCache.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide3.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSideNoCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideNoCodec.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncNonMetaRegionLocatorConcurrenyLimit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocatorConcurrenyLimit.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBufferedMutator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestBufferedMutator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPutWithDelete.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestPutWithDelete.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIllegalTableDescriptor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestIllegalTableDescriptor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncRegionLocator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestZKConnectionRegistry.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResultSizeEstimation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestResultSizeEstimation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerBusyException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestServerBusyException.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMutationGetCellBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMutationGetCellBuilder.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMalformedCellFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMalformedCellFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideScanExcpetion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideScanExcpetion.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAppendFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAppendFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAdminBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAdminBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFailedMetaReplicaAssigment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFailedMetaReplicaAssigment.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSideNoCodec.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSideNoCodec.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeStatus.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CloneSnapshotFromClientTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientScannerRPCTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientScannerRPCTimeout.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestConnection.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableNoncedRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableNoncedRetry.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -893,39 +885,47 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannerTimeout.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannerTimeout.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKConnectionRegistry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestZKConnectionRegistry.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetScanColumnsWithNewVersionBehavior.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetScanColumnsWithNewVersionBehavior.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitOrMergeAtTableLevel.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSplitOrMergeAtTableLevel.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSizeFailures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSizeFailures.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionLocationCaching.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRegionLocationCaching.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncTableScanRenewLease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanRenewLease.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientTimeouts.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestClientTimeouts.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotWithAclTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/SnapshotWithAclTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestAsyncTableRegionReplicasRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestAsyncTableRegionReplicasRead.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawAsyncTablePartialScan.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTablePartialScan.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RestoreSnapshotFromClientTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAppendFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAppendFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableFavoredNodes.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScannerCloseWhileSuspending.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScannerCloseWhileSuspending.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatch.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEnableTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestEnableTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -941,75 +941,51 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanException.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetProcedureResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetProcedureResult.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">ClientPushbackTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ClientPushbackTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotFromClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableOperationException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableOperationException.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotMetadata.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotMetadata.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMvccConsistentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMvccConsistentScanner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessorNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaTableAccessorNoCluster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatchRetryImmediately.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatchRetryImmediately.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncClientPauseForCallQueueTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClientPauseForCallQueueTooBig.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotTemporaryDirectory.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAsyncTableRSCrashPublish.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableRSCrashPublish.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanWithoutFetchingData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableSnapshotScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableSnapshotScanner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableUseMetaReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableUseMetaReplicas.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotMetadata.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotMetadata.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAlwaysSetScannerId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAlwaysSetScannerId.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestRegionLocator.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestLimitedScanWithFilter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableBatchRetryImmediately.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableBatchRetryImmediately.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRawAsyncTableLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTableLimitedScanWithFilter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGetProcedureResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestGetProcedureResult.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableOperationException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestTableOperationException.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestInvalidMutationDurabilityException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestInvalidMutationDurabilityException.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMvccConsistentScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMvccConsistentScanner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ClientPushbackTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/ClientPushbackTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncClientPauseForCallQueueTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncClientPauseForCallQueueTooBig.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotTemporaryDirectory.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotTemporaryDirectory.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1017,19 +993,43 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotFromClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableUseMetaReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableUseMetaReplicas.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestLimitedScanWithFilter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScanWithoutFetchingData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableAccessorNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMetaTableAccessorNoCluster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanException.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotCloneIndependence.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSnapshotCloneIndependence.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInvalidMutationDurabilityException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestInvalidMutationDurabilityException.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAlwaysSetScannerId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAlwaysSetScannerId.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRawAsyncTableLimitedScanWithFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestRawAsyncTableLimitedScanWithFilter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestRegionLocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/AbstractTestRegionLocator.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncTableScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncTableScanMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1113,7 +1113,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterSplittingRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterSplittingRegions.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">CloneSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CloneSnapshotFromClientTestBase.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
@@ -1125,25 +1125,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterTruncate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterTruncate.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
-              org.apache.hadoop.hbase.TableName&nbsp;tableName,
-              long&nbsp;expectedRows)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientClone.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientClone.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
-              org.apache.hadoop.hbase.TableName&nbsp;tableName,
-              long&nbsp;expectedRows)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientSchemaChange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientSchemaChange.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientGetCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientGetCompactionState.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">RestoreSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RestoreSnapshotFromClientTestBase.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
@@ -1155,13 +1143,25 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">CloneSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/CloneSnapshotFromClientTestBase.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientGetCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientGetCompactionState.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">RestoreSnapshotFromClientTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/RestoreSnapshotFromClientTestBase.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterSplittingRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterSplittingRegions.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+              org.apache.hadoop.hbase.TableName&nbsp;tableName,
+              long&nbsp;expectedRows)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientClone.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientClone.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+              org.apache.hadoop.hbase.TableName&nbsp;tableName,
+              long&nbsp;expectedRows)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreSnapshotFromClientAfterTruncate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestMobRestoreSnapshotFromClientAfterTruncate.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
@@ -1186,11 +1186,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHttpProxyExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestHttpProxyExample.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAsyncClientExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestAsyncClientExample.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAsyncClientExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestAsyncClientExample.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHttpProxyExample.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/example/TestHttpProxyExample.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1252,27 +1252,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoreRegionServerCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreRegionServerCoprocessor.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCoprocessorSharedConnection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorSharedConnection.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNegativeMemStoreSizeWithSlowCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestNegativeMemStoreSizeWithSlowCoprocessor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerCoprocessorExceptionWithRemove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithRemove.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverStacking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverStacking.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCoreRegionServerCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoreRegionServerCoprocessor.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1284,19 +1268,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverForAddingMutationsFromCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverForAddingMutationsFromCoprocessors.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverBypass.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerCoprocessorExceptionWithRemove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithRemove.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementAndAppendWithNullResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementAndAppendWithNullResult.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverStacking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverStacking.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIncrementTimeRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementTimeRange.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNegativeMemStoreSizeWithSlowCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestNegativeMemStoreSizeWithSlowCoprocessor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1304,39 +1288,39 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementAndAppendWithNullResult.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementAndAppendWithNullResult.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIncrementTimeRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestIncrementTimeRange.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionObserverInterface.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPassCustomCellViaRegionObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPassCustomCellViaRegionObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverBypass.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverBypass.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverForAddingMutationsFromCoprocessors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverForAddingMutationsFromCoprocessors.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithAbort.CreateTableThread.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.CreateTableThread.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionObserverScannerOpenHook.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverScannerOpenHook.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenTableInCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestOpenTableInCoprocessor.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterObserverToModifyTableSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterObserverToModifyTableSchema.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPostIncrementAndAppendBeforeWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPostIncrementAndAppendBeforeWAL.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMetaTableMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPassCustomCellViaRegionObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPassCustomCellViaRegionObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1344,15 +1328,31 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMetaTableMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMetaTableMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorStop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorStop.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterCoprocessorExceptionWithAbort.CreateTableThread.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.CreateTableThread.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOpenTableInCoprocessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestOpenTableInCoprocessor.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionObserverScannerOpenHook.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestRegionObserverScannerOpenHook.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorStop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorStop.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestCoprocessorMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPostIncrementAndAppendBeforeWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/TestPostIncrementAndAppendBeforeWAL.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1385,15 +1385,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScanModifyingObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestScanModifyingObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestValueReplacingCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZooKeeperScanPolicyObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanModifyingObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestScanModifyingObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestValueReplacingCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1415,7 +1415,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQualifierFilterWithEmptyQualifier.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestQualifierFilterWithEmptyQualifier.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">FilterTestingCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterTestingCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1423,15 +1423,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestInvocationRecordFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestInvocationRecordFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFiltersWithBinaryComponentComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFiltersWithBinaryComponentComparator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnRangeFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestMultipleColumnPrefixFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1439,15 +1431,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFuzzyRowFilterEndToEnd.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowFilterEndToEnd.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestInvocationRecordFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestInvocationRecordFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnRangeFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterWrapper.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFilterFromRegionSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterFromRegionSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQualifierFilterWithEmptyQualifier.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestQualifierFilterWithEmptyQualifier.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFuzzyRowFilterEndToEnd.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowFilterEndToEnd.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1455,7 +1455,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFuzzyRowAndColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowAndColumnRangeFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1463,19 +1463,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnPrefixFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFuzzyRowAndColumnRangeFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFuzzyRowAndColumnRangeFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFilterFromRegionSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterFromRegionSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFiltersWithBinaryComponentComparator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFiltersWithBinaryComponentComparator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">FilterTestingCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/FilterTestingCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFilterWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestFilterWrapper.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultipleColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestMultipleColumnPrefixFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestColumnPrefixFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/TestColumnPrefixFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1497,11 +1497,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockReorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorder.html#htu">htu</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlockReorderBlockLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlockReorderBlockLocation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.html#htu">htu</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlockReorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/fs/TestBlockReorder.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1585,31 +1585,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowIndexV1DataEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestRowIndexV1DataEncoder.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileBlockIndex.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileEncryption.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCacheOnWrite.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestForceCacheImportantBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeekBeforeWithInlineBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekBeforeWithInlineBlocks.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1617,27 +1593,51 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSeekBeforeWithInlineBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekBeforeWithInlineBlocks.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSeekTo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekTo.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileReaderImpl.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestPrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestPrefetch.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHFileWriterV3WithDataEncoders.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3WithDataEncoders.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCacheOnWrite.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRowIndexV1DataEncoder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestRowIndexV1DataEncoder.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingKeyRange.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingKeyRange.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileReaderImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileReaderImpl.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReseekTo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestReseekTo.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestChecksum.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestChecksum.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFileBlockIndex.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerSelectionUsingTTL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileSeek.MyOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.MyOptions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1648,20 +1648,20 @@
 <td class="colLast"><span class="typeNameLabel">TestHFileWriterV3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileSeek.MyOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.MyOptions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestChecksum.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestChecksum.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPrefetch.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestPrefetch.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFileEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileEncryption.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLazyDataBlockDecompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLazyDataBlockDecompression.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestForceCacheImportantBlocks.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeekTo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekTo.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLazyDataBlockDecompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestLazyDataBlockDecompression.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1673,15 +1673,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFilePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFilePrettyPrinter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCombinedBlockCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileScannerImplReferenceCount.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileScannerImplReferenceCount.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFilePrettyPrinter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFilePrettyPrinter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCombinedBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestCombinedBlockCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHFileScannerImplReferenceCount.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileScannerImplReferenceCount.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -1745,11 +1745,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestMasterFifoRpcScheduler.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNettyRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyRpcServer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNettyRpcServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestNettyRpcServer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFifoRpcScheduler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/ipc/TestMasterFifoRpcScheduler.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1839,15 +1839,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableRecordReader.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSimpleTotalOrderPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSimpleTotalOrderPartitioner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCopyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCopyTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSyncTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1855,55 +1847,63 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRowCounter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCopyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCopyTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableRecordReader.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">MultiTableInputFormatTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/MultiTableInputFormatTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSyncTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALRecordReader.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHashTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHashTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithTTLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithTTLs.html#util">util</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableInputFormatScanBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableInputFormatScanBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithVisibilityLabels.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSimpleTotalOrderPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestSimpleTotalOrderPartitioner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithOperationAttributes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithOperationAttributes.html#util">util</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALRecordReader.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestWALRecordReader.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHFileOutputFormat2.html#util">util</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRowCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestRowCounter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestImportTsv.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTsv.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithOperationAttributes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithOperationAttributes.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithVisibilityLabels.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithTTLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithTTLs.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHFileOutputFormat2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHFileOutputFormat2.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMapReduceExamples.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMapReduceExamples.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportExport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportExport.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTimeRangeMapRed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTimeRangeMapRed.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -1915,24 +1915,24 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCellCounter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHRegionPartitioner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCellCounter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestCellCounter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMultithreadedTableMapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestMultithreadedTableMapper.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestImportExport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportExport.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TableSnapshotInputFormatTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionPartitioner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestHRegionPartitioner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimeRangeMapRed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTimeRangeMapRed.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -1953,7 +1953,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static org.apache.hadoop.util.Tool</code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithTTLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithTTLs.html#doMROnTableTest-org.apache.hadoop.hbase.HBaseTestingUtil-java.lang.String-java.lang.String-java.lang.String:A-int-">doMROnTableTest</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithVisibilityLabels.html#doMROnTableTest-org.apache.hadoop.hbase.HBaseTestingUtil-java.lang.String-java.lang.String-java.lang.String:A-int-">doMROnTableTest</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;data,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args,
@@ -1961,7 +1961,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static org.apache.hadoop.util.Tool</code></td>
-<td class="colLast"><span class="typeNameLabel">TestImportTSVWithVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithVisibilityLabels.html#doMROnTableTest-org.apache.hadoop.hbase.HBaseTestingUtil-java.lang.String-java.lang.String-java.lang.String:A-int-">doMROnTableTest</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">TestImportTSVWithTTLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestImportTSVWithTTLs.html#doMROnTableTest-org.apache.hadoop.hbase.HBaseTestingUtil-java.lang.String-java.lang.String-java.lang.String:A-int-">doMROnTableTest</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;data,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args,
@@ -2099,15 +2099,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterMetricsWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetricsWrapper.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterBalanceThrottling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterBalanceThrottling.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRollingRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRollingRestart.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterRepairMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterRepairMode.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestDLS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/AbstractTestDLS.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMaster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2115,59 +2115,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionPlacement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRollingRestart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRollingRestart.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetReplicationLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetReplicationLoad.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionPlacement2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitLogManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitLogManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitWALManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitWALManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMaster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterRepairMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterRepairMode.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestBalancer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterTransitions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterTransitions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterBalanceThrottling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterBalanceThrottling.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterOperationsForRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClientMetaServiceRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClientMetaServiceRPCs.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestDLS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/AbstractTestDLS.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2175,11 +2127,59 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestActiveMasterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestActiveMasterManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestClientMetaServiceRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestClientMetaServiceRPCs.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestBalancer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitLogManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitLogManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterTransitions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterTransitions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionPlacement2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitWALManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitWALManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestDeadServer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestActiveMasterManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestActiveMasterManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGetReplicationLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetReplicationLoad.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterOperationsForRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterOperationsForRegionReplicas.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterMetricsWrapper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetricsWrapper.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionPlacement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlacement.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2187,15 +2187,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHMasterRPCException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestHMasterRPCException.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGetInfoPort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetInfoPort.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetInfoPort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetInfoPort.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestGetLastFlushedSequenceId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetLastFlushedSequenceId.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetLastFlushedSequenceId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetLastFlushedSequenceId.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHMasterRPCException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestHMasterRPCException.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2203,80 +2203,80 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNewStartedRegionServerVersion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestNewStartedRegionServerVersion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFileSystemWithWALDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystemWithWALDir.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLoadProcedureError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestLoadProcedureError.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitRegionWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitRegionWhileRSCrash.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMigrateNamespaceTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMigrateNamespaceTable.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerCrashProcedureCarryingMetaStuck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestServerCrashProcedureCarryingMetaStuck.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestShutdownBackupMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestShutdownBackupMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAbortAndRSGotKilled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterAbortAndRSGotKilled.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMergeTableRegionsWhileRSCrash.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystem.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterChoreScheduled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterChoreScheduled.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShutdownWithNoRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestShutdownWithNoRegionServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMergeTableRegionsWhileRSCrash.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionPlansWithThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlansWithThrottle.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterHandlerFullWhenTransitRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterHandlerFullWhenTransitRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetaAssignmentWithStopMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetaAssignmentWithStopMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AbstractTestRestartCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/AbstractTestRestartCluster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAbortAndRSGotKilled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterAbortAndRSGotKilled.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestServerCrashProcedureStuck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestServerCrashProcedureStuck.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCloseAnOpeningRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestCloseAnOpeningRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNewStartedRegionServerVersion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestNewStartedRegionServerVersion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterHandlerFullWhenTransitRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterHandlerFullWhenTransitRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetaAssignmentWithStopMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMetaAssignmentWithStopMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMigrateNamespaceTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMigrateNamespaceTable.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionPlansWithThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionPlansWithThrottle.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterNotCarryTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterNotCarryTable.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitRegionWhileRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestSplitRegionWhileRSCrash.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestServerCrashProcedureCarryingMetaStuck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestServerCrashProcedureCarryingMetaStuck.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystem.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCloseAnOpeningRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestCloseAnOpeningRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestShutdownWithNoRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestShutdownWithNoRegionServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFileSystemWithWALDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterFileSystemWithWALDir.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -2322,23 +2322,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeadServerMetricRegionChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestDeadServerMetricRegionChore.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerBase.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerBase.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDeadServerMetricRegionChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestDeadServerMetricRegionChore.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSplitAndSeparateChildren.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionSplitAndSeparateChildren.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStates.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSplitTableRegionProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignRegionToUninitializedRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignRegionToUninitializedRegionServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestModifyTableWhileMerging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestModifyTableWhileMerging.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSCPGetRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSCPGetRegionsRace.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2346,99 +2346,99 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerUtil.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExceptionInAssignRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInAssignRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionAssignedToMultipleRegionServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionAssignedToMultipleRegionServers.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExceptionInUnassignedRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInUnassignedRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentOnRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentOnRSCrash.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitTableRegionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSplitTableRegionProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureBackoff.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndDTP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndDTP.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestTransitRegionStateProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerLoadMetaRegionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerLoadMetaRegionState.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAbortWhileMergingTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMasterAbortWhileMergingTable.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStates.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReportOnlineRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportOnlineRegionsRace.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureHang.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureHang.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMoveAndAbandon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionMoveAndAbandon.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExceptionInAssignRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInAssignRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionFromDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionFromDeadServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWakeUpUnexpectedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestWakeUpUnexpectedProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndTRSP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndTRSP.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMergeTableRegionsProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionRetry.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStateStore.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAssignRegionToUninitializedRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignRegionToUninitializedRegionServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionSplit.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRogueRSAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRogueRSAssignment.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTransitRegionStateProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestTransitRegionStateProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPGetRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestSCPGetRegionsRace.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRogueRSAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRogueRSAssignment.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestExceptionInUnassignedRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestExceptionInUnassignedRegion.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionAssignedToMultipleRegionServers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionAssignedToMultipleRegionServers.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestModifyTableWhileMerging.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestModifyTableWhileMerging.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndTRSP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndTRSP.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionStateStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionStateStore.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRaceBetweenSCPAndDTP.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRaceBetweenSCPAndDTP.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionFromDeadServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionFromDeadServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAbortWhileMergingTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMasterAbortWhileMergingTable.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentOnRSCrash.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentOnRSCrash.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSplitAndSeparateChildren.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionSplitAndSeparateChildren.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMergeTableRegionsProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestMergeTableRegionsProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerUtil.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReportOnlineRegionsRace.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportOnlineRegionsRace.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAssignmentManagerLoadMetaRegionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerLoadMetaRegionState.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMoveAndAbandon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionMoveAndAbandon.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReportRegionStateTransitionRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestReportRegionStateTransitionRetry.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestOpenRegionProcedureHang.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestOpenRegionProcedureHang.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWakeUpUnexpectedProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestWakeUpUnexpectedProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2535,7 +2535,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStochasticBalancerJmxMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticBalancerJmxMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFavoredNodeTableImport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredNodeTableImport.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2543,7 +2543,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFavoredNodeTableImport.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredNodeTableImport.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStochasticBalancerJmxMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestStochasticBalancerJmxMetrics.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2569,19 +2569,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogsCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReplicationHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestReplicationHFileCleaner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFromMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationBarrierCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestReplicationBarrierCleaner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLogsCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2589,8 +2581,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationBarrierCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestReplicationBarrierCleaner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestHFileCleaner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFromMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -2615,11 +2615,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorInMemoryStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorInMemoryStates.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCatalogJanitorInMemoryStates.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/janitor/TestCatalogJanitorInMemoryStates.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2651,11 +2651,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLockManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockManager.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLockProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestLockManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/locking/TestLockManager.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2695,23 +2695,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteColumnFamilyProcedureFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteColumnFamilyProcedureFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTableDescriptorModificationFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTableDescriptorModificationFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSplitWALProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSplitWALProcedure.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteColumnFamilyProcedureFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteColumnFamilyProcedureFromClient.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSCPBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPBase.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestServerRemoteProcedure.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestServerRemoteProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestServerRemoteProcedure.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSCPBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSCPBase.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2719,43 +2719,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterObserverPostCalls.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterObserverPostCalls.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestProcedureAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedureAdmin.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSafemodeBringsDownMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSafemodeBringsDownMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReopenTableRegionsProcedureInfiniteLoop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestReopenTableRegionsProcedureInfiniteLoop.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MasterProcedureSchedulerPerformanceEvaluation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureSchedulerPerformanceEvaluation.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedurePriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedurePriority.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteNamespaceProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSchedulerQueueDeadLock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSchedulerQueueDeadLock.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableDDLProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTableDDLProcedureBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterFailoverWithProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterFailoverWithProcedures.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIgnoreUnknownFamily.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestIgnoreUnknownFamily.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterProcedureEvents.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCreateTableProcedureMuitipleRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedureMuitipleRegions.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestIgnoreUnknownFamily.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestIgnoreUnknownFamily.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2763,11 +2739,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterProcedureEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterProcedureEvents.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteNamespaceProcedure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestDeleteNamespaceProcedure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MasterProcedureSchedulerPerformanceEvaluation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureSchedulerPerformanceEvaluation.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALProcedureStoreOnHDFS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestWALProcedureStoreOnHDFS.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSchedulerQueueDeadLock.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSchedulerQueueDeadLock.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCreateTableProcedureMuitipleRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestCreateTableProcedureMuitipleRegions.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2775,11 +2759,27 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALProcedureStoreOnHDFS.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestWALProcedureStoreOnHDFS.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTableDDLProcedureBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestTableDDLProcedureBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestProcedureAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedureAdmin.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterObserverPostCalls.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterObserverPostCalls.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSafemodeBringsDownMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestSafemodeBringsDownMaster.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterFailoverWithProcedures.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestMasterFailoverWithProcedures.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReopenTableRegionsProcedureInfiniteLoop.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestReopenTableRegionsProcedureInfiniteLoop.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestProcedurePriority.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/procedure/TestProcedurePriority.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2839,7 +2839,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTransitPeerSyncReplicationStateProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestTransitPeerSyncReplicationStateProcedureBackoff.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestModifyPeerProcedureRetryBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestModifyPeerProcedureRetryBackoff.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2847,7 +2847,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestModifyPeerProcedureRetryBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestModifyPeerProcedureRetryBackoff.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTransitPeerSyncReplicationStateProcedureBackoff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/replication/TestTransitPeerSyncReplicationStateProcedureBackoff.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2868,20 +2868,20 @@
 <td class="colLast"><span class="typeNameLabel">TestSnapshotHFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotHFileCleaner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotManager.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotFileCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTakeSnapshotHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestTakeSnapshotHandler.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotWhileRSCrashes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotWhileRSCrashes.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTakeSnapshotHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestTakeSnapshotHandler.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotFileCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/snapshot/TestSnapshotManager.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -2902,24 +2902,24 @@
 <td class="colLast"><span class="typeNameLabel">MobStressToolRunner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/MobStressToolRunner.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobCompactionWithDefaults.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionWithDefaults.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMobFileCleanerChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileCleanerChore.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobCompactionWithDefaults.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobCompactionWithDefaults.html#HTU">HTU</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestDefaultMobStoreFlusher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestDefaultMobStoreFlusher.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExpiredMobFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestExpiredMobFileCleaner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExpiredMobFileCleaner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestExpiredMobFileCleaner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -2927,28 +2927,28 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCachedMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestCachedMobFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobDataBlockEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobDataBlockEncoding.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMobStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobStoreCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCachedMobFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestCachedMobFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobWithByteBuffAllocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobWithByteBuffAllocator.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobDataBlockEncoding.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobDataBlockEncoding.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobWithByteBuffAllocator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobWithByteBuffAllocator.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMobFileCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobFileCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobStoreCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mob/TestMobStoreCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -2965,11 +2965,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamedQueueRecorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestNamedQueueRecorder.html#HBASE_TESTING_UTILITY">HBASE_TESTING_UTILITY</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSlowLogAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestSlowLogAccessor.html#HBASE_TESTING_UTILITY">HBASE_TESTING_UTILITY</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSlowLogAccessor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestSlowLogAccessor.html#HBASE_TESTING_UTILITY">HBASE_TESTING_UTILITY</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNamedQueueRecorder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/namequeues/TestNamedQueueRecorder.html#HBASE_TESTING_UTILITY">HBASE_TESTING_UTILITY</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -3048,51 +3048,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaIncrease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaIncrease.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnNonExistingTables.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnNonExistingTables.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSpaceQuotaBasicFunctioning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaBasicFunctioning.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithRegionReplicas.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreWithMiniCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreWithMiniCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaDropTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaDropTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnBulkLoad.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterScopeQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestClusterScopeQuotaThrottle.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaAdmin.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLowLatencySpaceQuotas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestFileArchiverNotifierImpl.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaRemoval.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaRemoval.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSnapshotQuotaObserverChore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreRegionReports.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreRegionReports.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSuperUserQuotaPermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3100,39 +3068,71 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnBulkLoad.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClusterScopeQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestClusterScopeQuotaThrottle.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSuperUserQuotaPermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaIncrease.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaIncrease.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaSwitchPolicies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaSwitchPolicies.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithRegionReplicas.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserver.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSnapshotQuotaObserverChore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaAdmin.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaAdmin.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestQuotaThrottle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaThrottle.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnNonExistingTables.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnNonExistingTables.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaSwitchPolicies.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaSwitchPolicies.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaDropTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaDropTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLowLatencySpaceQuotas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestQuotaTableUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaTableUtil.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithSnapshots.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithSnapshots.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaRemoval.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaRemoval.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestQuotaStatusRPCs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotasWithSnapshots.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotasWithSnapshots.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreWithMiniCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreWithMiniCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreRegionReports.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreRegionReports.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestFileArchiverNotifierImpl.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserver.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3234,164 +3234,44 @@
 <td class="colLast"><span class="typeNameLabel">TestMinVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinVersions.html#hbu">hbu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithModifyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithModifyTable.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestClearRegionBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClearRegionBlockCache.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithRestartScenarios.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithRestartScenarios.html#HTU">HTU</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicasAreDistributed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasAreDistributed.html#HTU">HTU</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicas.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionOpen.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionOpen.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerNoMaster.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowTooBig.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionReplicaFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicaFailover.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicasAreDistributed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasAreDistributed.html#HTU">HTU</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithModifyTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithModifyTable.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicasWithRestartScenarios.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithRestartScenarios.html#HTU">HTU</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRowTooBig.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowTooBig.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNotCleanupCompactedFileWhenRegionWarmup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNotCleanupCompactedFileWhenRegionWarmup.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerNoMaster.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionInterrupt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInterrupt.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionOpen.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionOpen.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecoveredEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEdits.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHMobStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHMobStore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkloadBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkloadBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerHostname.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerHostname.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionIncrement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionIncrement.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNewVersionBehaviorFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNewVersionBehaviorFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSeekOptimizations.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestJoinedScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestJoinedScanners.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerWithBulkload.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithBulkload.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerWithCorruptHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithCorruptHFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileInfo.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterAddressTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMasterAddressTracker.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMergeTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionMergeTransactionOnCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanWithBloomError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanWithBloomError.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestColumnSeeking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestColumnSeeking.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHStore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegion.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCacheOnWriteInSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreFileScannerWithTagCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileScannerWithTagCompression.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionFileSystem.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDeleteMobTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDeleteMobTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFailedAppendAndSync.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFailedAppendAndSync.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALLockup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALLockup.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlocksRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksRead.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoveRegionMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRemoveRegionMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionReplayEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionRandomKeying.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionRandomKeying.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionWithByteBuff.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRowPrefixBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowPrefixBloomFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3399,6 +3279,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStripeStoreFileManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionMove.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWalAndCompactingMemStoreFlush.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWalAndCompactingMemStoreFlush.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -3407,19 +3295,67 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiColumnScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBlocksScanned.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksScanned.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionReplayEvents.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionInterrupt.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionInterrupt.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreFileScannerWithTagCompression.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileScannerWithTagCompression.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNotCleanupCompactedFileWhenRegionWarmup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNotCleanupCompactedFileWhenRegionWarmup.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionWithByteBuff.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionWithByteBuff.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCacheOnWriteInSchema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRemoveRegionMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRemoveRegionMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLogRoller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestLogRoller.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNewVersionBehaviorFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestNewVersionBehaviorFromClientSide.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALMonotonicallyIncreasingSeqId.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALMonotonicallyIncreasingSeqId.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLogRoller.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestLogRoller.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBlocksRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksRead.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionState.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionFavoredNodes.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreScannerClosure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScannerClosure.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHStoreFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3427,51 +3363,27 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionFavoredNodes.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionFavoredNodes.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStoreFileInfo.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileInfo.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHRegionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionDisabled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionDisabled.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionPolicy.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreFileRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileRefresherChore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRecoveredEditsReplayAndAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEditsReplayAndAbort.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileAfterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileAfterFailover.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestJoinedScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestJoinedScanners.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHdfsSnapshotHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHdfsSnapshotHRegion.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRowPrefixBloomFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRowPrefixBloomFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestIsDeleteFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestIsDeleteFailure.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSettingTimeoutOnBlockingPoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSettingTimeoutOnBlockingPoint.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAtomicOperation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestAtomicOperation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionKeyRotation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionKeyRotation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRecoveredEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEdits.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3482,28 +3394,76 @@
 <td class="colLast"><span class="typeNameLabel">TestScannerRPCScanMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRPCScanMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReversibleScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestReversibleScanners.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreFileRefresherChore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreFileRefresherChore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEncryptionDisabled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionDisabled.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannerHeartbeatMessages.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerHeartbeatMessages.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAtomicOperation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestAtomicOperation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerWithCorruptHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithCorruptHFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDataBlockEncodingTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDataBlockEncodingTool.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBulkloadBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBulkloadBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiColumnScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiColumnScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestEndToEndSplitTransaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEndToEndSplitTransaction.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBlocksScanned.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestBlocksScanned.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestTimestampFilterSeekHint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestTimestampFilterSeekHint.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMove.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionMove.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDeleteMobTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDeleteMobTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMergeTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionMergeTransactionOnCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScanWithBloomError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScanWithBloomError.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSettingTimeoutOnBlockingPoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSettingTimeoutOnBlockingPoint.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerWithBulkload.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerWithBulkload.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerReadRequestMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSeekOptimizations.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileAfterFailover.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileAfterFailover.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3511,19 +3471,59 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTimestampFilterSeekHint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestTimestampFilterSeekHint.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHRegionFileSystem.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionFileSystem.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStripeStoreFileManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStripeStoreFileManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRecoveredEditsReplayAndAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRecoveredEditsReplayAndAbort.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHdfsSnapshotHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHdfsSnapshotHRegion.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionState.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionState.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStoreScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScanner.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHStore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReversibleScanners.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestReversibleScanners.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestIsDeleteFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestIsDeleteFailure.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionKeyRotation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionKeyRotation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHRegion.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegion.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHMobStore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHMobStore.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestColumnSeeking.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestColumnSeeking.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupMetaWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupMetaWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionIncrement.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionIncrement.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterAddressTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMasterAddressTracker.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestEncryptionRandomKeying.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEncryptionRandomKeying.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3534,33 +3534,33 @@
 <td class="colLast"><span class="typeNameLabel">TestCompactSplitThread.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactSplitThread.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerReadRequestMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerHostname.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerHostname.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHStoreFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHStoreFile.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDataBlockEncodingTool.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestDataBlockEncodingTool.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerHeartbeatMessages.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerHeartbeatMessages.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALLockup.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWALLockup.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestEndToEndSplitTransaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestEndToEndSplitTransaction.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFailedAppendAndSync.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFailedAppendAndSync.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupMetaWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupMetaWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestStoreScannerClosure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestStoreScannerClosure.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.html#TESTING_UTIL">TESTING_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMutateRowsRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMutateRowsRecovery.html#TESTING_UTIL">TESTING_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.html#TESTING_UTIL">TESTING_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">EncodedSeekPerformanceTest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/EncodedSeekPerformanceTest.html#testingUtility">testingUtility</a></span></code>&nbsp;</td>
@@ -3571,7 +3571,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerReportForDuty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReportForDuty.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionArchiveConcurrentClose.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionArchiveConcurrentClose.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3579,23 +3579,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitWalDataLoss.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitWalDataLoss.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerReportForDuty.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReportForDuty.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSecureBulkLoadManager.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSplitWalDataLoss.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitWalDataLoss.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionArchiveConcurrentClose.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionArchiveConcurrentClose.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSecureBulkLoadManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSecureBulkLoadManager.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCompactionArchiveIOException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionArchiveIOException.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionFileNotFound.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionFileNotFound.html#util">util</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFSErrorsExposed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFSErrorsExposed.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3603,11 +3603,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileOnRegionClose.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileOnRegionClose.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionFileNotFound.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionFileNotFound.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSErrorsExposed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFSErrorsExposed.html#util">util</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCleanupCompactedFileOnRegionClose.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCleanupCompactedFileOnRegionClose.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3615,7 +3615,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSChoresScheduled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSChoresScheduled.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSwitchToStreamRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSwitchToStreamRead.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3623,75 +3623,75 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWideScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWideScanner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMinorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinorCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMajorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMajorCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactorMemLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactorMemLeak.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetClosestAtOrBefore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestGetClosestAtOrBefore.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerRetriableFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRetriableFailure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerCrashDisableWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerCrashDisableWAL.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPriorityRpc.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestPriorityRpc.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestShutdownWhileWALBroken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestShutdownWhileWALBroken.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionInDeadRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionInDeadRegionServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFlushLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFlushLifeCycleTracker.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRSChoresScheduled.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRSChoresScheduled.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHRegionTracing.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionTracing.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactorMemLeak.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactorMemLeak.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFlushLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestFlushLifeCycleTracker.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionLifeCycleTracker.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHRegionServerBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRequestsPerSecondMetric.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRequestsPerSecondMetric.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPriorityRpc.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestPriorityRpc.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactionLifeCycleTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionLifeCycleTracker.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRequestsPerSecondMetric.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRequestsPerSecondMetric.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSwitchToStreamRead.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSwitchToStreamRead.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannerRetriableFailure.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestScannerRetriableFailure.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestShutdownWhileWALBroken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestShutdownWhileWALBroken.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMinorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMinorCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWideScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestWideScanner.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerCrashDisableWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerCrashDisableWAL.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactionInDeadRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionInDeadRegionServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMajorCompaction.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMajorCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetClosestAtOrBefore.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestGetClosestAtOrBefore.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3804,13 +3804,13 @@
 <td class="colLast"><span class="typeNameLabel">TestFIFOCompactionPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestFIFOCompactionPolicy.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCompactedHFilesDischarger.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestCompactedHFilesDischarger.html#testUtil">testUtil</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestOffPeakHours.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestOffPeakHours.html#testUtil">testUtil</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCompactedHFilesDischarger.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/compactions/TestCompactedHFilesDischarger.html#testUtil">testUtil</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -3848,20 +3848,36 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALActionsListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALActionsListener.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestFSWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestProtobufLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestProtobufLog.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestLogRollPeriod.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestLogRollPeriod.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestLogRolling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestLogRolling.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLogRollingNoCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollingNoCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestFSWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestFSWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WALDurabilityTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALDurabilityTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALConfiguration.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALActionsListener.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALActionsListener.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3869,35 +3885,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestLogRolling.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestLogRolling.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestWALReplay.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALDurabilityTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALDurabilityTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">AbstractTestProtobufLog.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestProtobufLog.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestWALConfiguration.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestLogRollAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestLogRollAbort.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractTestLogRollPeriod.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/AbstractTestLogRollPeriod.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseWalOnEC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestHBaseWalOnEC.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCombinedAsyncWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCombinedAsyncWriter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCombinedAsyncWriter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestCombinedAsyncWriter.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseWalOnEC.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/TestHBaseWalOnEC.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -3927,11 +3927,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVerifyCellsReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestVerifyCellsReplicationEndpoint.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationProcedureRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationProcedureRetry.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationProcedureRetry.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationProcedureRetry.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVerifyCellsReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestVerifyCellsReplicationEndpoint.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3943,11 +3943,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationTestBase.html#UTIL1">UTIL1</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationBase.html#UTIL1">UTIL1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationBase.html#UTIL1">UTIL1</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationTestBase.html#UTIL1">UTIL1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3959,11 +3959,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SyncReplicationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationTestBase.html#UTIL2">UTIL2</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationBase.html#UTIL2">UTIL2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationBase.html#UTIL2">UTIL2</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SyncReplicationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/SyncReplicationTestBase.html#UTIL2">UTIL2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -3974,68 +3974,68 @@
 <td class="colLast"><span class="typeNameLabel">TestMasterReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMasterReplication.html#utilities">utilities</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#utility1">utility1</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#utility1">utility1</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWithTags.html#utility1">utility1</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDroppedTable.html#utility1">utility1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDeletedTableCFs.html#utility1">utility1</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDroppedTable.html#utility1">utility1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDeletedTableCFs.html#utility1">utility1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDroppedTable.html#utility1">utility1</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWithTags.html#utility1">utility1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDroppedTable.html#utility1">utility1</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#utility1">utility1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#utility2">utility2</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#utility2">utility2</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWithTags.html#utility2">utility2</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#utility1">utility1</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDeletedTableCFs.html#utility2">utility2</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDeletedTableCFs.html#utility1">utility1</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDroppedTable.html#utility2">utility2</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDroppedTable.html#utility2">utility2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDeletedTableCFs.html#utility2">utility2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationEditsDroppedWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationEditsDroppedWithDroppedTable.html#utility2">utility2</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationWithTags.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationWithTags.html#utility2">utility2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDroppedTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDroppedTable.html#utility2">utility2</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#utility2">utility2</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#utility3">utility3</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#utility2">utility2</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationStuckWithDeletedTableCFs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestReplicationStuckWithDeletedTableCFs.html#utility2">utility2</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#utility3">utility3</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#utility3">utility3</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestPerTableCFReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestPerTableCFReplication.html#utility3">utility3</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4070,13 +4070,13 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#rollWALAndWait-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-byte:A-">rollWALAndWait</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;utility,
+<td class="colLast"><span class="typeNameLabel">TestMasterReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMasterReplication.html#rollWALAndWait-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-byte:A-">rollWALAndWait</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;utility,
               org.apache.hadoop.hbase.TableName&nbsp;table,
               byte[]&nbsp;row)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMasterReplication.html#rollWALAndWait-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-byte:A-">rollWALAndWait</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;utility,
+<td class="colLast"><span class="typeNameLabel">TestMultiSlaveReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.html#rollWALAndWait-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-byte:A-">rollWALAndWait</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;utility,
               org.apache.hadoop.hbase.TableName&nbsp;table,
               byte[]&nbsp;row)</code>&nbsp;</td>
 </tr>
@@ -4184,36 +4184,36 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.html#HTU">HTU</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetaRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.html#HTU">HTU</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionReplicaReplicationEndpointNoMaster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpointNoMaster.html#HTU">HTU</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALEntryStreamTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStreamTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReplicationSink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSink.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WALEntryStreamTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStreamTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestReplicationSource.html#TEST_UTIL_PEER">TEST_UTIL_PEER</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseInterClusterReplicationEndpointFilterEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestHBaseInterClusterReplicationEndpointFilterEdits.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRaceWhenCreatingReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRaceWhenCreatingReplicationSource.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4221,11 +4221,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSerialReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSerialReplicationEndpoint.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseInterClusterReplicationEndpointFilterEdits.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestHBaseInterClusterReplicationEndpointFilterEdits.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceWhenCreatingReplicationSource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestRaceWhenCreatingReplicationSource.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSerialReplicationEndpoint.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/replication/regionserver/TestSerialReplicationEndpoint.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4269,47 +4269,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGzipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGzipFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersWithFilters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannersWithFilters.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestMultiRowResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecurityHeadersFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecurityHeadersFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannerResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRESTServerSSL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestRESTServerSSL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureRESTServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecureRESTServer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResourceFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestResourceFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespacesInstanceResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestNamespacesInstanceResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestTableResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowResourceBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/RowResourceBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVersionResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestVersionResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4317,15 +4277,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestStatusResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestStatusResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecurityHeadersFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecurityHeadersFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVersionResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestVersionResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestNamespacesInstanceResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestNamespacesInstanceResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestNamespacesResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestNamespacesResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRESTServerSSL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestRESTServerSSL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4333,8 +4293,48 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestStatusResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestStatusResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestTableResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannerResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResourceFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestResourceFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSchemaResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSchemaResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestNamespacesResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestNamespacesResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestMultiRowResource.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSecureRESTServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestSecureRESTServer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestScannersWithFilters.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestScannersWithFilters.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGzipFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/TestGzipFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResourceBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/RowResourceBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -4351,15 +4351,15 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteHTableRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteHTableRetries.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteAdminRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteAdminRetries.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteHTableRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteHTableRetries.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteTable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteAdminRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteAdminRetries.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -4376,12 +4376,12 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsOfflineMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4389,7 +4389,7 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRSGroupsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRSGroupsOfflineMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4433,27 +4433,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellACLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessControlFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessControlFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellACLWithMultipleVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSnapshotScannerHDFSAclController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestSnapshotScannerHDFSAclController2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestUnloadAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestUnloadAccessController.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAccessController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4461,15 +4445,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAccessControlFilter.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessControlFilter.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScanEarlyTermination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanEarlyTermination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestUnloadAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestUnloadAccessController.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestAccessController.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4481,11 +4473,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorWhitelistMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellACLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKPermissionWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestZKPermissionWatcher.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellACLWithMultipleVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -4495,6 +4487,14 @@
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTablePermissions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestTablePermissions.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorWhitelistMasterObserver.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestZKPermissionWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestZKPermissionWatcher.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
@@ -4899,6 +4899,14 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestZKSecretWatcherRefreshKeys.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestZKSecretWatcherRefreshKeys.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SecureTestCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/SecureTestCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestTokenAuthentication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestTokenAuthentication.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -4907,14 +4915,6 @@
 <td class="colLast"><span class="typeNameLabel">TestTokenAuthentication.TokenServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestTokenAuthentication.TokenServer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SecureTestCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/SecureTestCluster.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKSecretWatcherRefreshKeys.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestZKSecretWatcherRefreshKeys.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestZKSecretWatcher.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/token/TestZKSecretWatcher.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -4945,29 +4945,37 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsOpWithDifferentUsersNoACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsOpWithDifferentUsersNoACL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestVisibilityLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabels.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestVisibilityWithCheckAuths.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityWithCheckAuths.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDefaultScanLabelGeneratorStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestDefaultScanLabelGeneratorStack.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">VisibilityLabelsWithDeletesTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsWithDeletesTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithSLGStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithSLGStack.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithACL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsOpWithDifferentUsersNoACL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsOpWithDifferentUsersNoACL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsReplication.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">VisibilityLabelsWithDeletesTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/VisibilityLabelsWithDeletesTestBase.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestEnforcingScanLabelGenerator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestEnforcingScanLabelGenerator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
@@ -4977,16 +4985,8 @@
 <td class="colLast"><span class="typeNameLabel">TestVisibilityLablesWithGroups.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLablesWithGroups.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWithDisabledAuthorization.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsWithSLGStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithSLGStack.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVisibilityLabelsReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsReplication.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestDefaultScanLabelGeneratorStack.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/visibility/TestDefaultScanLabelGeneratorStack.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -5008,11 +5008,19 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshotAdjunct.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotAdjunct.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshot.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshot.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshotAdjunct.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshotAdjunct.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotHelper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreSnapshotHelper.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotClientRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotClientRetries.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -5020,31 +5028,23 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSnapshotTask.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotWhenChoreCleaning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotWhenChoreCleaning.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotClientRetries.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotClientRetries.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSnapshotTask.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreSnapshotHelper.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreSnapshotHelper.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotWhenChoreCleaning.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotWhenChoreCleaning.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotDescriptionUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotDescriptionUtils.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestFlushSnapshotFromClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotDescriptionUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestSnapshotDescriptionUtils.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -5172,7 +5172,19 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobFlushSnapshotFromClient.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">TestRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+              org.apache.hadoop.hbase.TableName&nbsp;tableName,
+              long&nbsp;expectedRows)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><span class="typeNameLabel">TestMobRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobRestoreFlushSnapshotFromClient.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+              org.apache.hadoop.hbase.TableName&nbsp;tableName,
+              long&nbsp;expectedRows)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">SnapshotTestingUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
@@ -5184,19 +5196,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
-              org.apache.hadoop.hbase.TableName&nbsp;tableName,
-              long&nbsp;expectedRows)</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static void</code></td>
-<td class="colLast"><span class="typeNameLabel">SnapshotTestingUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
-              org.apache.hadoop.hbase.TableName&nbsp;tableName,
-              long&nbsp;expectedRows)</code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobRestoreFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobRestoreFlushSnapshotFromClient.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
+<td class="colLast"><span class="typeNameLabel">TestMobFlushSnapshotFromClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/snapshot/TestMobFlushSnapshotFromClient.html#verifyRowCount-org.apache.hadoop.hbase.HBaseTestingUtil-org.apache.hadoop.hbase.TableName-long-">verifyRowCount</a></span>(<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a>&nbsp;util,
               org.apache.hadoop.hbase.TableName&nbsp;tableName,
               long&nbsp;expectedRows)</code>&nbsp;</td>
 </tr>
@@ -5233,11 +5233,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestCallQueue.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestCallQueue.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift/TestThriftServer.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5259,15 +5259,15 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithLabels.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandler.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithReadOnly.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithReadOnly.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithReadOnly.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithReadOnly.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftHBaseServiceHandlerWithLabels.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandlerWithLabels.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5289,11 +5289,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkLoadHFilesSplitRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestBulkLoadHFilesSplitRecovery.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBulkLoadHFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestBulkLoadHFiles.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBulkLoadHFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestBulkLoadHFiles.html#util">util</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBulkLoadHFilesSplitRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/tool/TestBulkLoadHFilesSplitRecovery.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5356,34 +5356,18 @@
 <td class="colLast"><span class="typeNameLabel">TestFSUtils.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSUtils.html#htu">htu</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestCoprocessorScanPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCoprocessorScanPolicy.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionSplitCalculator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionSplitCalculator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMover1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover1.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMover2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadSequential.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadSequential.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionMover3.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover3.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">BaseTestHBaseFsck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/BaseTestHBaseFsck.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCoprocessorScanPolicy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestCoprocessorScanPolicy.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionMoverWithRSGroupEnable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMoverWithRSGroupEnable.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -5392,6 +5376,22 @@
 <td class="colLast"><span class="typeNameLabel">TestHBaseFsckEncryption.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckEncryption.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMiniClusterLoadSequential.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestMiniClusterLoadSequential.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMover1.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover1.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BaseTestHBaseFsck.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/BaseTestHBaseFsck.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMover2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestRegionMover2.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFSVisitor.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSVisitor.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -5401,7 +5401,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseFsckCleanReplicationBarriers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckCleanReplicationBarriers.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestConnectionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConnectionCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -5409,15 +5409,15 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHBaseFsckReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckReplication.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseFsckCleanReplicationBarriers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckCleanReplicationBarriers.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSTableDescriptors.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHBaseFsckReplication.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestHBaseFsckReplication.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestConnectionCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestConnectionCache.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFSTableDescriptors.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/util/TestFSTableDescriptors.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -5483,32 +5483,16 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitWithDeletedTableData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitWithDeletedTableData.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALRootDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALRootDir.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALFiltering.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALFiltering.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALOpenAfterDNRollingStart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALOpenAfterDNRollingStart.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestCompressedWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestCompressedWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALPerformanceEvaluation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSecureWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFSHLogProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogProvider.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALSplit.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
@@ -5519,11 +5503,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestDisabledWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestDisabledWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSecureWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALReaderOnSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALReaderOnSecureWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitWithDeletedTableData.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitWithDeletedTableData.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
@@ -5531,31 +5515,47 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALRootDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALRootDir.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFSHLogProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestFSHLogProvider.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WALPerformanceEvaluation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALOpenAfterDNRollingStart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALOpenAfterDNRollingStart.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestDisabledWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestDisabledWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALReaderOnSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALReaderOnSecureWAL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWALMethods.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALMethods.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">WALCorruptionDueToDanglingByteBufferTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALCorruptionDueToDanglingByteBufferTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitToHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitToHFile.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestWrongMetaWALFileName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSyncReplicationWALProvider.html#UTIL">UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">WALCorruptionWithMultiPutDueToDanglingByteBufferTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALCorruptionWithMultiPutDueToDanglingByteBufferTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">WALCorruptionDueToDanglingByteBufferTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/WALCorruptionDueToDanglingByteBufferTestBase.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
-<td class="colFirst"><code>(package private) static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitToHFile.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitToHFile.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSyncReplicationWALProvider.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseZKTestingUtil.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseZKTestingUtil.html
index a5a30ad..f5bd67d 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseZKTestingUtil.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseZKTestingUtil.html
@@ -183,19 +183,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestHQuorumPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestZKLeaderManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKMulti.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKMulti.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestZKNodeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKNodeTracker.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestZKMulti.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKMulti.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
@@ -203,12 +195,20 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReadOnlyZKClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestHQuorumPeer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestZKNodeTracker.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKNodeTracker.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestZKUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKUtil.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtil</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestReadOnlyZKClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/IntegrationTestingUtility.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/IntegrationTestingUtility.html
index 0c135d8..97bb7ae 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/IntegrationTestingUtility.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/IntegrationTestingUtility.html
@@ -143,17 +143,9 @@
 <td class="colLast"><span class="typeNameLabel">StripeCompactionsPerformanceEvaluation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/StripeCompactionsPerformanceEvaluation.html#util">util</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestLazyCfLoading.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestLazyCfLoading.html#util">util</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">IntegrationTestIngest.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestIngest.html#util">util</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestBase.html#util">util</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">IntegrationTestMetaReplicas.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestMetaReplicas.html#util">util</a></span></code>
@@ -161,6 +153,14 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestBase.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestLazyCfLoading.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestLazyCfLoading.html#util">util</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">IntegrationTestManyRegions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/IntegrationTestManyRegions.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -367,13 +367,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">IntegrationTestTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/IntegrationTestTableSnapshotInputFormat.html#util">util</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>protected static <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">IntegrationTestImportTsv.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/IntegrationTestImportTsv.html#util">util</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">IntegrationTestTableSnapshotInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/IntegrationTestTableSnapshotInputFormat.html#util">util</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/IntegrationTestingUtility.html" title="class in org.apache.hadoop.hbase">IntegrationTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">IntegrationTestTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/IntegrationTestTableMapReduceUtil.html#util">util</a></span></code>&nbsp;</td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/SingleProcessHBaseCluster.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/SingleProcessHBaseCluster.html
index bd16aba..bc14bcd 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/SingleProcessHBaseCluster.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/SingleProcessHBaseCluster.html
@@ -488,16 +488,16 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGetReplicationLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetReplicationLoad.html#cluster">cluster</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRegionsRecoveryConfigManager.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestRegionsRecoveryConfigManager.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGetReplicationLoad.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestGetReplicationLoad.html#cluster">cluster</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestAssignmentManagerMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.html#CLUSTER">CLUSTER</a></span></code>&nbsp;</td>
@@ -559,13 +559,13 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionMoveAndAbandon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionMoveAndAbandon.html#cluster">cluster</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestRogueRSAssignment.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRogueRSAssignment.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestRegionMoveAndAbandon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/assignment/TestRegionMoveAndAbandon.html#cluster">cluster</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -581,16 +581,16 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticBalancerPickers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticBalancerPickers.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestBalancerStatusTagInJMXMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerStatusTagInJMXMetrics.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticLoadBalancer.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticBalancerPickers.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticBalancerPickers.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBalancerStatusTagInJMXMetrics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestBalancerStatusTagInJMXMetrics.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFavoredStochasticLoadBalancer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/master/balancer/TestFavoredStochasticLoadBalancer.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -608,11 +608,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">SpaceQuotaHelperForTests.NoFilesToDischarge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.NoFilesToDischarge.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionSizeUse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeUse.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionSizeUse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/TestRegionSizeUse.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">SpaceQuotaHelperForTests.NoFilesToDischarge.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.NoFilesToDischarge.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -642,11 +642,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRegionServerAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAbort.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClearRegionBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClearRegionBlockCache.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClearRegionBlockCache.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestClearRegionBlockCache.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRegionServerAbort.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerAbort.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
@@ -658,11 +658,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSplitTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMutateRowsRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMutateRowsRecovery.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../org/apache/hadoop/hbase/SingleProcessHBaseCluster.html" title="class in org.apache.hadoop.hbase">SingleProcessHBaseCluster</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMutateRowsRecovery.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMutateRowsRecovery.html#cluster">cluster</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSplitTransactionOnCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.html#cluster">cluster</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/TableNameTestRule.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/TableNameTestRule.html
index 50c217b..2b4087f 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/TableNameTestRule.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/TableNameTestRule.html
@@ -136,16 +136,8 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFromClientSide5.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide5.html#name">name</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSeparateClientZKCluster.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestSeparateClientZKCluster.html#name">name</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">MetaWithReplicasTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MetaWithReplicasTestBase.html#name">name</a></span></code>&nbsp;</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestScannersFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestScannersFromClientSide.html#name">name</a></span></code>&nbsp;</td>
@@ -156,6 +148,14 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestFromClientSide5.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide5.html#name">name</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">MetaWithReplicasTestBase.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/MetaWithReplicasTestBase.html#name">name</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestFromClientSide.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestFromClientSide.html#name">name</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
@@ -284,11 +284,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellACLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html#testTable">testTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestAccessController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html#testTable">testTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCellACLWithMultipleVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html#testTable">testTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScanEarlyTermination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html#testTable">testTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
@@ -296,11 +296,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestAccessController2.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html#testTable">testTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellACLs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html#testTable">testTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/TableNameTestRule.html" title="class in org.apache.hadoop.hbase">TableNameTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScanEarlyTermination.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html#testTable">testTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCellACLWithMultipleVersions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html#testTable">testTable</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html b/testdevapidocs/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html
index e717e74..b52a2a7 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":9,"i5":10,"i6":9,"i7":9,"i8":9,"i9":9,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":9,"i5":10,"i6":9,"i7":9,"i8":9,"i9":10,"i10":9,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -134,27 +134,19 @@
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static org.apache.hadoop.hbase.client.AsyncConnectionImpl</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#CONN">CONN</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private org.apache.hadoop.hbase.client.AsyncConnectionImpl</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#conn">conn</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#FAMILY">FAMILY</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static org.apache.hadoop.hbase.client.AsyncNonMetaRegionLocator</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#LOCATOR">LOCATOR</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private org.apache.hadoop.hbase.client.AsyncNonMetaRegionLocator</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#locator">locator</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#LOG">LOG</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#META_STOREFILE_REFRESH_PERIOD">META_STOREFILE_REFRESH_PERIOD</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private org.apache.hadoop.hbase.client.CatalogReplicaMode</code></td>
+<td class="colFirst"><code>org.apache.hadoop.hbase.client.CatalogReplicaMode</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#metaReplicaMode">metaReplicaMode</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -163,21 +155,17 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#numOfMetaReplica">numOfMetaReplica</a></span></code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#NUM_OF_META_REPLICA">NUM_OF_META_REPLICA</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static org.apache.hadoop.hbase.client.ConnectionRegistry</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#registry">registry</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private static byte[][]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#SPLIT_KEYS">SPLIT_KEYS</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.TableName</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TABLE_NAME">TABLE_NAME</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -196,7 +184,7 @@
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TestAsyncNonMetaRegionLocator-java.lang.String-">TestAsyncNonMetaRegionLocator</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clientMetaReplicaMode)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#TestAsyncNonMetaRegionLocator--">TestAsyncNonMetaRegionLocator</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -256,58 +244,62 @@
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#setUp--">setUp</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i9" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#setUpBeforeTest--">setUpBeforeTest</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#tearDown--">tearDown</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#tearDownAfterTest--">tearDownAfterTest</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testConcurrentLocate--">testConcurrentLocate</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testConcurrentUpdateCachedLocationOnError--">testConcurrentUpdateCachedLocationOnError</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i14" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testDisableTable--">testDisableTable</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testLocateAfter--">testLocateAfter</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testLocateBeforeInOnlyRegion--">testLocateBeforeInOnlyRegion</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testLocateBeforeLastRegion--">testLocateBeforeLastRegion</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testMultiRegionTable--">testMultiRegionTable</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testNoTable--">testNoTable</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testRegionMove--">testRegionMove</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testRegionReplicas--">testRegionReplicas</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i21" class="rowColor">
+<tr id="i22" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testReload--">testReload</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i23" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#testSingleRegionTable--">testSingleRegionTable</a></span>()</code>&nbsp;</td>
 </tr>
@@ -342,22 +334,13 @@
 <pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.72">CLASS_RULE</a></pre>
 </li>
 </ul>
-<a name="LOG">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>LOG</h4>
-<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.75">LOG</a></pre>
-</li>
-</ul>
 <a name="TEST_UTIL">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>TEST_UTIL</h4>
-<pre>private static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.77">TEST_UTIL</a></pre>
+<pre>private static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.75">TEST_UTIL</a></pre>
 </li>
 </ul>
 <a name="TABLE_NAME">
@@ -366,7 +349,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>TABLE_NAME</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.TableName <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.79">TABLE_NAME</a></pre>
+<pre>private static final&nbsp;org.apache.hadoop.hbase.TableName <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.77">TABLE_NAME</a></pre>
 </li>
 </ul>
 <a name="FAMILY">
@@ -375,20 +358,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>FAMILY</h4>
-<pre>private static&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.81">FAMILY</a></pre>
-</li>
-</ul>
-<a name="META_STOREFILE_REFRESH_PERIOD">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>META_STOREFILE_REFRESH_PERIOD</h4>
-<pre>private static final&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.82">META_STOREFILE_REFRESH_PERIOD</a></pre>
-<dl>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.client.TestAsyncNonMetaRegionLocator.META_STOREFILE_REFRESH_PERIOD">Constant Field Values</a></dd>
-</dl>
+<pre>private static&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.79">FAMILY</a></pre>
 </li>
 </ul>
 <a name="NB_SERVERS">
@@ -397,47 +367,24 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>NB_SERVERS</h4>
-<pre>private static final&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.83">NB_SERVERS</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.80">NB_SERVERS</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.client.TestAsyncNonMetaRegionLocator.NB_SERVERS">Constant Field Values</a></dd>
 </dl>
 </li>
 </ul>
-<a name="numOfMetaReplica">
+<a name="NUM_OF_META_REPLICA">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>numOfMetaReplica</h4>
-<pre>private static&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.84">numOfMetaReplica</a></pre>
-</li>
-</ul>
-<a name="CONN">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>CONN</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.client.AsyncConnectionImpl <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.86">CONN</a></pre>
-</li>
-</ul>
-<a name="LOCATOR">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>LOCATOR</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.client.AsyncNonMetaRegionLocator <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.88">LOCATOR</a></pre>
-</li>
-</ul>
-<a name="registry">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>registry</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.client.ConnectionRegistry <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.89">registry</a></pre>
+<h4>NUM_OF_META_REPLICA</h4>
+<pre>private static final&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.81">NUM_OF_META_REPLICA</a></pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.client.TestAsyncNonMetaRegionLocator.NUM_OF_META_REPLICA">Constant Field Values</a></dd>
+</dl>
 </li>
 </ul>
 <a name="SPLIT_KEYS">
@@ -446,7 +393,25 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>SPLIT_KEYS</h4>
-<pre>private static&nbsp;byte[][] <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.91">SPLIT_KEYS</a></pre>
+<pre>private static&nbsp;byte[][] <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.83">SPLIT_KEYS</a></pre>
+</li>
+</ul>
+<a name="conn">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>conn</h4>
+<pre>private&nbsp;org.apache.hadoop.hbase.client.AsyncConnectionImpl <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.85">conn</a></pre>
+</li>
+</ul>
+<a name="locator">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>locator</h4>
+<pre>private&nbsp;org.apache.hadoop.hbase.client.AsyncNonMetaRegionLocator <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.86">locator</a></pre>
 </li>
 </ul>
 <a name="metaReplicaMode">
@@ -455,7 +420,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>metaReplicaMode</h4>
-<pre>private&nbsp;org.apache.hadoop.hbase.client.CatalogReplicaMode <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.92">metaReplicaMode</a></pre>
+<pre>public&nbsp;org.apache.hadoop.hbase.client.CatalogReplicaMode <a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.89">metaReplicaMode</a></pre>
 </li>
 </ul>
 </li>
@@ -466,18 +431,13 @@
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="TestAsyncNonMetaRegionLocator-java.lang.String-">
+<a name="TestAsyncNonMetaRegionLocator--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestAsyncNonMetaRegionLocator</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.144">TestAsyncNonMetaRegionLocator</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clientMetaReplicaMode)
-                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
-<dl>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
-</dl>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.69">TestAsyncNonMetaRegionLocator</a>()</pre>
 </li>
 </ul>
 </li>
@@ -494,7 +454,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setUp</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.95">setUp</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.92">setUp</a>()
                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -508,7 +468,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tearDown</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.119">tearDown</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.114">tearDown</a>()
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -516,13 +476,31 @@
 </dl>
 </li>
 </ul>
+<a name="setUpBeforeTest--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpBeforeTest</h4>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.119">setUpBeforeTest</a>()
+                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
+                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a>,
+                            <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
 <a name="tearDownAfterTest--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>tearDownAfterTest</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.125">tearDownAfterTest</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.131">tearDownAfterTest</a>()
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -536,7 +514,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>parameters</h4>
-<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.137">parameters</a>()</pre>
+<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.143">parameters</a>()</pre>
 </li>
 </ul>
 <a name="createSingleRegionTable--">
@@ -545,7 +523,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createSingleRegionTable</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.157">createSingleRegionTable</a>()
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.148">createSingleRegionTable</a>()
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
@@ -561,7 +539,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getDefaultRegionLocation</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;org.apache.hadoop.hbase.HRegionLocation&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.162">getDefaultRegionLocation</a>(org.apache.hadoop.hbase.TableName&nbsp;tableName,
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;org.apache.hadoop.hbase.HRegionLocation&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.153">getDefaultRegionLocation</a>(org.apache.hadoop.hbase.TableName&nbsp;tableName,
                                                                                             byte[]&nbsp;row,
                                                                                             org.apache.hadoop.hbase.client.RegionLocateType&nbsp;locateType,
                                                                                             boolean&nbsp;reload)</pre>
@@ -573,7 +551,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testNoTable</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.170">testNoTable</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.161">testNoTable</a>()
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -587,7 +565,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testDisableTable</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.181">testDisableTable</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.172">testDisableTable</a>()
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
@@ -603,7 +581,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>assertLocEquals</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.193">assertLocEquals</a>(byte[]&nbsp;startKey,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.184">assertLocEquals</a>(byte[]&nbsp;startKey,
                              byte[]&nbsp;endKey,
                              org.apache.hadoop.hbase.ServerName&nbsp;serverName,
                              org.apache.hadoop.hbase.HRegionLocation&nbsp;loc)</pre>
@@ -615,7 +593,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testSingleRegionTable</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.203">testSingleRegionTable</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.194">testSingleRegionTable</a>()
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a></pre>
@@ -633,7 +611,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createMultiRegionTable</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.218">createMultiRegionTable</a>()
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.209">createMultiRegionTable</a>()
                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
@@ -649,7 +627,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getStartKeys</h4>
-<pre>private static&nbsp;byte[][]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.223">getStartKeys</a>()</pre>
+<pre>private static&nbsp;byte[][]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.214">getStartKeys</a>()</pre>
 </li>
 </ul>
 <a name="getEndKeys--">
@@ -658,7 +636,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getEndKeys</h4>
-<pre>private static&nbsp;byte[][]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.230">getEndKeys</a>()</pre>
+<pre>private static&nbsp;byte[][]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.221">getEndKeys</a>()</pre>
 </li>
 </ul>
 <a name="getLocations-byte:A:A-">
@@ -667,7 +645,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getLocations</h4>
-<pre>private&nbsp;org.apache.hadoop.hbase.ServerName[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.236">getLocations</a>(byte[][]&nbsp;startKeys)</pre>
+<pre>private&nbsp;org.apache.hadoop.hbase.ServerName[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.227">getLocations</a>(byte[][]&nbsp;startKeys)</pre>
 </li>
 </ul>
 <a name="testMultiRegionTable--">
@@ -676,7 +654,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testMultiRegionTable</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.249">testMultiRegionTable</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.240">testMultiRegionTable</a>()
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
@@ -692,7 +670,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testRegionMove</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.289">testRegionMove</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.280">testRegionMove</a>()
                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a></pre>
@@ -710,7 +688,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testLocateAfter</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.319">testLocateAfter</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.310">testLocateAfter</a>()
                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a></pre>
@@ -728,7 +706,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testConcurrentLocate</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.344">testConcurrentLocate</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.335">testConcurrentLocate</a>()
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                                  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a></pre>
@@ -746,7 +724,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testReload</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.363">testReload</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.354">testReload</a>()
                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -760,7 +738,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testLocateBeforeLastRegion</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.420">testLocateBeforeLastRegion</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.412">testLocateBeforeLastRegion</a>()
                                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                                        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent">ExecutionException</a></pre>
@@ -778,7 +756,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testRegionReplicas</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.431">testRegionReplicas</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.423">testRegionReplicas</a>()
                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -792,7 +770,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testLocateBeforeInOnlyRegion</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.454">testLocateBeforeInOnlyRegion</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.446">testLocateBeforeInOnlyRegion</a>()
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
@@ -808,7 +786,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>testConcurrentUpdateCachedLocationOnError</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.464">testConcurrentUpdateCachedLocationOnError</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html#line.456">testConcurrentUpdateCachedLocationOnError</a>()
                                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html
new file mode 100644
index 0000000..958870d
--- /dev/null
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html
@@ -0,0 +1,365 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>TestBlockIOUtils.MyFSDataInputStream (Apache HBase 3.0.0-alpha-2-SNAPSHOT Test API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="TestBlockIOUtils.MyFSDataInputStream (Apache HBase 3.0.0-alpha-2-SNAPSHOT Test API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/TestBlockIOUtils.MyFSDataInputStream.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" target="_top">Frames</a></li>
+<li><a href="TestBlockIOUtils.MyFSDataInputStream.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.java.io.FilterInputStream">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.hadoop.hbase.io.hfile</div>
+<h2 title="Class TestBlockIOUtils.MyFSDataInputStream" class="title">Class TestBlockIOUtils.MyFSDataInputStream</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">java.io.InputStream</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true" title="class or interface in java.io">java.io.FilterInputStream</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">java.io.DataInputStream</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.fs.FSDataInputStream</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.hbase.io.hfile.TestBlockIOUtils.MyFSDataInputStream</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.hadoop.fs.ByteBufferReadable, org.apache.hadoop.fs.CanSetDropBehind, org.apache.hadoop.fs.CanSetReadahead, org.apache.hadoop.fs.CanUnbuffer, org.apache.hadoop.fs.HasEnhancedByteBufferAccess, org.apache.hadoop.fs.HasFileDescriptor, org.apache.hadoop.fs.PositionedReadable, org.apache.hadoop.fs.Seekable, org.apache.hadoop.fs.StreamCapabilities</dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils</a></dd>
+</dl>
+<hr>
+<br>
+<pre>public static class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.266">TestBlockIOUtils.MyFSDataInputStream</a>
+extends org.apache.hadoop.fs.FSDataInputStream</pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.fs.StreamCapabilities">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.hadoop.fs.StreamCapabilities</h3>
+<code>org.apache.hadoop.fs.StreamCapabilities.StreamCapability</code></li>
+</ul>
+</li>
+</ul>
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.java.io.FilterInputStream">
+<!--   -->
+</a>
+<h3>Fields inherited from class&nbsp;java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true" title="class or interface in java.io">FilterInputStream</a></h3>
+<code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#in" title="class or interface in java.io">in</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.fs.StreamCapabilities">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.hadoop.fs.StreamCapabilities</h3>
+<code>DROPBEHIND, HFLUSH, HSYNC, READAHEAD, UNBUFFER</code></li>
+</ul>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html#MyFSDataInputStream-java.io.InputStream-">MyFSDataInputStream</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html#read-long-java.nio.ByteBuffer-">read</a></span>(long&nbsp;position,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buf)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.fs.FSDataInputStream">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.hadoop.fs.FSDataInputStream</h3>
+<code>getFileDescriptor, getPos, getWrappedStream, hasCapability, read, read, read, read, readFully, readFully, releaseBuffer, seek, seekToNewSource, setDropBehind, setReadahead, toString, unbuffer</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.io.DataInputStream">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a></h3>
+<code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#read-byte:A-" title="class or interface in java.io">read</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#read-byte:A-int-int-" title="class or interface in java.io">read</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readBoolean--" title="class or interface in java.io">readBoolean</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readByte--" title="class or interface in java.io">readByte</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readChar--" title="class or interface in java.io">readChar</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readDouble--" title="class or interface in java.io">readDouble</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readFloat--" title="class or interface in java.io">readFloat</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readFully-byte:A-" title="class or interface in java.io">readFully</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readFully-byte:A-int-int-" title="class or interface in java.io">readFully</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readInt--" title="class or interface in java.io">readInt</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readLine--" title="class or interface in java.io">readLine</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readLong--" title="class or interface in java.io">readLong</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readShort--" title="class or interface in java.io">readShort</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readUnsignedByte--" title="class or interface in java.io">readUnsignedByte</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readUnsignedShort--" title="class or interface in java.io">readUnsignedShort</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readUTF--" title="class or interface in java.io">readUTF</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#readUTF-java.io.DataInput-" title="class or interface in java.io">readUTF</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true#skipBytes-int-" title="class or interface in java.io">skipBytes</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.io.FilterInputStream">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true" title="class or interface in java.io">FilterInputStream</a></h3>
+<code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#available--" title="class or interface in java.io">available</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#close--" title="class or interface in java.io">close</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#mark-int-" title="class or interface in java.io">mark</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#markSupported--" title="class or interface in java.io">markSupported</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#read--" title="class or interface in java.io">read</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#reset--" title="class or interface in java.io">reset</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true#skip-long-" title="class or interface in java.io">skip</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="MyFSDataInputStream-java.io.InputStream-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>MyFSDataInputStream</h4>
+<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html#line.267">MyFSDataInputStream</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="read-long-java.nio.ByteBuffer-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>read</h4>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html#line.275">read</a>(long&nbsp;position,
+                <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buf)
+         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/TestBlockIOUtils.MyFSDataInputStream.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" target="_top">Frames</a></li>
+<li><a href="TestBlockIOUtils.MyFSDataInputStream.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.java.io.FilterInputStream">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html
index b0beb48..4453ddd 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -50,7 +50,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockCacheReporting.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" target="_top">Frames</a></li>
@@ -74,7 +74,7 @@
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -109,7 +109,7 @@
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.52">TestBlockIOUtils</a>
+<pre>public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.55">TestBlockIOUtils</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
 </li>
 </ul>
@@ -117,6 +117,25 @@
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils.MyFSDataInputStream</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -174,39 +193,54 @@
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testIsByteBufferReadable--">testIsByteBufferReadable</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>private boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#isByteBufferPositionedReadable--">isByteBufferPositionedReadable</a></span>()</code>
+<div class="block">Determine if ByteBufferPositionedReadable API is available
+ .</div>
+</td>
 </tr>
 <tr id="i1" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadExtraFailed--">testPositionalReadExtraFailed</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testByteBufferPositionedReadable--">testByteBufferPositionedReadable</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i2" class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadExtraSucceeded--">testPositionalReadExtraSucceeded</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testByteBufferPositionedReadableEOF--">testByteBufferPositionedReadableEOF</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i3" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadNoExtra--">testPositionalReadNoExtra</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testIsByteBufferReadable--">testIsByteBufferReadable</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i4" class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadPrematureEOF--">testPositionalReadPrematureEOF</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadExtraFailed--">testPositionalReadExtraFailed</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i5" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadShortReadCompletesNecessaryAndExtraBytes--">testPositionalReadShortReadCompletesNecessaryAndExtraBytes</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadExtraSucceeded--">testPositionalReadExtraSucceeded</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i6" class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadShortReadOfNecessaryBytes--">testPositionalReadShortReadOfNecessaryBytes</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadNoExtra--">testPositionalReadNoExtra</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i7" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testReadFully--">testReadFully</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadPrematureEOF--">testPositionalReadPrematureEOF</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i8" class="altColor">
 <td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadShortReadCompletesNecessaryAndExtraBytes--">testPositionalReadShortReadCompletesNecessaryAndExtraBytes</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testPositionalReadShortReadOfNecessaryBytes--">testPositionalReadShortReadOfNecessaryBytes</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testReadFully--">testReadFully</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#testReadWithExtra--">testReadWithExtra</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
@@ -237,7 +271,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>CLASS_RULE</h4>
-<pre>public static final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.55">CLASS_RULE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.58">CLASS_RULE</a></pre>
 </li>
 </ul>
 <a name="exception">
@@ -246,7 +280,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>exception</h4>
-<pre>public&nbsp;org.junit.rules.ExpectedException <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.59">exception</a></pre>
+<pre>public&nbsp;org.junit.rules.ExpectedException <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.62">exception</a></pre>
 </li>
 </ul>
 <a name="TEST_UTIL">
@@ -255,7 +289,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TEST_UTIL</h4>
-<pre>private static final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.61">TEST_UTIL</a></pre>
+<pre>private static final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.64">TEST_UTIL</a></pre>
 </li>
 </ul>
 </li>
@@ -272,7 +306,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestBlockIOUtils</h4>
-<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.52">TestBlockIOUtils</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.55">TestBlockIOUtils</a>()</pre>
 </li>
 </ul>
 </li>
@@ -289,7 +323,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testIsByteBufferReadable</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.64">testIsByteBufferReadable</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.67">testIsByteBufferReadable</a>()
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -303,7 +337,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testReadFully</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.76">testReadFully</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.79">testReadFully</a>()
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -317,7 +351,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testReadWithExtra</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.94">testReadWithExtra</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.97">testReadWithExtra</a>()
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -331,7 +365,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testPositionalReadNoExtra</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.131">testPositionalReadNoExtra</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.134">testPositionalReadNoExtra</a>()
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -345,7 +379,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testPositionalReadShortReadOfNecessaryBytes</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.148">testPositionalReadShortReadOfNecessaryBytes</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.153">testPositionalReadShortReadOfNecessaryBytes</a>()
                                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -359,7 +393,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testPositionalReadExtraSucceeded</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.167">testPositionalReadExtraSucceeded</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.174">testPositionalReadExtraSucceeded</a>()
                                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -373,7 +407,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testPositionalReadExtraFailed</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.184">testPositionalReadExtraFailed</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.193">testPositionalReadExtraFailed</a>()
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -387,7 +421,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testPositionalReadShortReadCompletesNecessaryAndExtraBytes</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.201">testPositionalReadShortReadCompletesNecessaryAndExtraBytes</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.212">testPositionalReadShortReadCompletesNecessaryAndExtraBytes</a>()
                                                                 throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -398,10 +432,10 @@
 <a name="testPositionalReadPrematureEOF--">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>testPositionalReadPrematureEOF</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.221">testPositionalReadPrematureEOF</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.234">testPositionalReadPrematureEOF</a>()
                                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -409,6 +443,49 @@
 </dl>
 </li>
 </ul>
+<a name="isByteBufferPositionedReadable--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isByteBufferPositionedReadable</h4>
+<pre>private&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.256">isByteBufferPositionedReadable</a>()</pre>
+<div class="block">Determine if ByteBufferPositionedReadable API is available
+ .</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if FSDataInputStream implements ByteBufferPositionedReadable API.</dd>
+</dl>
+</li>
+</ul>
+<a name="testByteBufferPositionedReadable--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>testByteBufferPositionedReadable</h4>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.281">testByteBufferPositionedReadable</a>()
+                                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="testByteBufferPositionedReadableEOF--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>testByteBufferPositionedReadableEOF</h4>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html#line.306">testByteBufferPositionedReadableEOF</a>()
+                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>
@@ -438,7 +515,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockCacheReporting.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" target="_top">Frames</a></li>
@@ -462,7 +539,7 @@
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html
index be47d94..4d689fa 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html
@@ -49,7 +49,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.DataCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -461,7 +461,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.DataCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/RandomDistribution.DiscreteRNG.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/RandomDistribution.DiscreteRNG.html
index 2e9d151..8ba1e31 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/RandomDistribution.DiscreteRNG.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/RandomDistribution.DiscreteRNG.html
@@ -134,13 +134,13 @@
 <td class="colLast"><span class="typeNameLabel">TestHFileSeek.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.html#keyLenGen">keyLenGen</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/RandomDistribution.DiscreteRNG.html" title="interface in org.apache.hadoop.hbase.io.hfile">RandomDistribution.DiscreteRNG</a></code></td>
-<td class="colLast"><span class="typeNameLabel">KeySampler.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/KeySampler.html#keyLenRNG">keyLenRNG</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/RandomDistribution.DiscreteRNG.html" title="interface in org.apache.hadoop.hbase.io.hfile">RandomDistribution.DiscreteRNG</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KVGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/KVGenerator.html#keyLenRNG">keyLenRNG</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/RandomDistribution.DiscreteRNG.html" title="interface in org.apache.hadoop.hbase.io.hfile">RandomDistribution.DiscreteRNG</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KeySampler.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/KeySampler.html#keyLenRNG">keyLenRNG</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/RandomDistribution.DiscreteRNG.html" title="interface in org.apache.hadoop.hbase.io.hfile">RandomDistribution.DiscreteRNG</a></code></td>
 <td class="colLast"><span class="typeNameLabel">KVGenerator.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/KVGenerator.html#valLenRNG">valLenRNG</a></span></code>&nbsp;</td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/TestBlockIOUtils.MyFSDataInputStream.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/TestBlockIOUtils.MyFSDataInputStream.html
new file mode 100644
index 0000000..fc94b0e
--- /dev/null
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/class-use/TestBlockIOUtils.MyFSDataInputStream.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.hadoop.hbase.io.hfile.TestBlockIOUtils.MyFSDataInputStream (Apache HBase 3.0.0-alpha-2-SNAPSHOT Test API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.hadoop.hbase.io.hfile.TestBlockIOUtils.MyFSDataInputStream (Apache HBase 3.0.0-alpha-2-SNAPSHOT Test API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../../../../../../../overview-tree.html">Tree</a></li>
+<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/class-use/TestBlockIOUtils.MyFSDataInputStream.html" target="_top">Frames</a></li>
+<li><a href="TestBlockIOUtils.MyFSDataInputStream.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.hadoop.hbase.io.hfile.TestBlockIOUtils.MyFSDataInputStream" class="title">Uses of Class<br>org.apache.hadoop.hbase.io.hfile.TestBlockIOUtils.MyFSDataInputStream</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.hadoop.hbase.io.hfile.TestBlockIOUtils.MyFSDataInputStream</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../../../../../../../overview-tree.html">Tree</a></li>
+<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/class-use/TestBlockIOUtils.MyFSDataInputStream.html" target="_top">Frames</a></li>
+<li><a href="TestBlockIOUtils.MyFSDataInputStream.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-frame.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-frame.html
index ffdffb4..a49914e 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-frame.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-frame.html
@@ -30,6 +30,7 @@
 <li><a href="RandomKeyValueUtil.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">RandomKeyValueUtil</a></li>
 <li><a href="TestBlockCacheReporting.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestBlockCacheReporting</a></li>
 <li><a href="TestBlockIOUtils.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestBlockIOUtils</a></li>
+<li><a href="TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestBlockIOUtils.MyFSDataInputStream</a></li>
 <li><a href="TestCacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestCacheConfig</a></li>
 <li><a href="TestCacheConfig.DataCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestCacheConfig.DataCacheEntry</a></li>
 <li><a href="TestCacheConfig.Deserializer.html" title="class in org.apache.hadoop.hbase.io.hfile" target="classFrame">TestCacheConfig.Deserializer</a></li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-summary.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-summary.html
index 848af67..cd47f80 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-summary.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-summary.html
@@ -166,61 +166,65 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile">TestBlockIOUtils.MyFSDataInputStream</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheConfig</a></td>
 <td class="colLast">
 <div class="block">Tests that <code>CacheConfig</code> does as expected.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.DataCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheConfig.DataCacheEntry</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.Deserializer.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheConfig.Deserializer</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.IndexCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheConfig.IndexCacheEntry</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheConfig.MetaCacheEntry.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheConfig.MetaCacheEntry</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCachedBlockQueue.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCachedBlockQueue</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCachedBlockQueue.CachedBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCachedBlockQueue.CachedBlock</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCacheOnWrite</a></td>
 <td class="colLast">
 <div class="block">Tests <code>HFile</code> cache-on-write functionality for the following block
  types: data blocks, non-root index blocks, and Bloom filter blocks.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestChecksum.html" title="class in org.apache.hadoop.hbase.io.hfile">TestChecksum</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestChecksum.CorruptedFSReaderImpl.html" title="class in org.apache.hadoop.hbase.io.hfile">TestChecksum.CorruptedFSReaderImpl</a></td>
 <td class="colLast">
 <div class="block">This class is to test checksum behavior when data is corrupted.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCombinedBlockCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TestCombinedBlockCache</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestFixedFileTrailer.html" title="class in org.apache.hadoop.hbase.io.hfile">TestFixedFileTrailer</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.html" title="class in org.apache.hadoop.hbase.io.hfile">TestForceCacheImportantBlocks</a></td>
 <td class="colLast">
 <div class="block">Make sure we always cache important block types, such as index blocks, as
@@ -228,160 +232,160 @@
  for the column family.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFile.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFile</a></td>
 <td class="colLast">
 <div class="block">test hfile features.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileBlock</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileBlockIndex</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.BlockReaderWrapper.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileBlockIndex.BlockReaderWrapper</a></td>
 <td class="colLast">
 <div class="block">A wrapper around a block reader which only caches the results of the last
  operation.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileDataBlockEncoder.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileDataBlockEncoder</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileEncryption.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileEncryption</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileInlineToRootChunkConversion.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileInlineToRootChunkConversion</a></td>
 <td class="colLast">
 <div class="block">Test a case when an inline index chunk is converted to a root one.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFilePrettyPrinter.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFilePrettyPrinter</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileReaderImpl.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileReaderImpl</a></td>
 <td class="colLast">
 <div class="block">Test</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileScannerImplReferenceCount.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileScannerImplReferenceCount</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileSeek</a></td>
 <td class="colLast">
 <div class="block">test the performance for seek.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.IntegerRange.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileSeek.IntegerRange</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileSeek.MyOptions.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileSeek.MyOptions</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileWriterV3</a></td>
 <td class="colLast">
 <div class="block">Testing writing a version 3 <code>HFile</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestHFileWriterV3WithDataEncoders.html" title="class in org.apache.hadoop.hbase.io.hfile">TestHFileWriterV3WithDataEncoders</a></td>
 <td class="colLast">
 <div class="block">Testing writing a version 3 <code>HFile</code> for all encoded blocks</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestLazyDataBlockDecompression.html" title="class in org.apache.hadoop.hbase.io.hfile">TestLazyDataBlockDecompression</a></td>
 <td class="colLast">
 <div class="block">A kind of integration test at the intersection of <code>HFileBlock</code>, <code>CacheConfig</code>,
  and <code>LruBlockCache</code>.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestLruAdaptiveBlockCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TestLruAdaptiveBlockCache</a></td>
 <td class="colLast">
 <div class="block">Tests the concurrent LruAdaptiveBlockCache.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestLruAdaptiveBlockCache.CachedItem.html" title="class in org.apache.hadoop.hbase.io.hfile">TestLruAdaptiveBlockCache.CachedItem</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestLruBlockCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TestLruBlockCache</a></td>
 <td class="colLast">
 <div class="block">Tests the concurrent LruBlockCache.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestLruBlockCache.CachedItem.html" title="class in org.apache.hadoop.hbase.io.hfile">TestLruBlockCache.CachedItem</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestLruCachedBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">TestLruCachedBlock</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestPrefetch.html" title="class in org.apache.hadoop.hbase.io.hfile">TestPrefetch</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestReseekTo.html" title="class in org.apache.hadoop.hbase.io.hfile">TestReseekTo</a></td>
 <td class="colLast">
 <div class="block">Test <code>HFileScanner.reseekTo(org.apache.hadoop.hbase.Cell)</code></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestRowIndexV1DataEncoder.html" title="class in org.apache.hadoop.hbase.io.hfile">TestRowIndexV1DataEncoder</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerFromBucketCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TestScannerFromBucketCache</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingKeyRange.html" title="class in org.apache.hadoop.hbase.io.hfile">TestScannerSelectionUsingKeyRange</a></td>
 <td class="colLast">
 <div class="block">Test the optimization that does not scan files where all key ranges are excluded.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.html" title="class in org.apache.hadoop.hbase.io.hfile">TestScannerSelectionUsingTTL</a></td>
 <td class="colLast">
 <div class="block">Test the optimization that does not scan files where all timestamps are
  expired.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekBeforeWithInlineBlocks.html" title="class in org.apache.hadoop.hbase.io.hfile">TestSeekBeforeWithInlineBlocks</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestSeekTo.html" title="class in org.apache.hadoop.hbase.io.hfile">TestSeekTo</a></td>
 <td class="colLast">
 <div class="block">Test <code>HFileScanner.seekTo(Cell)</code> and its variants.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestTinyLfuBlockCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TestTinyLfuBlockCache</a></td>
 <td class="colLast">
 <div class="block">Tests the concurrent TinyLfuBlockCache.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestTinyLfuBlockCache.CachedItem.html" title="class in org.apache.hadoop.hbase.io.hfile">TestTinyLfuBlockCache.CachedItem</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
index 3d40d57..fb8b779 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
@@ -94,6 +94,23 @@
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheTestUtils.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">CacheTestUtils</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheTestUtils.ByteArrayCacheable.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">CacheTestUtils.ByteArrayCacheable</span></a> (implements org.apache.hadoop.hbase.io.hfile.Cacheable)</li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheTestUtils.HFileBlockPair.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">CacheTestUtils.HFileBlockPair</span></a></li>
+<li type="circle">java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io"><span class="typeNameLink">InputStream</span></a> (implements java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>)
+<ul>
+<li type="circle">java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/FilterInputStream.html?is-external=true" title="class or interface in java.io"><span class="typeNameLink">FilterInputStream</span></a>
+<ul>
+<li type="circle">java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io"><span class="typeNameLink">DataInputStream</span></a> (implements java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a>)
+<ul>
+<li type="circle">org.apache.hadoop.fs.FSDataInputStream (implements org.apache.hadoop.fs.ByteBufferReadable, org.apache.hadoop.fs.CanSetDropBehind, org.apache.hadoop.fs.CanSetReadahead, org.apache.hadoop.fs.CanUnbuffer, org.apache.hadoop.fs.HasEnhancedByteBufferAccess, org.apache.hadoop.fs.HasFileDescriptor, org.apache.hadoop.fs.PositionedReadable, org.apache.hadoop.fs.Seekable, org.apache.hadoop.fs.StreamCapabilities)
+<ul>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestBlockIOUtils.MyFSDataInputStream</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/KeySampler.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">KeySampler</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/KVGenerator.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">KVGenerator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.LruCachedBlock (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, org.apache.hadoop.hbase.io.HeapSize)
diff --git a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html
index 9edae2a..5576f08 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html
@@ -109,7 +109,7 @@
 <li class="blockList">
 <dl>
 <dt>Direct Known Subclasses:</dt>
-<dd><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TestTableSnapshotInputFormat</a>, <a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableSnapshotInputFormat</a></dd>
+<dd><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableSnapshotInputFormat</a>, <a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TestTableSnapshotInputFormat</a></dd>
 </dl>
 <hr>
 <br>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html
index 45e54f4..cf95f50 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html
@@ -109,7 +109,7 @@
 <li class="blockList">
 <dl>
 <dt>Direct Known Subclasses:</dt>
-<dd><a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapred">TestTableMapReduce</a>, <a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduce</a></dd>
+<dd><a href="../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduce</a>, <a href="../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapred">TestTableMapReduce</a></dd>
 </dl>
 <hr>
 <br>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatTestBase.html b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatTestBase.html
index 9aa5b91..3b7268c 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatTestBase.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatTestBase.html
@@ -83,7 +83,7 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapred">org.apache.hadoop.hbase.mapred</a></td>
+<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapreduce">org.apache.hadoop.hbase.mapreduce</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
@@ -91,12 +91,12 @@
 </li>
 <li class="blockList">
 <ul class="blockList">
-<li class="blockList"><a name="org.apache.hadoop.hbase.mapred">
+<li class="blockList"><a name="org.apache.hadoop.hbase.mapreduce">
 <!--   -->
 </a>
-<h3>Uses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatTestBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></h3>
+<h3>Uses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatTestBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/package-summary.html">org.apache.hadoop.hbase.mapreduce</a></h3>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subclasses, and an explanation">
-<caption><span>Subclasses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatTestBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Subclasses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatTestBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/package-summary.html">org.apache.hadoop.hbase.mapreduce</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Class and Description</th>
@@ -104,7 +104,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>class&nbsp;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TestTableSnapshotInputFormat</a></span></code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableSnapshotInputFormat</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TestTableMapReduceBase.html b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TestTableMapReduceBase.html
index 845c663..c94456f 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TestTableMapReduceBase.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/class-use/TestTableMapReduceBase.html
@@ -83,7 +83,7 @@
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapred">org.apache.hadoop.hbase.mapred</a></td>
+<td class="colFirst"><a href="#org.apache.hadoop.hbase.mapreduce">org.apache.hadoop.hbase.mapreduce</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
@@ -91,12 +91,12 @@
 </li>
 <li class="blockList">
 <ul class="blockList">
-<li class="blockList"><a name="org.apache.hadoop.hbase.mapred">
+<li class="blockList"><a name="org.apache.hadoop.hbase.mapreduce">
 <!--   -->
 </a>
-<h3>Uses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduceBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></h3>
+<h3>Uses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduceBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/package-summary.html">org.apache.hadoop.hbase.mapreduce</a></h3>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subclasses, and an explanation">
-<caption><span>Subclasses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduceBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapred/package-summary.html">org.apache.hadoop.hbase.mapred</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Subclasses of <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduceBase</a> in <a href="../../../../../../org/apache/hadoop/hbase/mapreduce/package-summary.html">org.apache.hadoop.hbase.mapreduce</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Class and Description</th>
@@ -104,7 +104,7 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>class&nbsp;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapred/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapred">TestTableMapReduce</a></span></code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduce</a></span></code>
 <div class="block">Test Map/Reduce job over HBase tables.</div>
 </td>
 </tr>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html
index 55cd0e9..2393a24 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/mapreduce/package-use.html
@@ -113,16 +113,8 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatTestBase.html#org.apache.hadoop.hbase.mapred">TableSnapshotInputFormatTestBase</a>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestMultiTableSnapshotInputFormat.html#org.apache.hadoop.hbase.mapred">TestMultiTableSnapshotInputFormat</a>&nbsp;</td>
 </tr>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestTableMapReduceBase.html#org.apache.hadoop.hbase.mapred">TestTableMapReduceBase</a>
-<div class="block">A base class for a test Map/Reduce job over HBase tables.</div>
-</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -157,13 +149,21 @@
 </td>
 </tr>
 <tr class="altColor">
-<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestMultiTableSnapshotInputFormatImpl.ScanWithEquals.html#org.apache.hadoop.hbase.mapreduce">TestMultiTableSnapshotInputFormatImpl.ScanWithEquals</a>&nbsp;</td>
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TableSnapshotInputFormatTestBase.html#org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatTestBase</a>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestMultiTableSnapshotInputFormatImpl.ScanWithEquals.html#org.apache.hadoop.hbase.mapreduce">TestMultiTableSnapshotInputFormatImpl.ScanWithEquals</a>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestTableInputFormatScanBase.html#org.apache.hadoop.hbase.mapreduce">TestTableInputFormatScanBase</a>
 <div class="block">Tests various scan start and stop row scenarios.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestTableMapReduceBase.html#org.apache.hadoop.hbase.mapreduce">TestTableMapReduceBase</a>
+<div class="block">A base class for a test Map/Reduce job over HBase tables.</div>
+</td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><a href="../../../../../org/apache/hadoop/hbase/mapreduce/class-use/TestTableSnapshotInputFormat.TestTableSnapshotCounters.html#org.apache.hadoop.hbase.mapreduce">TestTableSnapshotInputFormat.TestTableSnapshotCounters</a>&nbsp;</td>
 </tr>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
index 0ec1a28..0be1c3f 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
@@ -658,19 +658,19 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleCommand</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ZNodeClusterManager.CmdType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ZNodeClusterManager.CmdType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.ACTION.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestDDLMasterFailover.ACTION</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.Service</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ResourceChecker.Phase.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ResourceChecker.Phase</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.Service</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.Signal.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseClusterManager.Signal</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleCommand</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterManager.ServiceType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ZNodeClusterManager.CmdType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ZNodeClusterManager.CmdType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.HealthSummary</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseClusterManager.CommandProvider.Operation</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterManager.ServiceType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/package-use.html b/testdevapidocs/org/apache/hadoop/hbase/package-use.html
index f1aa1f71..c07e9df 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/package-use.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/package-use.html
@@ -1851,12 +1851,6 @@
 <div class="block">Facility for testing HBase.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/HBaseTestingUtil.SeenRowTracker.html#org.apache.hadoop.hbase.mapred">HBaseTestingUtil.SeenRowTracker</a>
-<div class="block">A tracker for tracking and validating table rows
- generated with <a href="../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A-"><code>HBaseTestingUtil.loadTable(Table, byte[])</code></a></div>
-</td>
-</tr>
 </tbody>
 </table>
 </li>
@@ -1880,16 +1874,22 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/HBaseTestingUtil.SeenRowTracker.html#org.apache.hadoop.hbase.mapreduce">HBaseTestingUtil.SeenRowTracker</a>
+<div class="block">A tracker for tracking and validating table rows
+ generated with <a href="../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html#loadTable-org.apache.hadoop.hbase.client.Table-byte:A-"><code>HBaseTestingUtil.loadTable(Table, byte[])</code></a></div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/IntegrationTestBase.html#org.apache.hadoop.hbase.mapreduce">IntegrationTestBase</a>
 <div class="block">Base class for HBase integration tests that want to use the Chaos Monkey.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/IntegrationTestingUtility.html#org.apache.hadoop.hbase.mapreduce">IntegrationTestingUtility</a>
 <div class="block">Facility for <strong>integration/system</strong> tests.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="../../../../org/apache/hadoop/hbase/class-use/SingleProcessHBaseCluster.html#org.apache.hadoop.hbase.mapreduce">SingleProcessHBaseCluster</a>
 <div class="block">This class creates a single process HBase cluster.</div>
 </td>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
index 3ce38a7..4309238 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
@@ -81,16 +81,16 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.Procedure&lt;TEnvironment&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)
-<ul>
-<li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureDescriber.TestProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedureDescriber.TestProcedure</span></a></li>
-</ul>
-</li>
 <li type="circle">org.apache.hadoop.hbase.procedure.Procedure (implements java.util.concurrent.<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Callable.html?is-external=true" title="class or interface in java.util.concurrent">Callable</a>&lt;V&gt;, org.apache.hadoop.hbase.errorhandling.ForeignExceptionListener)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedure.LatchedProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedure.LatchedProcedure</span></a></li>
 </ul>
 </li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.Procedure&lt;TEnvironment&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)
+<ul>
+<li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureDescriber.TestProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedureDescriber.TestProcedure</span></a></li>
+</ul>
+</li>
 <li type="circle">org.apache.hadoop.hbase.procedure.ProcedureManager
 <ul>
 <li type="circle">org.apache.hadoop.hbase.procedure.MasterProcedureManager (implements org.apache.hadoop.hbase.Stoppable)
diff --git a/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
index f874d37..2133017 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
@@ -241,10 +241,10 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureRecovery.TestStateMachineProcedure.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures.TestStateMachineProcedure.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.TestSMProcedureState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestStateMachineProcedure.TestSMProcedureState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureBypass.StuckStateMachineState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureBypass.StuckStateMachineState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureRecovery.TestStateMachineProcedure.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures.TestStateMachineProcedure.State</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaHelperForTests.html b/testdevapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaHelperForTests.html
index 6dd2db0..eaf6012 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaHelperForTests.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/quotas/class-use/SpaceQuotaHelperForTests.html
@@ -104,15 +104,23 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaIncrease.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaIncrease.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaBasicFunctioning.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaBasicFunctioning.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnNonExistingTables.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnNonExistingTables.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreWithMiniCluster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreWithMiniCluster.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaBasicFunctioning.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaBasicFunctioning.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnBulkLoad.html#helper">helper</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSuperUserQuotaPermissions.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.html#helper">helper</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaIncrease.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaIncrease.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
@@ -120,15 +128,23 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaDropTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaDropTable.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSnapshotQuotaObserverChore.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestLowLatencySpaceQuotas.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnNonExistingTables.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnNonExistingTables.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestFileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestFileArchiverNotifierImpl.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaSwitchPolicies.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaSwitchPolicies.html#helper">helper</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaDropTable.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaDropTable.html#helper">helper</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestLowLatencySpaceQuotas.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
@@ -136,23 +152,7 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSnapshotQuotaObserverChore.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSnapshotQuotaObserverChore.html#helper">helper</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaOnBulkLoad.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaOnBulkLoad.html#helper">helper</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSuperUserQuotaPermissions.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSuperUserQuotaPermissions.html#helper">helper</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSpaceQuotaSwitchPolicies.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestSpaceQuotaSwitchPolicies.html#helper">helper</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserver.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestQuotaStatusRPCs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
@@ -160,11 +160,11 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaStatusRPCs.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestFileArchiverNotifierImpl.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestFileArchiverNotifierImpl.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestQuotaObserverChoreWithMiniCluster.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreWithMiniCluster.html#helper">helper</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaHelperForTests</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMasterQuotasObserver.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/TestMasterQuotasObserver.html#helper">helper</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html
index 1e84059..a01db76 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html
@@ -118,7 +118,7 @@
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.635">TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext</a>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.624">TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext</a>
 extends org.apache.hadoop.hbase.regionserver.compactions.CompactionContext</pre>
 </li>
 </ul>
@@ -236,7 +236,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>isInCompact</h4>
-<pre>public volatile&nbsp;boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.636">isInCompact</a></pre>
+<pre>public volatile&nbsp;boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.625">isInCompact</a></pre>
 </li>
 </ul>
 </li>
@@ -253,7 +253,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>BlockingCompactionContext</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.635">BlockingCompactionContext</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.624">BlockingCompactionContext</a>()</pre>
 </li>
 </ul>
 </li>
@@ -270,7 +270,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>unblock</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.638">unblock</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.627">unblock</a>()</pre>
 </li>
 </ul>
 <a name="compact-org.apache.hadoop.hbase.regionserver.throttle.ThroughputController-org.apache.hadoop.hbase.security.User-">
@@ -279,7 +279,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>compact</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.645">compact</a>(org.apache.hadoop.hbase.regionserver.throttle.ThroughputController&nbsp;throughputController,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.634">compact</a>(org.apache.hadoop.hbase.regionserver.throttle.ThroughputController&nbsp;throughputController,
                                                org.apache.hadoop.hbase.security.User&nbsp;user)
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
@@ -296,7 +296,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>preSelect</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.659">preSelect</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;filesCompacting)</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.648">preSelect</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;filesCompacting)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code>preSelect</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.hbase.regionserver.compactions.CompactionContext</code></dd>
@@ -309,7 +309,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>select</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.664">select</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;f,
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html#line.653">select</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;f,
                       boolean&nbsp;i,
                       boolean&nbsp;m,
                       boolean&nbsp;e)
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html
index f4ff2d8..3cb5a14 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html
@@ -118,7 +118,7 @@
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.632">TestCompaction.BlockingStoreMockMaker</a>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.621">TestCompaction.BlockingStoreMockMaker</a>
 extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></pre>
 </li>
 </ul>
@@ -246,7 +246,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>blocked</h4>
-<pre><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.633">blocked</a></pre>
+<pre><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.622">blocked</a></pre>
 </li>
 </ul>
 </li>
@@ -263,7 +263,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>BlockingStoreMockMaker</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.632">BlockingStoreMockMaker</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.621">BlockingStoreMockMaker</a>()</pre>
 </li>
 </ul>
 </li>
@@ -280,7 +280,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>selectCompaction</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;org.apache.hadoop.hbase.regionserver.compactions.CompactionContext&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.672">selectCompaction</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;org.apache.hadoop.hbase.regionserver.compactions.CompactionContext&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.661">selectCompaction</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html#selectCompaction--">selectCompaction</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></code></dd>
@@ -293,7 +293,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>cancelCompaction</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.683">cancelCompaction</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.672">cancelCompaction</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html#cancelCompaction-java.lang.Object-">cancelCompaction</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></code></dd>
@@ -306,7 +306,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>getPriority</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.686">getPriority</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.675">getPriority</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html#getPriority--">getPriority</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></code></dd>
@@ -319,7 +319,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>waitForBlocking</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.690">waitForBlocking</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html" title="class in org.apache.hadoop.hbase.regionserver">TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.679">waitForBlocking</a>()</pre>
 </li>
 </ul>
 <a name="createStoreMock-java.lang.String-">
@@ -328,7 +328,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createStoreMock</h4>
-<pre>public&nbsp;org.apache.hadoop.hbase.regionserver.HStore&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.700">createStoreMock</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+<pre>public&nbsp;org.apache.hadoop.hbase.regionserver.HStore&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.689">createStoreMock</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
                                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
@@ -344,7 +344,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createStoreMock</h4>
-<pre>public&nbsp;org.apache.hadoop.hbase.regionserver.HStore&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.704">createStoreMock</a>(int&nbsp;priority,
+<pre>public&nbsp;org.apache.hadoop.hbase.regionserver.HStore&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html#line.693">createStoreMock</a>(int&nbsp;priority,
                                                                    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
                                                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html
index 6567edc..0f528fd 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html
@@ -117,7 +117,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.846">TestCompaction.DummyCompactor</a>
+<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.835">TestCompaction.DummyCompactor</a>
 extends org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor</pre>
 </li>
 </ul>
@@ -220,7 +220,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DummyCompactor</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html#line.847">DummyCompactor</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html#line.836">DummyCompactor</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                       org.apache.hadoop.hbase.regionserver.HStore&nbsp;store)</pre>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html
index 60c313b..7ce12b3 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html
@@ -118,7 +118,7 @@
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.568">TestCompaction.StoreMockMaker.TestCompactionContext</a>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.557">TestCompaction.StoreMockMaker.TestCompactionContext</a>
 extends org.apache.hadoop.hbase.regionserver.compactions.CompactionContext</pre>
 </li>
 </ul>
@@ -232,7 +232,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>selectedFiles</h4>
-<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.570">selectedFiles</a></pre>
+<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.559">selectedFiles</a></pre>
 </li>
 </ul>
 </li>
@@ -249,7 +249,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestCompactionContext</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.572">TestCompactionContext</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;selectedFiles)</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.561">TestCompactionContext</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;selectedFiles)</pre>
 </li>
 </ul>
 </li>
@@ -266,7 +266,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>preSelect</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.578">preSelect</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;filesCompacting)</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.567">preSelect</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;filesCompacting)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code>preSelect</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.hbase.regionserver.compactions.CompactionContext</code></dd>
@@ -279,7 +279,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>select</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.583">select</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;filesCompacting,
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.572">select</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;filesCompacting,
                       boolean&nbsp;isUserCompaction,
                       boolean&nbsp;mayUseOffPeak,
                       boolean&nbsp;forceMajor)
@@ -298,7 +298,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>compact</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.591">compact</a>(org.apache.hadoop.hbase.regionserver.throttle.ThroughputController&nbsp;throughputController,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.fs.Path&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html#line.580">compact</a>(org.apache.hadoop.hbase.regionserver.throttle.ThroughputController&nbsp;throughputController,
                                                org.apache.hadoop.hbase.security.User&nbsp;user)
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html
index 0046905..e4c96d9 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html
@@ -118,7 +118,7 @@
 </dl>
 <hr>
 <br>
-<pre>class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.559">TestCompaction.StoreMockMaker</a>
+<pre>class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.548">TestCompaction.StoreMockMaker</a>
 extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></pre>
 </li>
 </ul>
@@ -252,7 +252,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>compacting</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.560">compacting</a></pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.549">compacting</a></pre>
 </li>
 </ul>
 <a name="notCompacting">
@@ -261,7 +261,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>notCompacting</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.561">notCompacting</a></pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.550">notCompacting</a></pre>
 </li>
 </ul>
 <a name="results">
@@ -270,7 +270,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>results</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.562">results</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.551">results</a></pre>
 </li>
 </ul>
 </li>
@@ -287,7 +287,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>StoreMockMaker</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.564">StoreMockMaker</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;results)</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.553">StoreMockMaker</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;results)</pre>
 </li>
 </ul>
 </li>
@@ -304,7 +304,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>selectCompaction</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;org.apache.hadoop.hbase.regionserver.compactions.CompactionContext&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.599">selectCompaction</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;org.apache.hadoop.hbase.regionserver.compactions.CompactionContext&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.588">selectCompaction</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html#selectCompaction--">selectCompaction</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></code></dd>
@@ -317,7 +317,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>cancelCompaction</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.612">cancelCompaction</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.601">cancelCompaction</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html#cancelCompaction-java.lang.Object-">cancelCompaction</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></code></dd>
@@ -330,7 +330,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>finishCompaction</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.618">finishCompaction</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;sfs)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.607">finishCompaction</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.hbase.regionserver.HStoreFile&gt;&nbsp;sfs)</pre>
 </li>
 </ul>
 <a name="getPriority--">
@@ -339,7 +339,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getPriority</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.627">getPriority</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html#line.616">getPriority</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html#getPriority--">getPriority</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/StatefulStoreMockMaker.html" title="class in org.apache.hadoop.hbase.regionserver">StatefulStoreMockMaker</a></code></dd>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html
index 15db2d2..c041bbd 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html
@@ -117,7 +117,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.866">TestCompaction.Tracker</a>
+<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.855">TestCompaction.Tracker</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
 implements org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker</pre>
 <div class="block">Simple <code>CompactionLifeCycleTracker</code> on which you can wait until the requested compaction
@@ -222,7 +222,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>done</h4>
-<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CountDownLatch.html?is-external=true" title="class or interface in java.util.concurrent">CountDownLatch</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html#line.868">done</a></pre>
+<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CountDownLatch.html?is-external=true" title="class or interface in java.util.concurrent">CountDownLatch</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html#line.857">done</a></pre>
 </li>
 </ul>
 </li>
@@ -239,7 +239,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Tracker</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html#line.870">Tracker</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CountDownLatch.html?is-external=true" title="class or interface in java.util.concurrent">CountDownLatch</a>&nbsp;done)</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html#line.859">Tracker</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CountDownLatch.html?is-external=true" title="class or interface in java.util.concurrent">CountDownLatch</a>&nbsp;done)</pre>
 </li>
 </ul>
 </li>
@@ -256,7 +256,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>afterExecution</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html#line.875">afterExecution</a>(org.apache.hadoop.hbase.regionserver.Store&nbsp;store)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html#line.864">afterExecution</a>(org.apache.hadoop.hbase.regionserver.Store&nbsp;store)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code>afterExecution</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker</code></dd>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html
index d8a286d..f6d3e8f 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html
@@ -122,7 +122,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.884">TestCompaction.WaitThroughPutController</a>
+<pre>public static class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.873">TestCompaction.WaitThroughPutController</a>
 extends org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController</pre>
 <div class="block">Simple <code>CompactionLifeCycleTracker</code> on which you can wait until the requested compaction
  finishes.</div>
@@ -216,7 +216,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>WaitThroughPutController</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html#line.886">WaitThroughPutController</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html#line.875">WaitThroughPutController</a>()</pre>
 </li>
 </ul>
 </li>
@@ -233,7 +233,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>control</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html#line.890">control</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;compactionName,
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html#line.879">control</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;compactionName,
                     long&nbsp;size)
              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <dl>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.html
index 1384b25..b39faec 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestCompaction.html
@@ -113,7 +113,7 @@
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.95">TestCompaction</a>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.96">TestCompaction</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
 <div class="block">Test compaction framework and common functions</div>
 </li>
@@ -200,38 +200,34 @@
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#FAMILY">FAMILY</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#LOG">LOG</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#MAX_FILES_TO_COMPACT">MAX_FILES_TO_COMPACT</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>org.junit.rules.TestName</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#name">name</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private org.apache.hadoop.hbase.regionserver.HRegion</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#r">r</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#secondRowBytes">secondRowBytes</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#STARTROW">STARTROW</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private org.apache.hadoop.hbase.client.TableDescriptor</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#tableDescriptor">tableDescriptor</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#thirdRowBytes">thirdRowBytes</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompaction.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
@@ -379,16 +375,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>CLASS_RULE</h4>
-<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.98">CLASS_RULE</a></pre>
-</li>
-</ul>
-<a name="LOG">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>LOG</h4>
-<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.101">LOG</a></pre>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.99">CLASS_RULE</a></pre>
 </li>
 </ul>
 <a name="name">
@@ -397,7 +384,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>name</h4>
-<pre>public&nbsp;org.junit.rules.TestName <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.104">name</a></pre>
+<pre>public&nbsp;org.junit.rules.TestName <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.103">name</a></pre>
 </li>
 </ul>
 <a name="UTIL">
@@ -406,7 +393,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>UTIL</h4>
-<pre>private static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.105">UTIL</a></pre>
+<pre>private static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtil.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtil</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.104">UTIL</a></pre>
 </li>
 </ul>
 <a name="conf">
@@ -415,7 +402,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>conf</h4>
-<pre>protected&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.106">conf</a></pre>
+<pre>protected&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.105">conf</a></pre>
 </li>
 </ul>
 <a name="r">
@@ -424,7 +411,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>r</h4>
-<pre>private&nbsp;org.apache.hadoop.hbase.regionserver.HRegion <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.108">r</a></pre>
+<pre>private&nbsp;org.apache.hadoop.hbase.regionserver.HRegion <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.107">r</a></pre>
 </li>
 </ul>
 <a name="tableDescriptor">
@@ -433,7 +420,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tableDescriptor</h4>
-<pre>private&nbsp;org.apache.hadoop.hbase.client.TableDescriptor <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.109">tableDescriptor</a></pre>
+<pre>private&nbsp;org.apache.hadoop.hbase.client.TableDescriptor <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.108">tableDescriptor</a></pre>
 </li>
 </ul>
 <a name="COLUMN_FAMILY">
@@ -442,7 +429,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>COLUMN_FAMILY</h4>
-<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.110">COLUMN_FAMILY</a></pre>
+<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.109">COLUMN_FAMILY</a></pre>
 </li>
 </ul>
 <a name="STARTROW">
@@ -451,7 +438,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>STARTROW</h4>
-<pre>private final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.111">STARTROW</a></pre>
+<pre>private final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.110">STARTROW</a></pre>
 </li>
 </ul>
 <a name="COLUMN_FAMILY_TEXT">
@@ -460,7 +447,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>COLUMN_FAMILY_TEXT</h4>
-<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.112">COLUMN_FAMILY_TEXT</a></pre>
+<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.111">COLUMN_FAMILY_TEXT</a></pre>
 </li>
 </ul>
 <a name="compactionThreshold">
@@ -469,7 +456,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>compactionThreshold</h4>
-<pre>private&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.113">compactionThreshold</a></pre>
+<pre>private&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.112">compactionThreshold</a></pre>
 </li>
 </ul>
 <a name="secondRowBytes">
@@ -478,7 +465,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>secondRowBytes</h4>
-<pre>private&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.114">secondRowBytes</a></pre>
+<pre>private&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.113">secondRowBytes</a></pre>
 </li>
 </ul>
 <a name="thirdRowBytes">
@@ -487,7 +474,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>thirdRowBytes</h4>
-<pre>private&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.114">thirdRowBytes</a></pre>
+<pre>private&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.113">thirdRowBytes</a></pre>
 </li>
 </ul>
 <a name="MAX_FILES_TO_COMPACT">
@@ -496,7 +483,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>MAX_FILES_TO_COMPACT</h4>
-<pre>private static final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.115">MAX_FILES_TO_COMPACT</a></pre>
+<pre>private static final&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.114">MAX_FILES_TO_COMPACT</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.regionserver.TestCompaction.MAX_FILES_TO_COMPACT">Constant Field Values</a></dd>
@@ -509,7 +496,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>FAMILY</h4>
-<pre>private final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.116">FAMILY</a></pre>
+<pre>private final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.115">FAMILY</a></pre>
 </li>
 </ul>
 </li>
@@ -526,7 +513,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestCompaction</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.119">TestCompaction</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.118">TestCompaction</a>()</pre>
 <div class="block">constructor</div>
 </li>
 </ul>
@@ -544,7 +531,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>setUp</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.138">setUp</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.137">setUp</a>()
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -558,7 +545,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>tearDown</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.153">tearDown</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.152">tearDown</a>()
               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -572,7 +559,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testInterruptCompactionBySize</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.164">testInterruptCompactionBySize</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.163">testInterruptCompactionBySize</a>()
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Verify that you can stop a long-running compaction
  (used during RS shutdown)</div>
@@ -588,7 +575,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testInterruptCompactionByTime</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.240">testInterruptCompactionByTime</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.239">testInterruptCompactionByTime</a>()
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -602,7 +589,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>count</h4>
-<pre>private&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.316">count</a>()
+<pre>private&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.315">count</a>()
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -616,7 +603,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createStoreFile</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.330">createStoreFile</a>(org.apache.hadoop.hbase.regionserver.HRegion&nbsp;region)
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.329">createStoreFile</a>(org.apache.hadoop.hbase.regionserver.HRegion&nbsp;region)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -630,7 +617,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>createStoreFile</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.334">createStoreFile</a>(org.apache.hadoop.hbase.regionserver.HRegion&nbsp;region,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.333">createStoreFile</a>(org.apache.hadoop.hbase.regionserver.HRegion&nbsp;region,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;family)
                       throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
@@ -645,7 +632,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testCompactionWithCorruptResult</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.341">testCompactionWithCorruptResult</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.340">testCompactionWithCorruptResult</a>()
                                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -659,7 +646,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testTrackingCompactionRequest</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.382">testTrackingCompactionRequest</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.371">testTrackingCompactionRequest</a>()
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Create a custom compaction request and be sure that we can track it through the queue, knowing
  when the compaction is completed.</div>
@@ -675,7 +662,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testCompactionFailure</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.407">testCompactionFailure</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.396">testCompactionFailure</a>()
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -689,7 +676,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testStopStartCompaction</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.452">testStopStartCompaction</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.441">testStopStartCompaction</a>()
                              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Test no new Compaction requests are generated after calling stop compactions</div>
 <dl>
@@ -704,7 +691,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testInterruptingRunningCompactions</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.489">testInterruptingRunningCompactions</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.478">testInterruptingRunningCompactions</a>()
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -718,7 +705,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testMultipleCustomCompactionRequests</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.533">testMultipleCustomCompactionRequests</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.522">testMultipleCustomCompactionRequests</a>()
                                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">HBASE-7947: Regression test to ensure adding to the correct list in the
  <code>CompactSplit</code></div>
@@ -734,7 +721,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testCompactionQueuePriorities</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.714">testCompactionQueuePriorities</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.703">testCompactionQueuePriorities</a>()
                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Test compaction priority management and multiple compactions per store (HBASE-8665).</div>
 <dl>
@@ -749,7 +736,7 @@
 <ul class="blockList">
 <li class="blockList">
 <h4>testCompactionSeqId</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.804">testCompactionSeqId</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.793">testCompactionSeqId</a>()
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Firstly write 10 cells (with different time stamp) to a qualifier and flush
  to hfile1, then write 10 cells (with different time stamp) to the same
@@ -774,7 +761,7 @@
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createFile</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.regionserver.HStoreFile&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.853">createFile</a>()
+<pre>private static&nbsp;org.apache.hadoop.hbase.regionserver.HStoreFile&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html#line.842">createFile</a>()
                                                                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHRegion.HStoreForTesting.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHRegion.HStoreForTesting.html
index ea99c93..e79c648 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHRegion.HStoreForTesting.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHRegion.HStoreForTesting.html
@@ -206,7 +206,7 @@
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.regionserver.HStore</h3>
-<code>add, add, addChangedReaderObserver, areWritesEnabled, assertBulkLoadHFileOk, bulkLoadHFile, bulkLoadHFile, cancelRequestedCompaction, canSplit, close, closeAndArchiveCompactedFiles, compact, createCacheConf, createFlushContext, createScanner, createStoreEngine, createStoreFileAndReader, createWriterInTmp, createWriterInTmp, deleteChangedReaderObserver, deregisterChildren, determineTTLFromFamily, finishCompactionRequest, flushCache, getAvgStoreFileAge, getBlockingFileCount, getCacheConfig, getColumnFamilyDescriptor, getColumnFamilyName, getCompactedCellsCount, getCompactedCellsSize, getCompactedFiles, getCompactedFilesCount, getCompactionCheckMultiplier, getCompactionPressure, getCompactionProgress, getCompactPriority, getComparator, getCoprocessorHost, getCurrentParallelPutCount, getDataBlockEncoder, getFileSystem, getFlushableSize, getFlushedCellsCount, getFlushedCellsSize, getFlushedOutputFileSize, getHFilesSize, getHRegion, getLastCompactSize, getMajorCompactedCellsCount, getMajorCompactedCellsSize, getMaxCompactedStoreFileRefCount, getMaxMemStoreTS, getMaxSequenceId, getMaxStoreFileAge, getMemStoreFlushSize, getMemstoreOnlyRowReadsCount, getMemStoreSize, getMinStoreFileAge, getMixedRowReadsCount, getNumHFiles, getNumReferenceFiles, getOffPeakHours, getRegionFileSystem, getRegionInfo, getScanInfo, getScanner, getScanners, getScanners, getScanners, getScanners, getSize, getSmallestReadPoint, getSnapshotSize, getSplitPoint, getStoreContext, getStoreEngine, getStorefiles, getStorefilesCount, getStoreFileSize, getStorefilesRootLevelIndexSize, getStorefilesSize, getStoreFileTtl, getStoreRefCount, getStoreSizeUncompressed, getTableName, getTotalStaticBloomSize, getTotalStaticIndexSize, hasReferences, hasTooManyStoreFiles, heapSize, isPrimaryReplicaStore, isSloppyMemStore, moveFileIntoPlace, needsCompaction, onConfigurationChange, postSnapshotOperation, preBulkLoadHFile, preFlushSeqIDEstimation, preSnapshotOperation, recreateScanners, refreshStoreFiles, refreshStoreFiles, refreshStoreSizeAndTotalBytes, registerChildren, replaceStoreFiles, replayCompactionMarker, reportArchivedFilesForQuota, requestCompaction, requestCompaction, setDataBlockEncoderInTest, setScanInfo, shouldPerformMajorCompaction, snapshot, startReplayingFromWAL, stopReplayingFromWAL, throttleCompaction, timeOfOldestEdit, toString, triggerMajorCompaction, tryCommitRecoveredHFile, updateMetricsStore, updateSpaceQuotaAfterFileReplacement, upsert, versionsToReturn</code></li>
+<code>add, add, addChangedReaderObserver, areWritesEnabled, assertBulkLoadHFileOk, bulkLoadHFile, bulkLoadHFile, cancelRequestedCompaction, canSplit, close, closeAndArchiveCompactedFiles, compact, createCacheConf, createFlushContext, createScanner, createStoreEngine, createStoreFileAndReader, createWriterInTmp, createWriterInTmp, deleteChangedReaderObserver, deregisterChildren, determineTTLFromFamily, finishCompactionRequest, flushCache, getAvgStoreFileAge, getBlockingFileCount, getCacheConfig, getColumnFamilyDescriptor, getColumnFamilyName, getCompactedCellsCount, getCompactedCellsSize, getCompactedFiles, getCompactedFilesCount, getCompactionCheckMultiplier, getCompactionPressure, getCompactionProgress, getCompactPriority, getComparator, getCoprocessorHost, getCurrentParallelPutCount, getDataBlockEncoder, getFileSystem, getFlushableSize, getFlushedCellsCount, getFlushedCellsSize, getFlushedOutputFileSize, getHFilesSize, getHRegion, getLastCompactSize, getMajorCompactedCellsCount, getMajorCompactedCellsSize, getMaxCompactedStoreFileRefCount, getMaxMemStoreTS, getMaxSequenceId, getMaxStoreFileAge, getMemStoreFlushSize, getMemstoreOnlyRowReadsCount, getMemStoreSize, getMinStoreFileAge, getMixedRowReadsCount, getNumHFiles, getNumReferenceFiles, getOffPeakHours, getRegionFileSystem, getRegionInfo, getScanInfo, getScanner, getScanners, getScanners, getScanners, getScanners, getSize, getSmallestReadPoint, getSnapshotSize, getSplitPoint, getStoreContext, getStoreEngine, getStorefiles, getStorefilesCount, getStoreFileSize, getStorefilesRootLevelIndexSize, getStorefilesSize, getStoreFileTtl, getStoreRefCount, getStoreSizeUncompressed, getTableName, getTotalStaticBloomSize, getTotalStaticIndexSize, hasReferences, hasTooManyStoreFiles, heapSize, isPrimaryReplicaStore, isSloppyMemStore, needsCompaction, onConfigurationChange, postSnapshotOperation, preBulkLoadHFile, preFlushSeqIDEstimation, preSnapshotOperation, recreateScanners, refreshStoreFiles, refreshStoreFiles, refreshStoreSizeAndTotalBytes, registerChildren, replaceStoreFiles, replayCompactionMarker, reportArchivedFilesForQuota, requestCompaction, requestCompaction, setDataBlockEncoderInTest, setScanInfo, shouldPerformMajorCompaction, snapshot, startReplayingFromWAL, stopReplayingFromWAL, throttleCompaction, timeOfOldestEdit, toString, triggerMajorCompaction, tryCommitRecoveredHFile, updateMetricsStore, updateSpaceQuotaAfterFileReplacement, upsert, versionsToReturn</code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHStore.MyStore.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHStore.MyStore.html
index 88dd3f8..d175ac3 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHStore.MyStore.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestHStore.MyStore.html
@@ -220,7 +220,7 @@
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.regionserver.HStore</h3>
-<code>add, add, addChangedReaderObserver, areWritesEnabled, assertBulkLoadHFileOk, bulkLoadHFile, bulkLoadHFile, cancelRequestedCompaction, canSplit, close, closeAndArchiveCompactedFiles, compact, createCacheConf, createFlushContext, createScanner, createStoreEngine, createStoreFileAndReader, createWriterInTmp, createWriterInTmp, deleteChangedReaderObserver, deregisterChildren, determineTTLFromFamily, doCompaction, finishCompactionRequest, flushCache, getAvgStoreFileAge, getBlockingFileCount, getCacheConfig, getColumnFamilyDescriptor, getColumnFamilyName, getCompactedCellsCount, getCompactedCellsSize, getCompactedFiles, getCompactedFilesCount, getCompactionCheckMultiplier, getCompactionPressure, getCompactionProgress, getCompactPriority, getComparator, getCoprocessorHost, getCurrentParallelPutCount, getDataBlockEncoder, getFileSystem, getFlushableSize, getFlushedCellsCount, getFlushedCellsSize, getFlushedOutputFileSize, getHFilesSize, getHRegion, getLastCompactSize, getMajorCompactedCellsCount, getMajorCompactedCellsSize, getMaxCompactedStoreFileRefCount, getMaxMemStoreTS, getMaxSequenceId, getMaxStoreFileAge, getMemStoreFlushSize, getMemstoreOnlyRowReadsCount, getMemStoreSize, getMinStoreFileAge, getMixedRowReadsCount, getNumHFiles, getNumReferenceFiles, getOffPeakHours, getRegionFileSystem, getRegionInfo, getScanInfo, getScanner, getScanners, getScanners, getScanners, getSize, getSnapshotSize, getSplitPoint, getStoreContext, getStoreEngine, getStorefiles, getStorefilesCount, getStoreFileSize, getStorefilesRootLevelIndexSize, getStorefilesSize, getStoreFileTtl, getStoreRefCount, getStoreSizeUncompressed, getTableName, getTotalStaticBloomSize, getTotalStaticIndexSize, hasReferences, hasTooManyStoreFiles, heapSize, isPrimaryReplicaStore, isSloppyMemStore, moveFileIntoPlace, needsCompaction, onConfigurationChange, postSnapshotOperation, preBulkLoadHFile, preFlushSeqIDEstimation, preSnapshotOperation, recreateScanners, refreshStoreFiles, refreshStoreFiles, refreshStoreSizeAndTotalBytes, registerChildren, replaceStoreFiles, replayCompactionMarker, reportArchivedFilesForQuota, requestCompaction, requestCompaction, setDataBlockEncoderInTest, setScanInfo, shouldPerformMajorCompaction, snapshot, startReplayingFromWAL, stopReplayingFromWAL, throttleCompaction, timeOfOldestEdit, toString, triggerMajorCompaction, tryCommitRecoveredHFile, updateMetricsStore, updateSpaceQuotaAfterFileReplacement, upsert, versionsToReturn</code></li>
+<code>add, add, addChangedReaderObserver, areWritesEnabled, assertBulkLoadHFileOk, bulkLoadHFile, bulkLoadHFile, cancelRequestedCompaction, canSplit, close, closeAndArchiveCompactedFiles, compact, createCacheConf, createFlushContext, createScanner, createStoreEngine, createStoreFileAndReader, createWriterInTmp, createWriterInTmp, deleteChangedReaderObserver, deregisterChildren, determineTTLFromFamily, doCompaction, finishCompactionRequest, flushCache, getAvgStoreFileAge, getBlockingFileCount, getCacheConfig, getColumnFamilyDescriptor, getColumnFamilyName, getCompactedCellsCount, getCompactedCellsSize, getCompactedFiles, getCompactedFilesCount, getCompactionCheckMultiplier, getCompactionPressure, getCompactionProgress, getCompactPriority, getComparator, getCoprocessorHost, getCurrentParallelPutCount, getDataBlockEncoder, getFileSystem, getFlushableSize, getFlushedCellsCount, getFlushedCellsSize, getFlushedOutputFileSize, getHFilesSize, getHRegion, getLastCompactSize, getMajorCompactedCellsCount, getMajorCompactedCellsSize, getMaxCompactedStoreFileRefCount, getMaxMemStoreTS, getMaxSequenceId, getMaxStoreFileAge, getMemStoreFlushSize, getMemstoreOnlyRowReadsCount, getMemStoreSize, getMinStoreFileAge, getMixedRowReadsCount, getNumHFiles, getNumReferenceFiles, getOffPeakHours, getRegionFileSystem, getRegionInfo, getScanInfo, getScanner, getScanners, getScanners, getScanners, getSize, getSnapshotSize, getSplitPoint, getStoreContext, getStoreEngine, getStorefiles, getStorefilesCount, getStoreFileSize, getStorefilesRootLevelIndexSize, getStorefilesSize, getStoreFileTtl, getStoreRefCount, getStoreSizeUncompressed, getTableName, getTotalStaticBloomSize, getTotalStaticIndexSize, hasReferences, hasTooManyStoreFiles, heapSize, isPrimaryReplicaStore, isSloppyMemStore, needsCompaction, onConfigurationChange, postSnapshotOperation, preBulkLoadHFile, preFlushSeqIDEstimation, preSnapshotOperation, recreateScanners, refreshStoreFiles, refreshStoreFiles, refreshStoreSizeAndTotalBytes, registerChildren, replaceStoreFiles, replayCompactionMarker, reportArchivedFilesForQuota, requestCompaction, requestCompaction, setDataBlockEncoderInTest, setScanInfo, shouldPerformMajorCompaction, snapshot, startReplayingFromWAL, stopReplayingFromWAL, throttleCompaction, timeOfOldestEdit, toString, triggerMajorCompaction, tryCommitRecoveredHFile, updateMetricsStore, updateSpaceQuotaAfterFileReplacement, upsert, versionsToReturn</code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
index 4497888..1750b34 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
@@ -729,12 +729,12 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionState.StateSource.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCompactionState.StateSource</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestAtomicOperation.TestStep.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestAtomicOperation.TestStep</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.Metric.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRegionServerReadRequestMetrics.Metric</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiLogThreshold.ActionType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestMultiLogThreshold.ActionType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCacheOnWriteInSchema.CacheOnWriteType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.Metric.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRegionServerReadRequestMetrics.Metric</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/DataBlockEncodingTool.Manipulation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DataBlockEncodingTool.Manipulation</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCompactionState.StateSource.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCompactionState.StateSource</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/rest/class-use/HBaseRESTTestingUtility.html b/testdevapidocs/org/apache/hadoop/hbase/rest/class-use/HBaseRESTTestingUtility.html
index 5215e79..83e9f2e 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/rest/class-use/HBaseRESTTestingUtility.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/rest/class-use/HBaseRESTTestingUtility.html
@@ -112,55 +112,47 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestGzipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestGzipFilter.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestVersionResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestVersionResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersWithFilters.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestScannersWithFilters.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannersWithLabels.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestScannersWithLabels.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestMultiRowResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSecurityHeadersFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestSecurityHeadersFilter.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestScannerResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRESTServerSSL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestRESTServerSSL.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestResourceFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestResourceFilter.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestNamespacesInstanceResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestNamespacesInstanceResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestTableResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRESTServerSSL.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestRESTServerSSL.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">RowResourceBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RowResourceBase.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestTableScan.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestScannersWithLabels.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestScannersWithLabels.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestStatusResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestStatusResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestTableResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestTableResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestVersionResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestVersionResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannerResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestScannerResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestResourceFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestResourceFilter.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestSchemaResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestSchemaResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
@@ -168,11 +160,19 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestTableScan.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestTableScan.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMultiRowResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestMultiRowResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSchemaResource.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestSchemaResource.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestScannersWithFilters.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestScannersWithFilters.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestGzipFilter.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/TestGzipFilter.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static <a href="../../../../../../org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.html" title="class in org.apache.hadoop.hbase.rest">HBaseRESTTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResourceBase.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/rest/RowResourceBase.html#REST_TEST_UTIL">REST_TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/rest/client/class-use/RemoteHTable.html b/testdevapidocs/org/apache/hadoop/hbase/rest/client/class-use/RemoteHTable.html
index 6d53bba..893f1c3 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/rest/client/class-use/RemoteHTable.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/rest/client/class-use/RemoteHTable.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/rest/client/RemoteHTable.html" title="class in org.apache.hadoop.hbase.rest.client">RemoteHTable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteHTableRetries.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteHTableRetries.html#remoteTable">remoteTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteTable.html#remoteTable">remoteTable</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/rest/client/RemoteHTable.html" title="class in org.apache.hadoop.hbase.rest.client">RemoteHTable</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRemoteTable.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteTable.html#remoteTable">remoteTable</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRemoteHTableRetries.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/rest/client/TestRemoteHTableRetries.html#remoteTable">remoteTable</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/snapshot/class-use/TestExportSnapshot.RegionPredicate.html b/testdevapidocs/org/apache/hadoop/hbase/snapshot/class-use/TestExportSnapshot.RegionPredicate.html
index 3ba7e47..72fc7df 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/snapshot/class-use/TestExportSnapshot.RegionPredicate.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/snapshot/class-use/TestExportSnapshot.RegionPredicate.html
@@ -104,11 +104,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshot.RegionPredicate.html" title="interface in org.apache.hadoop.hbase.snapshot">TestExportSnapshot.RegionPredicate</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshot.html#getBypassRegionPredicate--">getBypassRegionPredicate</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMobExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/TestMobExportSnapshot.html#getBypassRegionPredicate--">getBypassRegionPredicate</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshot.RegionPredicate.html" title="interface in org.apache.hadoop.hbase.snapshot">TestExportSnapshot.RegionPredicate</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMobExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/TestMobExportSnapshot.html#getBypassRegionPredicate--">getBypassRegionPredicate</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestExportSnapshot.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/snapshot/TestExportSnapshot.html#getBypassRegionPredicate--">getBypassRegionPredicate</a></span>()</code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/test/class-use/MetricsAssertHelper.html b/testdevapidocs/org/apache/hadoop/hbase/test/class-use/MetricsAssertHelper.html
index 80ec057..a235ae5 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/test/class-use/MetricsAssertHelper.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/test/class-use/MetricsAssertHelper.html
@@ -194,11 +194,11 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestClusterRestartFailover.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TestClusterRestartFailover.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMasterMetrics.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TestMasterMetrics.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestClusterRestartFailover.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/TestClusterRestartFailover.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -216,28 +216,28 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionServer.html#HELPER">HELPER</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsUserAggregate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsUserAggregate.html#HELPER">HELPER</a></span></code>&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetricsTableLatencies.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableLatencies.html#HELPER">HELPER</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestMetricsTableAggregate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableAggregate.html#HELPER">HELPER</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsRegionServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegionServer.html#HELPER">HELPER</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetricsHeapMemoryManager.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsHeapMemoryManager.html#HELPER">HELPER</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsUserAggregate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsUserAggregate.html#HELPER">HELPER</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestMetricsRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsRegion.html#HELPER">HELPER</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestMetricsTableAggregate.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestMetricsTableAggregate.html#HELPER">HELPER</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestHRegion.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/regionserver/TestHRegion.html#metricsAssertHelper">metricsAssertHelper</a></span></code>&nbsp;</td>
@@ -304,11 +304,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/TestThriftServer.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/TestCallQueue.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/test/MetricsAssertHelper.html" title="interface in org.apache.hadoop.hbase.test">MetricsAssertHelper</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestCallQueue.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/TestCallQueue.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestThriftServer.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/thrift/TestThriftServer.html#metricsHelper">metricsHelper</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
index e0aae80..82eb91c 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
@@ -260,11 +260,11 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestWithCellVisibilityLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestWithCellVisibilityLoadAndVerify.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadCommonCrawl.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadCommonCrawl.Counts</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestWithCellVisibilityLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestWithCellVisibilityLoadAndVerify.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadCommonCrawl.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadCommonCrawl.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
index 12bf261..1ccfe6b 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
@@ -202,8 +202,8 @@
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.Corruptions.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWALSplit.Corruptions</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/IOTestProvider.AllowedOperations.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">IOTestProvider.AllowedOperations</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/FaultyFSLog.FailureType.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">FaultyFSLog.FailureType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/IOTestProvider.AllowedOperations.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">IOTestProvider.AllowedOperations</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/overview-tree.html b/testdevapidocs/overview-tree.html
index faeb120..de98f38 100644
--- a/testdevapidocs/overview-tree.html
+++ b/testdevapidocs/overview-tree.html
@@ -1506,6 +1506,7 @@
 <ul>
 <li type="circle">org.apache.hadoop.fs.FSDataInputStream (implements org.apache.hadoop.fs.ByteBufferReadable, org.apache.hadoop.fs.CanSetDropBehind, org.apache.hadoop.fs.CanSetReadahead, org.apache.hadoop.fs.CanUnbuffer, org.apache.hadoop.fs.HasEnhancedByteBufferAccess, org.apache.hadoop.fs.HasFileDescriptor, org.apache.hadoop.fs.PositionedReadable, org.apache.hadoop.fs.Seekable, org.apache.hadoop.fs.StreamCapabilities)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestBlockIOUtils.MyFSDataInputStream</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestFSErrorsExposed.FaultyInputStream.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestFSErrorsExposed.FaultyInputStream</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWALFactory.InputStreamProxy.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWALFactory.InputStreamProxy</span></a></li>
 </ul>
@@ -1679,18 +1680,18 @@
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.TestTableSnapshotReducer.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableSnapshotInputFormat.TestTableSnapshotReducer</span></a> (implements org.apache.hadoop.mapred.Reducer&lt;K2,V2,K3,V3&gt;)</li>
 </ul>
 </li>
-<li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/MapreduceTestingShim.html" title="class in org.apache.hadoop.hbase.tool"><span class="typeNameLink">MapreduceTestingShim</span></a>
-<ul>
-<li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/MapreduceTestingShim.MapreduceV1Shim.html" title="class in org.apache.hadoop.hbase.tool"><span class="typeNameLink">MapreduceTestingShim.MapreduceV1Shim</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/MapreduceTestingShim.MapreduceV2Shim.html" title="class in org.apache.hadoop.hbase.tool"><span class="typeNameLink">MapreduceTestingShim.MapreduceV2Shim</span></a></li>
-</ul>
-</li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/MapreduceTestingShim.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">MapreduceTestingShim</span></a>
 <ul>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/MapreduceTestingShim.MapreduceV1Shim.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">MapreduceTestingShim.MapreduceV1Shim</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/MapreduceTestingShim.MapreduceV2Shim.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">MapreduceTestingShim.MapreduceV2Shim</span></a></li>
 </ul>
 </li>
+<li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/MapreduceTestingShim.html" title="class in org.apache.hadoop.hbase.tool"><span class="typeNameLink">MapreduceTestingShim</span></a>
+<ul>
+<li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/MapreduceTestingShim.MapreduceV1Shim.html" title="class in org.apache.hadoop.hbase.tool"><span class="typeNameLink">MapreduceTestingShim.MapreduceV1Shim</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.tool.<a href="org/apache/hadoop/hbase/tool/MapreduceTestingShim.MapreduceV2Shim.html" title="class in org.apache.hadoop.hbase.tool"><span class="typeNameLink">MapreduceTestingShim.MapreduceV2Shim</span></a></li>
+</ul>
+</li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MasterProcedureSchedulerPerformanceEvaluation.RegionProcedureFactory.html" title="class in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MasterProcedureSchedulerPerformanceEvaluation.RegionProcedureFactory</span></a> (implements org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MasterProcedureSchedulerPerformanceEvaluation.ProcedureFactory.html" title="interface in org.apache.hadoop.hbase.master.procedure">MasterProcedureSchedulerPerformanceEvaluation.ProcedureFactory</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MasterProcedureSchedulerPerformanceEvaluation.TableProcedureFactory.html" title="class in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MasterProcedureSchedulerPerformanceEvaluation.TableProcedureFactory</span></a> (implements org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MasterProcedureSchedulerPerformanceEvaluation.ProcedureFactory.html" title="interface in org.apache.hadoop.hbase.master.procedure">MasterProcedureSchedulerPerformanceEvaluation.ProcedureFactory</a>)</li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/MasterProcedureTestingUtility.html" title="class in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MasterProcedureTestingUtility</span></a></li>
@@ -2690,8 +2691,8 @@
 </li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableSnapshotInputFormatTestBase</span></a>
 <ul>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableSnapshotInputFormat</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableSnapshotInputFormat</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableSnapshotInputFormat</span></a></li>
 </ul>
 </li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestAccessController.BulkLoadAccessTestAction.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">TestAccessController.BulkLoadAccessTestAction</span></a> (implements org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/SecureTestUtil.AccessTestAction.html" title="interface in org.apache.hadoop.hbase.security.access">SecureTestUtil.AccessTestAction</a>)</li>
@@ -4107,8 +4108,8 @@
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestRoundRobinTableInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestRoundRobinTableInputFormat</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestRoundRobinTableInputFormat.SplitComparator.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestRoundRobinTableInputFormat.SplitComparator</span></a> (implements java.util.<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestRowComparator.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestRowComparator</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestRowCounter.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestRowCounter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestRowCounter.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestRowCounter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestRowCounter.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestRowCounter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestRowCounter.OutputReader.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestRowCounter.OutputReader</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestRowIndexV1DataEncoder.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestRowIndexV1DataEncoder</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestRowPrefixBloomFilter.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRowPrefixBloomFilter</span></a></li>
@@ -4398,8 +4399,8 @@
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/TestTableDescriptorModificationFromClient.html" title="class in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">TestTableDescriptorModificationFromClient</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestTableDescriptorUtils.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestTableDescriptorUtils</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestTableFavoredNodes.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestTableFavoredNodes</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableInputFormat</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableInputFormat</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableInputFormat</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableInputFormat.ExampleVerifier.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableInputFormat.ExampleVerifier</span></a> (implements org.apache.hadoop.hbase.mapred.TableMap&lt;K,V&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableInputFormatBase.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableInputFormatBase</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableInputFormatBase.ConnectionForMergeTesting.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableInputFormatBase.ConnectionForMergeTesting</span></a> (implements org.apache.hadoop.hbase.client.Connection)</li>
@@ -4421,12 +4422,12 @@
 </li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableMapReduceBase.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableMapReduceBase</span></a>
 <ul>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableMapReduce</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableMapReduce</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableMapReduce</span></a></li>
 </ul>
 </li>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableMapReduceUtil</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableMapReduceUtil</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestTableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestTableMapReduceUtil</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/TestTableName.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">TestTableName</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/TestTableName.Names.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">TestTableName.Names</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestTableOperationException.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestTableOperationException</span></a></li>
@@ -4969,49 +4970,49 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestRowCounter.Outs.html" title="enum in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestRowCounter.Outs</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.TestTableSnapshotCounters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TestTableSnapshotInputFormat.TestTableSnapshotCounters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapred.<a href="org/apache/hadoop/hbase/mapred/TestRowCounter.Outs.html" title="enum in org.apache.hadoop.hbase.mapred"><span class="typeNameLink">TestRowCounter.Outs</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/ProcessBasedLocalHBaseCluster.ServerType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">ProcessBasedLocalHBaseCluster.ServerType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.normalizer.<a href="org/apache/hadoop/hbase/master/normalizer/TestRegionNormalizerWorkQueue.Action.html" title="enum in org.apache.hadoop.hbase.master.normalizer"><span class="typeNameLink">TestRegionNormalizerWorkQueue.Action</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="org/apache/hadoop/hbase/master/DummyRegionProcedureState.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">DummyRegionProcedureState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestCacheOnWrite.CacheOnWriteType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TagUsage.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TagUsage</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCacheOnWriteInSchema.CacheOnWriteType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestMultiLogThreshold.ActionType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestMultiLogThreshold.ActionType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCompactionState.StateSource.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCompactionState.StateSource</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/DataBlockEncodingTool.Manipulation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DataBlockEncodingTool.Manipulation</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestAtomicOperation.TestStep.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestAtomicOperation.TestStep</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.Metric.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRegionServerReadRequestMetrics.Metric</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestCompactionState.StateSource.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCompactionState.StateSource</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/DataBlockEncodingTool.Manipulation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DataBlockEncodingTool.Manipulation</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="org/apache/hadoop/hbase/regionserver/wal/FaultyProtobufLogReader.FailureType.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">FaultyProtobufLogReader.FailureType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.visibility.<a href="org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithDeletes.DeleteMark.html" title="enum in org.apache.hadoop.hbase.security.visibility"><span class="typeNameLink">TestVisibilityLabelsWithDeletes.DeleteMark</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TagUsage.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TagUsage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestCacheOnWrite.CacheOnWriteType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/FaultyFSLog.FailureType.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">FaultyFSLog.FailureType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWALSplit.Corruptions.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWALSplit.Corruptions</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/IOTestProvider.AllowedOperations.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">IOTestProvider.AllowedOperations</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.thrift.<a href="org/apache/hadoop/hbase/thrift/ErrorThrowingGetObserver.ErrorType.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">ErrorThrowingGetObserver.ErrorType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ResourceChecker.Phase.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ResourceChecker.Phase</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures.TestStateMachineProcedure.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestProcedureBypass.StuckStateMachineState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureBypass.StuckStateMachineState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.TestSMProcedureState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestStateMachineProcedure.TestSMProcedureState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureRecovery.TestStateMachineProcedure.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.ACTION.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestDDLMasterFailover.ACTION</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="org/apache/hadoop/hbase/chaos/actions/RollingBatchSuspendResumeRsAction.SuspendOrResume.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchSuspendResumeRsAction.SuspendOrResume</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="org/apache/hadoop/hbase/chaos/actions/RollingBatchRestartRsAction.KillOrStart.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchRestartRsAction.KillOrStart</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestProcedureBypass.StuckStateMachineState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureBypass.StuckStateMachineState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures.TestStateMachineProcedure.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.TestSMProcedureState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestStateMachineProcedure.TestSMProcedureState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseClusterManager.Signal.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseClusterManager.Signal</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseClusterManager.CommandProvider.Operation</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="org/apache/hadoop/hbase/chaos/actions/RollingBatchRestartRsAction.KillOrStart.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchRestartRsAction.KillOrStart</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.chaos.actions.<a href="org/apache/hadoop/hbase/chaos/actions/RollingBatchSuspendResumeRsAction.SuspendOrResume.html" title="enum in org.apache.hadoop.hbase.chaos.actions"><span class="typeNameLink">RollingBatchSuspendResumeRsAction.SuspendOrResume</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ZNodeClusterManager.CmdType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ZNodeClusterManager.CmdType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.ACTION.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestDDLMasterFailover.ACTION</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterManager.ServiceType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestWithCellVisibilityLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestWithCellVisibilityLoadAndVerify.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestLoadCommonCrawl.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadCommonCrawl.Counts</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterManager.ServiceType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleCommand</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/RESTApiClusterManager.RoleState.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/RESTApiClusterManager.HealthSummary.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.HealthSummary</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.Service</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/ZNodeClusterManager.CmdType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ZNodeClusterManager.CmdType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.<a href="org/apache/hadoop/hbase/rest/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase.rest"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/TestIncrementalBackupMergeWithFailures.FailurePhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">TestIncrementalBackupMergeWithFailures.FailurePhase</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="org/apache/hadoop/hbase/backup/TestBackupDeleteWithFailures.Failure.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">TestBackupDeleteWithFailures.Failure</span></a></li>
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html
index 57fab54..da88806 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/client/TestAsyncNonMetaRegionLocator.html
@@ -61,14 +61,14 @@
 <span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.util.ServerRegionReplicaUtil;<a name="line.53"></a>
 <span class="sourceLineNo">054</span>import org.junit.After;<a name="line.54"></a>
 <span class="sourceLineNo">055</span>import org.junit.AfterClass;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.junit.BeforeClass;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.junit.ClassRule;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.junit.Test;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.junit.experimental.categories.Category;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.junit.runner.RunWith;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.junit.runners.Parameterized;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.slf4j.Logger;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.slf4j.LoggerFactory;<a name="line.63"></a>
+<span class="sourceLineNo">056</span>import org.junit.Before;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.junit.BeforeClass;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.junit.ClassRule;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.junit.Test;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.junit.experimental.categories.Category;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.junit.runner.RunWith;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.junit.runners.Parameterized;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.junit.runners.Parameterized.Parameter;<a name="line.63"></a>
 <span class="sourceLineNo">064</span><a name="line.64"></a>
 <span class="sourceLineNo">065</span>import org.apache.hbase.thirdparty.com.google.common.io.Closeables;<a name="line.65"></a>
 <span class="sourceLineNo">066</span><a name="line.66"></a>
@@ -80,404 +80,395 @@
 <span class="sourceLineNo">072</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.72"></a>
 <span class="sourceLineNo">073</span>    HBaseClassTestRule.forClass(TestAsyncNonMetaRegionLocator.class);<a name="line.73"></a>
 <span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>  private static final Logger LOG = LoggerFactory.getLogger(TestAsyncNonMetaRegionLocator.class);<a name="line.75"></a>
+<span class="sourceLineNo">075</span>  private static final HBaseTestingUtil TEST_UTIL = new HBaseTestingUtil();<a name="line.75"></a>
 <span class="sourceLineNo">076</span><a name="line.76"></a>
-<span class="sourceLineNo">077</span>  private static final HBaseTestingUtil TEST_UTIL = new HBaseTestingUtil();<a name="line.77"></a>
+<span class="sourceLineNo">077</span>  private static final TableName TABLE_NAME = TableName.valueOf("async");<a name="line.77"></a>
 <span class="sourceLineNo">078</span><a name="line.78"></a>
-<span class="sourceLineNo">079</span>  private static TableName TABLE_NAME = TableName.valueOf("async");<a name="line.79"></a>
-<span class="sourceLineNo">080</span><a name="line.80"></a>
-<span class="sourceLineNo">081</span>  private static byte[] FAMILY = Bytes.toBytes("cf");<a name="line.81"></a>
-<span class="sourceLineNo">082</span>  private static final int META_STOREFILE_REFRESH_PERIOD = 100;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>  private static final int NB_SERVERS = 4;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>  private static int numOfMetaReplica = NB_SERVERS - 1;<a name="line.84"></a>
-<span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>  private static AsyncConnectionImpl CONN;<a name="line.86"></a>
+<span class="sourceLineNo">079</span>  private static byte[] FAMILY = Bytes.toBytes("cf");<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  private static final int NB_SERVERS = 4;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>  private static final int NUM_OF_META_REPLICA = NB_SERVERS - 1;<a name="line.81"></a>
+<span class="sourceLineNo">082</span><a name="line.82"></a>
+<span class="sourceLineNo">083</span>  private static byte[][] SPLIT_KEYS;<a name="line.83"></a>
+<span class="sourceLineNo">084</span><a name="line.84"></a>
+<span class="sourceLineNo">085</span>  private AsyncConnectionImpl conn;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>  private AsyncNonMetaRegionLocator locator;<a name="line.86"></a>
 <span class="sourceLineNo">087</span><a name="line.87"></a>
-<span class="sourceLineNo">088</span>  private static AsyncNonMetaRegionLocator LOCATOR;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>  private static ConnectionRegistry registry;<a name="line.89"></a>
+<span class="sourceLineNo">088</span>  @Parameter<a name="line.88"></a>
+<span class="sourceLineNo">089</span>  public CatalogReplicaMode metaReplicaMode;<a name="line.89"></a>
 <span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>  private static byte[][] SPLIT_KEYS;<a name="line.91"></a>
-<span class="sourceLineNo">092</span>  private CatalogReplicaMode metaReplicaMode;<a name="line.92"></a>
-<span class="sourceLineNo">093</span><a name="line.93"></a>
-<span class="sourceLineNo">094</span>  @BeforeClass<a name="line.94"></a>
-<span class="sourceLineNo">095</span>  public static void setUp() throws Exception {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.96"></a>
-<span class="sourceLineNo">097</span>    // Enable hbase:meta replication.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>    conf.setBoolean(ServerRegionReplicaUtil.REGION_REPLICA_REPLICATION_CATALOG_CONF_KEY, true);<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    conf.setLong("replication.source.sleepforretries", 10);    // 10 ms<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>    TEST_UTIL.startMiniCluster(NB_SERVERS);<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    Admin admin = TEST_UTIL.getAdmin();<a name="line.102"></a>
-<span class="sourceLineNo">103</span>    admin.balancerSwitch(false, true);<a name="line.103"></a>
-<span class="sourceLineNo">104</span><a name="line.104"></a>
-<span class="sourceLineNo">105</span>    // Enable hbase:meta replication.<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    HBaseTestingUtil.setReplicas(admin, TableName.META_TABLE_NAME, numOfMetaReplica);<a name="line.106"></a>
-<span class="sourceLineNo">107</span>    TEST_UTIL.waitFor(30000, () -&gt; TEST_UTIL.getMiniHBaseCluster().getRegions(<a name="line.107"></a>
-<span class="sourceLineNo">108</span>      TableName.META_TABLE_NAME).size() &gt;= numOfMetaReplica);<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>    registry = ConnectionRegistryFactory.getRegistry(TEST_UTIL.getConfiguration());<a name="line.110"></a>
-<span class="sourceLineNo">111</span><a name="line.111"></a>
-<span class="sourceLineNo">112</span>    SPLIT_KEYS = new byte[8][];<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    for (int i = 111; i &lt; 999; i += 111) {<a name="line.113"></a>
-<span class="sourceLineNo">114</span>      SPLIT_KEYS[i / 111 - 1] = Bytes.toBytes(String.format("%03d", i));<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    }<a name="line.115"></a>
+<span class="sourceLineNo">091</span>  @BeforeClass<a name="line.91"></a>
+<span class="sourceLineNo">092</span>  public static void setUp() throws Exception {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    // Enable hbase:meta replication.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    conf.setBoolean(ServerRegionReplicaUtil.REGION_REPLICA_REPLICATION_CATALOG_CONF_KEY, true);<a name="line.95"></a>
+<span class="sourceLineNo">096</span>    conf.setLong("replication.source.sleepforretries", 10); // 10 ms<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>    TEST_UTIL.startMiniCluster(NB_SERVERS);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>    Admin admin = TEST_UTIL.getAdmin();<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    admin.balancerSwitch(false, true);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>    // Enable hbase:meta replication.<a name="line.102"></a>
+<span class="sourceLineNo">103</span>    HBaseTestingUtil.setReplicas(admin, TableName.META_TABLE_NAME, NUM_OF_META_REPLICA);<a name="line.103"></a>
+<span class="sourceLineNo">104</span>    TEST_UTIL.waitFor(30000, () -&gt; TEST_UTIL.getMiniHBaseCluster()<a name="line.104"></a>
+<span class="sourceLineNo">105</span>      .getRegions(TableName.META_TABLE_NAME).size() &gt;= NUM_OF_META_REPLICA);<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>    SPLIT_KEYS = new byte[8][];<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    for (int i = 111; i &lt; 999; i += 111) {<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      SPLIT_KEYS[i / 111 - 1] = Bytes.toBytes(String.format("%03d", i));<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    }<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  }<a name="line.111"></a>
+<span class="sourceLineNo">112</span><a name="line.112"></a>
+<span class="sourceLineNo">113</span>  @AfterClass<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  public static void tearDown() throws Exception {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    TEST_UTIL.shutdownMiniCluster();<a name="line.115"></a>
 <span class="sourceLineNo">116</span>  }<a name="line.116"></a>
 <span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  @AfterClass<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public static void tearDown() throws Exception {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    Closeables.close(CONN, true);<a name="line.120"></a>
-<span class="sourceLineNo">121</span>    TEST_UTIL.shutdownMiniCluster();<a name="line.121"></a>
-<span class="sourceLineNo">122</span>  }<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>  @After<a name="line.124"></a>
-<span class="sourceLineNo">125</span>  public void tearDownAfterTest() throws IOException {<a name="line.125"></a>
-<span class="sourceLineNo">126</span>    Admin admin = TEST_UTIL.getAdmin();<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    if (admin.tableExists(TABLE_NAME)) {<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      if (admin.isTableEnabled(TABLE_NAME)) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>        TEST_UTIL.getAdmin().disableTable(TABLE_NAME);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      }<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      TEST_UTIL.getAdmin().deleteTable(TABLE_NAME);<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    }<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    LOCATOR.clearCache(TABLE_NAME);<a name="line.133"></a>
-<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>  @Parameterized.Parameters<a name="line.136"></a>
-<span class="sourceLineNo">137</span>  public static Collection&lt;Object[]&gt; parameters() {<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    return Arrays.asList(new Object[][] {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>      { null },<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      { CatalogReplicaMode.LOAD_BALANCE.toString() }<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    });<a name="line.141"></a>
-<span class="sourceLineNo">142</span>  }<a name="line.142"></a>
-<span class="sourceLineNo">143</span><a name="line.143"></a>
-<span class="sourceLineNo">144</span>  public TestAsyncNonMetaRegionLocator(String clientMetaReplicaMode) throws Exception {<a name="line.144"></a>
-<span class="sourceLineNo">145</span>    Configuration c = new Configuration(TEST_UTIL.getConfiguration());<a name="line.145"></a>
-<span class="sourceLineNo">146</span>    // Enable meta replica LoadBalance mode for this connection.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    if (clientMetaReplicaMode != null) {<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      c.set(RegionLocator.LOCATOR_META_REPLICAS_MODE, clientMetaReplicaMode);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      metaReplicaMode = CatalogReplicaMode.fromString(clientMetaReplicaMode);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>    }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>    CONN = new AsyncConnectionImpl(c, registry,<a name="line.152"></a>
-<span class="sourceLineNo">153</span>      registry.getClusterId().get(), null, User.getCurrent());<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    LOCATOR = new AsyncNonMetaRegionLocator(CONN);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>  }<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>  private void createSingleRegionTable() throws IOException, InterruptedException {<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    TEST_UTIL.createTable(TABLE_NAME, FAMILY);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>    TEST_UTIL.waitTableAvailable(TABLE_NAME);<a name="line.159"></a>
-<span class="sourceLineNo">160</span>  }<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>  private CompletableFuture&lt;HRegionLocation&gt; getDefaultRegionLocation(TableName tableName,<a name="line.162"></a>
-<span class="sourceLineNo">163</span>      byte[] row, RegionLocateType locateType, boolean reload) {<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    return LOCATOR<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      .getRegionLocations(tableName, row, RegionReplicaUtil.DEFAULT_REPLICA_ID, locateType, reload)<a name="line.165"></a>
-<span class="sourceLineNo">166</span>      .thenApply(RegionLocations::getDefaultRegionLocation);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  }<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>  @Test<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  public void testNoTable() throws InterruptedException {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      try {<a name="line.172"></a>
-<span class="sourceLineNo">173</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get();<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      } catch (ExecutionException e) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        assertThat(e.getCause(), instanceOf(TableNotFoundException.class));<a name="line.175"></a>
-<span class="sourceLineNo">176</span>      }<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    }<a name="line.177"></a>
-<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>  @Test<a name="line.180"></a>
-<span class="sourceLineNo">181</span>  public void testDisableTable() throws IOException, InterruptedException {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    createSingleRegionTable();<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    TEST_UTIL.getAdmin().disableTable(TABLE_NAME);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      try {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get();<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      } catch (ExecutionException e) {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        assertThat(e.getCause(), instanceOf(TableNotFoundException.class));<a name="line.188"></a>
-<span class="sourceLineNo">189</span>      }<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    }<a name="line.190"></a>
+<span class="sourceLineNo">118</span>  @Before<a name="line.118"></a>
+<span class="sourceLineNo">119</span>  public void setUpBeforeTest() throws InterruptedException, ExecutionException, IOException {<a name="line.119"></a>
+<span class="sourceLineNo">120</span>    Configuration c = new Configuration(TEST_UTIL.getConfiguration());<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Enable meta replica LoadBalance mode for this connection.<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    c.set(RegionLocator.LOCATOR_META_REPLICAS_MODE, metaReplicaMode.toString());<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    ConnectionRegistry registry =<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      ConnectionRegistryFactory.getRegistry(TEST_UTIL.getConfiguration());<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    conn =<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      new AsyncConnectionImpl(c, registry, registry.getClusterId().get(), null, User.getCurrent());<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    locator = new AsyncNonMetaRegionLocator(conn);<a name="line.127"></a>
+<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>  @After<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  public void tearDownAfterTest() throws IOException {<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    Admin admin = TEST_UTIL.getAdmin();<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    if (admin.tableExists(TABLE_NAME)) {<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      if (admin.isTableEnabled(TABLE_NAME)) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>        admin.disableTable(TABLE_NAME);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
+<span class="sourceLineNo">137</span>      admin.deleteTable(TABLE_NAME);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    }<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    Closeables.close(conn, true);<a name="line.139"></a>
+<span class="sourceLineNo">140</span>  }<a name="line.140"></a>
+<span class="sourceLineNo">141</span><a name="line.141"></a>
+<span class="sourceLineNo">142</span>  @Parameterized.Parameters<a name="line.142"></a>
+<span class="sourceLineNo">143</span>  public static Collection&lt;Object[]&gt; parameters() {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    return Arrays<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      .asList(new Object[][] { { CatalogReplicaMode.NONE }, { CatalogReplicaMode.LOAD_BALANCE } });<a name="line.145"></a>
+<span class="sourceLineNo">146</span>  }<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>  private void createSingleRegionTable() throws IOException, InterruptedException {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    TEST_UTIL.createTable(TABLE_NAME, FAMILY);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    TEST_UTIL.waitTableAvailable(TABLE_NAME);<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  }<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>  private CompletableFuture&lt;HRegionLocation&gt; getDefaultRegionLocation(TableName tableName,<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    byte[] row, RegionLocateType locateType, boolean reload) {<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    return locator<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      .getRegionLocations(tableName, row, RegionReplicaUtil.DEFAULT_REPLICA_ID, locateType, reload)<a name="line.156"></a>
+<span class="sourceLineNo">157</span>      .thenApply(RegionLocations::getDefaultRegionLocation);<a name="line.157"></a>
+<span class="sourceLineNo">158</span>  }<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>  @Test<a name="line.160"></a>
+<span class="sourceLineNo">161</span>  public void testNoTable() throws InterruptedException {<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      try {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get();<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      } catch (ExecutionException e) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>        assertThat(e.getCause(), instanceOf(TableNotFoundException.class));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    }<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  }<a name="line.169"></a>
+<span class="sourceLineNo">170</span><a name="line.170"></a>
+<span class="sourceLineNo">171</span>  @Test<a name="line.171"></a>
+<span class="sourceLineNo">172</span>  public void testDisableTable() throws IOException, InterruptedException {<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    createSingleRegionTable();<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    TEST_UTIL.getAdmin().disableTable(TABLE_NAME);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.175"></a>
+<span class="sourceLineNo">176</span>      try {<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get();<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      } catch (ExecutionException e) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        assertThat(e.getCause(), instanceOf(TableNotFoundException.class));<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    }<a name="line.181"></a>
+<span class="sourceLineNo">182</span>  }<a name="line.182"></a>
+<span class="sourceLineNo">183</span><a name="line.183"></a>
+<span class="sourceLineNo">184</span>  private void assertLocEquals(byte[] startKey, byte[] endKey, ServerName serverName,<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    HRegionLocation loc) {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    RegionInfo info = loc.getRegion();<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    assertEquals(TABLE_NAME, info.getTable());<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    assertArrayEquals(startKey, info.getStartKey());<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    assertArrayEquals(endKey, info.getEndKey());<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    assertEquals(serverName, loc.getServerName());<a name="line.190"></a>
 <span class="sourceLineNo">191</span>  }<a name="line.191"></a>
 <span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>  private void assertLocEquals(byte[] startKey, byte[] endKey, ServerName serverName,<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      HRegionLocation loc) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    RegionInfo info = loc.getRegion();<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    assertEquals(TABLE_NAME, info.getTable());<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    assertArrayEquals(startKey, info.getStartKey());<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    assertArrayEquals(endKey, info.getEndKey());<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    assertEquals(serverName, loc.getServerName());<a name="line.199"></a>
-<span class="sourceLineNo">200</span>  }<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>  @Test<a name="line.202"></a>
-<span class="sourceLineNo">203</span>  public void testSingleRegionTable() throws IOException, InterruptedException, ExecutionException {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    createSingleRegionTable();<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    ServerName serverName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.207"></a>
-<span class="sourceLineNo">208</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    }<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    byte[] randKey = new byte[ThreadLocalRandom.current().nextInt(128)];<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    ThreadLocalRandom.current().nextBytes(randKey);<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.213"></a>
-<span class="sourceLineNo">214</span>        getDefaultRegionLocation(TABLE_NAME, randKey, locateType, false).get());<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    }<a name="line.215"></a>
-<span class="sourceLineNo">216</span>  }<a name="line.216"></a>
-<span class="sourceLineNo">217</span><a name="line.217"></a>
-<span class="sourceLineNo">218</span>  private void createMultiRegionTable() throws IOException, InterruptedException {<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    TEST_UTIL.createTable(TABLE_NAME, FAMILY, SPLIT_KEYS);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    TEST_UTIL.waitTableAvailable(TABLE_NAME);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>  }<a name="line.221"></a>
-<span class="sourceLineNo">222</span><a name="line.222"></a>
-<span class="sourceLineNo">223</span>  private static byte[][] getStartKeys() {<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    byte[][] startKeys = new byte[SPLIT_KEYS.length + 1][];<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    startKeys[0] = EMPTY_START_ROW;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    System.arraycopy(SPLIT_KEYS, 0, startKeys, 1, SPLIT_KEYS.length);<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    return startKeys;<a name="line.227"></a>
-<span class="sourceLineNo">228</span>  }<a name="line.228"></a>
-<span class="sourceLineNo">229</span><a name="line.229"></a>
-<span class="sourceLineNo">230</span>  private static byte[][] getEndKeys() {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>    byte[][] endKeys = Arrays.copyOf(SPLIT_KEYS, SPLIT_KEYS.length + 1);<a name="line.231"></a>
-<span class="sourceLineNo">232</span>    endKeys[endKeys.length - 1] = EMPTY_START_ROW;<a name="line.232"></a>
-<span class="sourceLineNo">233</span>    return endKeys;<a name="line.233"></a>
-<span class="sourceLineNo">234</span>  }<a name="line.234"></a>
-<span class="sourceLineNo">235</span><a name="line.235"></a>
-<span class="sourceLineNo">236</span>  private ServerName[] getLocations(byte[][] startKeys) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>    ServerName[] serverNames = new ServerName[startKeys.length];<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream().map(t -&gt; t.getRegionServer())<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      .forEach(rs -&gt; {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        rs.getRegions(TABLE_NAME).forEach(r -&gt; {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>          serverNames[Arrays.binarySearch(startKeys, r.getRegionInfo().getStartKey(),<a name="line.241"></a>
-<span class="sourceLineNo">242</span>            Bytes::compareTo)] = rs.getServerName();<a name="line.242"></a>
-<span class="sourceLineNo">243</span>        });<a name="line.243"></a>
-<span class="sourceLineNo">244</span>      });<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    return serverNames;<a name="line.245"></a>
-<span class="sourceLineNo">246</span>  }<a name="line.246"></a>
-<span class="sourceLineNo">247</span><a name="line.247"></a>
-<span class="sourceLineNo">248</span>  @Test<a name="line.248"></a>
-<span class="sourceLineNo">249</span>  public void testMultiRegionTable() throws IOException, InterruptedException {<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    createMultiRegionTable();<a name="line.250"></a>
-<span class="sourceLineNo">251</span>    byte[][] startKeys = getStartKeys();<a name="line.251"></a>
-<span class="sourceLineNo">252</span>    ServerName[] serverNames = getLocations(startKeys);<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    IntStream.range(0, 2).forEach(n -&gt; IntStream.range(0, startKeys.length).forEach(i -&gt; {<a name="line.253"></a>
-<span class="sourceLineNo">254</span>      try {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>        assertLocEquals(startKeys[i], i == startKeys.length - 1 ? EMPTY_END_ROW : startKeys[i + 1],<a name="line.255"></a>
-<span class="sourceLineNo">256</span>          serverNames[i],<a name="line.256"></a>
-<span class="sourceLineNo">257</span>          getDefaultRegionLocation(TABLE_NAME, startKeys[i], RegionLocateType.CURRENT, false)<a name="line.257"></a>
-<span class="sourceLineNo">258</span>            .get());<a name="line.258"></a>
-<span class="sourceLineNo">259</span>      } catch (InterruptedException | ExecutionException e) {<a name="line.259"></a>
-<span class="sourceLineNo">260</span>        throw new RuntimeException(e);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>      }<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    }));<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>    LOCATOR.clearCache(TABLE_NAME);<a name="line.264"></a>
-<span class="sourceLineNo">265</span>    IntStream.range(0, 2).forEach(n -&gt; IntStream.range(0, startKeys.length).forEach(i -&gt; {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      try {<a name="line.266"></a>
-<span class="sourceLineNo">267</span>        assertLocEquals(startKeys[i], i == startKeys.length - 1 ? EMPTY_END_ROW : startKeys[i + 1],<a name="line.267"></a>
-<span class="sourceLineNo">268</span>          serverNames[i],<a name="line.268"></a>
-<span class="sourceLineNo">269</span>          getDefaultRegionLocation(TABLE_NAME, startKeys[i], RegionLocateType.AFTER, false).get());<a name="line.269"></a>
-<span class="sourceLineNo">270</span>      } catch (InterruptedException | ExecutionException e) {<a name="line.270"></a>
-<span class="sourceLineNo">271</span>        throw new RuntimeException(e);<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      }<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    }));<a name="line.273"></a>
-<span class="sourceLineNo">274</span><a name="line.274"></a>
-<span class="sourceLineNo">275</span>    LOCATOR.clearCache(TABLE_NAME);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    byte[][] endKeys = getEndKeys();<a name="line.276"></a>
-<span class="sourceLineNo">277</span>    IntStream.range(0, 2).forEach(<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      n -&gt; IntStream.range(0, endKeys.length).map(i -&gt; endKeys.length - 1 - i).forEach(i -&gt; {<a name="line.278"></a>
-<span class="sourceLineNo">279</span>        try {<a name="line.279"></a>
-<span class="sourceLineNo">280</span>          assertLocEquals(i == 0 ? EMPTY_START_ROW : endKeys[i - 1], endKeys[i], serverNames[i],<a name="line.280"></a>
-<span class="sourceLineNo">281</span>            getDefaultRegionLocation(TABLE_NAME, endKeys[i], RegionLocateType.BEFORE, false).get());<a name="line.281"></a>
-<span class="sourceLineNo">282</span>        } catch (InterruptedException | ExecutionException e) {<a name="line.282"></a>
-<span class="sourceLineNo">283</span>          throw new RuntimeException(e);<a name="line.283"></a>
-<span class="sourceLineNo">284</span>        }<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      }));<a name="line.285"></a>
-<span class="sourceLineNo">286</span>  }<a name="line.286"></a>
-<span class="sourceLineNo">287</span><a name="line.287"></a>
-<span class="sourceLineNo">288</span>  @Test<a name="line.288"></a>
-<span class="sourceLineNo">289</span>  public void testRegionMove() throws IOException, InterruptedException, ExecutionException {<a name="line.289"></a>
-<span class="sourceLineNo">290</span>    createSingleRegionTable();<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    ServerName serverName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.291"></a>
-<span class="sourceLineNo">292</span>    HRegionLocation loc =<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get();<a name="line.293"></a>
-<span class="sourceLineNo">294</span>    assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName, loc);<a name="line.294"></a>
-<span class="sourceLineNo">295</span>    ServerName newServerName = TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream()<a name="line.295"></a>
-<span class="sourceLineNo">296</span>      .map(t -&gt; t.getRegionServer().getServerName()).filter(sn -&gt; !sn.equals(serverName)).findAny()<a name="line.296"></a>
-<span class="sourceLineNo">297</span>      .get();<a name="line.297"></a>
-<span class="sourceLineNo">298</span><a name="line.298"></a>
-<span class="sourceLineNo">299</span>    TEST_UTIL.getAdmin().move(Bytes.toBytes(loc.getRegion().getEncodedName()), newServerName);<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    while (!TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName()<a name="line.300"></a>
-<span class="sourceLineNo">301</span>      .equals(newServerName)) {<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      Thread.sleep(100);<a name="line.302"></a>
-<span class="sourceLineNo">303</span>    }<a name="line.303"></a>
-<span class="sourceLineNo">304</span>    // Should be same as it is in cache<a name="line.304"></a>
-<span class="sourceLineNo">305</span>    assertSame(loc,<a name="line.305"></a>
-<span class="sourceLineNo">306</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>    LOCATOR.updateCachedLocationOnError(loc, null);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    // null error will not trigger a cache cleanup<a name="line.308"></a>
-<span class="sourceLineNo">309</span>    assertSame(loc,<a name="line.309"></a>
-<span class="sourceLineNo">310</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get());<a name="line.310"></a>
-<span class="sourceLineNo">311</span>    LOCATOR.updateCachedLocationOnError(loc, new NotServingRegionException());<a name="line.311"></a>
-<span class="sourceLineNo">312</span>    assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, newServerName,<a name="line.312"></a>
-<span class="sourceLineNo">313</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get());<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  // usually locate after will return the same result, so we add a test to make it return different<a name="line.316"></a>
-<span class="sourceLineNo">317</span>  // result.<a name="line.317"></a>
-<span class="sourceLineNo">318</span>  @Test<a name="line.318"></a>
-<span class="sourceLineNo">319</span>  public void testLocateAfter() throws IOException, InterruptedException, ExecutionException {<a name="line.319"></a>
-<span class="sourceLineNo">320</span>    byte[] row = Bytes.toBytes("1");<a name="line.320"></a>
-<span class="sourceLineNo">321</span>    byte[] splitKey = Arrays.copyOf(row, 2);<a name="line.321"></a>
-<span class="sourceLineNo">322</span>    TEST_UTIL.createTable(TABLE_NAME, FAMILY, new byte[][] { splitKey });<a name="line.322"></a>
-<span class="sourceLineNo">323</span>    TEST_UTIL.waitTableAvailable(TABLE_NAME);<a name="line.323"></a>
-<span class="sourceLineNo">324</span>    HRegionLocation currentLoc =<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      getDefaultRegionLocation(TABLE_NAME, row, RegionLocateType.CURRENT, false).get();<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    ServerName currentServerName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    assertLocEquals(EMPTY_START_ROW, splitKey, currentServerName, currentLoc);<a name="line.327"></a>
+<span class="sourceLineNo">193</span>  @Test<a name="line.193"></a>
+<span class="sourceLineNo">194</span>  public void testSingleRegionTable() throws IOException, InterruptedException, ExecutionException {<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    createSingleRegionTable();<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    ServerName serverName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.198"></a>
+<span class="sourceLineNo">199</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    }<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    byte[] randKey = new byte[ThreadLocalRandom.current().nextInt(128)];<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    ThreadLocalRandom.current().nextBytes(randKey);<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.204"></a>
+<span class="sourceLineNo">205</span>        getDefaultRegionLocation(TABLE_NAME, randKey, locateType, false).get());<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    }<a name="line.206"></a>
+<span class="sourceLineNo">207</span>  }<a name="line.207"></a>
+<span class="sourceLineNo">208</span><a name="line.208"></a>
+<span class="sourceLineNo">209</span>  private void createMultiRegionTable() throws IOException, InterruptedException {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    TEST_UTIL.createTable(TABLE_NAME, FAMILY, SPLIT_KEYS);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    TEST_UTIL.waitTableAvailable(TABLE_NAME);<a name="line.211"></a>
+<span class="sourceLineNo">212</span>  }<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>  private static byte[][] getStartKeys() {<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    byte[][] startKeys = new byte[SPLIT_KEYS.length + 1][];<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    startKeys[0] = EMPTY_START_ROW;<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    System.arraycopy(SPLIT_KEYS, 0, startKeys, 1, SPLIT_KEYS.length);<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    return startKeys;<a name="line.218"></a>
+<span class="sourceLineNo">219</span>  }<a name="line.219"></a>
+<span class="sourceLineNo">220</span><a name="line.220"></a>
+<span class="sourceLineNo">221</span>  private static byte[][] getEndKeys() {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    byte[][] endKeys = Arrays.copyOf(SPLIT_KEYS, SPLIT_KEYS.length + 1);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    endKeys[endKeys.length - 1] = EMPTY_START_ROW;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    return endKeys;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>  }<a name="line.225"></a>
+<span class="sourceLineNo">226</span><a name="line.226"></a>
+<span class="sourceLineNo">227</span>  private ServerName[] getLocations(byte[][] startKeys) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    ServerName[] serverNames = new ServerName[startKeys.length];<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream().map(t -&gt; t.getRegionServer())<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      .forEach(rs -&gt; {<a name="line.230"></a>
+<span class="sourceLineNo">231</span>        rs.getRegions(TABLE_NAME).forEach(r -&gt; {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>          serverNames[Arrays.binarySearch(startKeys, r.getRegionInfo().getStartKey(),<a name="line.232"></a>
+<span class="sourceLineNo">233</span>            Bytes::compareTo)] = rs.getServerName();<a name="line.233"></a>
+<span class="sourceLineNo">234</span>        });<a name="line.234"></a>
+<span class="sourceLineNo">235</span>      });<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    return serverNames;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
+<span class="sourceLineNo">240</span>  public void testMultiRegionTable() throws IOException, InterruptedException {<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    createMultiRegionTable();<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    byte[][] startKeys = getStartKeys();<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    ServerName[] serverNames = getLocations(startKeys);<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    IntStream.range(0, 2).forEach(n -&gt; IntStream.range(0, startKeys.length).forEach(i -&gt; {<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>        assertLocEquals(startKeys[i], i == startKeys.length - 1 ? EMPTY_END_ROW : startKeys[i + 1],<a name="line.246"></a>
+<span class="sourceLineNo">247</span>          serverNames[i],<a name="line.247"></a>
+<span class="sourceLineNo">248</span>          getDefaultRegionLocation(TABLE_NAME, startKeys[i], RegionLocateType.CURRENT, false)<a name="line.248"></a>
+<span class="sourceLineNo">249</span>            .get());<a name="line.249"></a>
+<span class="sourceLineNo">250</span>      } catch (InterruptedException | ExecutionException e) {<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        throw new RuntimeException(e);<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      }<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    }));<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>    locator.clearCache(TABLE_NAME);<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    IntStream.range(0, 2).forEach(n -&gt; IntStream.range(0, startKeys.length).forEach(i -&gt; {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      try {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        assertLocEquals(startKeys[i], i == startKeys.length - 1 ? EMPTY_END_ROW : startKeys[i + 1],<a name="line.258"></a>
+<span class="sourceLineNo">259</span>          serverNames[i],<a name="line.259"></a>
+<span class="sourceLineNo">260</span>          getDefaultRegionLocation(TABLE_NAME, startKeys[i], RegionLocateType.AFTER, false).get());<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      } catch (InterruptedException | ExecutionException e) {<a name="line.261"></a>
+<span class="sourceLineNo">262</span>        throw new RuntimeException(e);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      }<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    }));<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>    locator.clearCache(TABLE_NAME);<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    byte[][] endKeys = getEndKeys();<a name="line.267"></a>
+<span class="sourceLineNo">268</span>    IntStream.range(0, 2).forEach(<a name="line.268"></a>
+<span class="sourceLineNo">269</span>      n -&gt; IntStream.range(0, endKeys.length).map(i -&gt; endKeys.length - 1 - i).forEach(i -&gt; {<a name="line.269"></a>
+<span class="sourceLineNo">270</span>        try {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>          assertLocEquals(i == 0 ? EMPTY_START_ROW : endKeys[i - 1], endKeys[i], serverNames[i],<a name="line.271"></a>
+<span class="sourceLineNo">272</span>            getDefaultRegionLocation(TABLE_NAME, endKeys[i], RegionLocateType.BEFORE, false).get());<a name="line.272"></a>
+<span class="sourceLineNo">273</span>        } catch (InterruptedException | ExecutionException e) {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>          throw new RuntimeException(e);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>        }<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      }));<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
+<span class="sourceLineNo">278</span><a name="line.278"></a>
+<span class="sourceLineNo">279</span>  @Test<a name="line.279"></a>
+<span class="sourceLineNo">280</span>  public void testRegionMove() throws IOException, InterruptedException, ExecutionException {<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    createSingleRegionTable();<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    ServerName serverName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    HRegionLocation loc =<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get();<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName, loc);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    ServerName newServerName = TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream()<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      .map(t -&gt; t.getRegionServer().getServerName()).filter(sn -&gt; !sn.equals(serverName)).findAny()<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      .get();<a name="line.288"></a>
+<span class="sourceLineNo">289</span><a name="line.289"></a>
+<span class="sourceLineNo">290</span>    TEST_UTIL.getAdmin().move(Bytes.toBytes(loc.getRegion().getEncodedName()), newServerName);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    while (!TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName()<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      .equals(newServerName)) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>      Thread.sleep(100);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>    }<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    // Should be same as it is in cache<a name="line.295"></a>
+<span class="sourceLineNo">296</span>    assertSame(loc,<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get());<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    locator.updateCachedLocationOnError(loc, null);<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    // null error will not trigger a cache cleanup<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    assertSame(loc,<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get());<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    locator.updateCachedLocationOnError(loc, new NotServingRegionException());<a name="line.302"></a>
+<span class="sourceLineNo">303</span>    assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, newServerName,<a name="line.303"></a>
+<span class="sourceLineNo">304</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get());<a name="line.304"></a>
+<span class="sourceLineNo">305</span>  }<a name="line.305"></a>
+<span class="sourceLineNo">306</span><a name="line.306"></a>
+<span class="sourceLineNo">307</span>  // usually locate after will return the same result, so we add a test to make it return different<a name="line.307"></a>
+<span class="sourceLineNo">308</span>  // result.<a name="line.308"></a>
+<span class="sourceLineNo">309</span>  @Test<a name="line.309"></a>
+<span class="sourceLineNo">310</span>  public void testLocateAfter() throws IOException, InterruptedException, ExecutionException {<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    byte[] row = Bytes.toBytes("1");<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    byte[] splitKey = Arrays.copyOf(row, 2);<a name="line.312"></a>
+<span class="sourceLineNo">313</span>    TEST_UTIL.createTable(TABLE_NAME, FAMILY, new byte[][] { splitKey });<a name="line.313"></a>
+<span class="sourceLineNo">314</span>    TEST_UTIL.waitTableAvailable(TABLE_NAME);<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    HRegionLocation currentLoc =<a name="line.315"></a>
+<span class="sourceLineNo">316</span>      getDefaultRegionLocation(TABLE_NAME, row, RegionLocateType.CURRENT, false).get();<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    ServerName currentServerName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.317"></a>
+<span class="sourceLineNo">318</span>    assertLocEquals(EMPTY_START_ROW, splitKey, currentServerName, currentLoc);<a name="line.318"></a>
+<span class="sourceLineNo">319</span><a name="line.319"></a>
+<span class="sourceLineNo">320</span>    HRegionLocation afterLoc =<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      getDefaultRegionLocation(TABLE_NAME, row, RegionLocateType.AFTER, false).get();<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    ServerName afterServerName =<a name="line.322"></a>
+<span class="sourceLineNo">323</span>      TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream().map(t -&gt; t.getRegionServer())<a name="line.323"></a>
+<span class="sourceLineNo">324</span>        .filter(rs -&gt; rs.getRegions(TABLE_NAME).stream()<a name="line.324"></a>
+<span class="sourceLineNo">325</span>          .anyMatch(r -&gt; Bytes.equals(splitKey, r.getRegionInfo().getStartKey())))<a name="line.325"></a>
+<span class="sourceLineNo">326</span>        .findAny().get().getServerName();<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    assertLocEquals(splitKey, EMPTY_END_ROW, afterServerName, afterLoc);<a name="line.327"></a>
 <span class="sourceLineNo">328</span><a name="line.328"></a>
-<span class="sourceLineNo">329</span>    HRegionLocation afterLoc =<a name="line.329"></a>
-<span class="sourceLineNo">330</span>      getDefaultRegionLocation(TABLE_NAME, row, RegionLocateType.AFTER, false).get();<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    ServerName afterServerName =<a name="line.331"></a>
-<span class="sourceLineNo">332</span>      TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream().map(t -&gt; t.getRegionServer())<a name="line.332"></a>
-<span class="sourceLineNo">333</span>        .filter(rs -&gt; rs.getRegions(TABLE_NAME).stream()<a name="line.333"></a>
-<span class="sourceLineNo">334</span>          .anyMatch(r -&gt; Bytes.equals(splitKey, r.getRegionInfo().getStartKey())))<a name="line.334"></a>
-<span class="sourceLineNo">335</span>        .findAny().get().getServerName();<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    assertLocEquals(splitKey, EMPTY_END_ROW, afterServerName, afterLoc);<a name="line.336"></a>
-<span class="sourceLineNo">337</span><a name="line.337"></a>
-<span class="sourceLineNo">338</span>    assertSame(afterLoc,<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      getDefaultRegionLocation(TABLE_NAME, row, RegionLocateType.AFTER, false).get());<a name="line.339"></a>
-<span class="sourceLineNo">340</span>  }<a name="line.340"></a>
-<span class="sourceLineNo">341</span><a name="line.341"></a>
-<span class="sourceLineNo">342</span>  // For HBASE-17402<a name="line.342"></a>
-<span class="sourceLineNo">343</span>  @Test<a name="line.343"></a>
-<span class="sourceLineNo">344</span>  public void testConcurrentLocate() throws IOException, InterruptedException, ExecutionException {<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    createMultiRegionTable();<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    byte[][] startKeys = getStartKeys();<a name="line.346"></a>
-<span class="sourceLineNo">347</span>    byte[][] endKeys = getEndKeys();<a name="line.347"></a>
-<span class="sourceLineNo">348</span>    ServerName[] serverNames = getLocations(startKeys);<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    for (int i = 0; i &lt; 100; i++) {<a name="line.349"></a>
-<span class="sourceLineNo">350</span>      LOCATOR.clearCache(TABLE_NAME);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>      List&lt;CompletableFuture&lt;HRegionLocation&gt;&gt; futures =<a name="line.351"></a>
-<span class="sourceLineNo">352</span>        IntStream.range(0, 1000).mapToObj(n -&gt; String.format("%03d", n)).map(s -&gt; Bytes.toBytes(s))<a name="line.352"></a>
-<span class="sourceLineNo">353</span>          .map(r -&gt; getDefaultRegionLocation(TABLE_NAME, r, RegionLocateType.CURRENT, false))<a name="line.353"></a>
-<span class="sourceLineNo">354</span>          .collect(toList());<a name="line.354"></a>
-<span class="sourceLineNo">355</span>      for (int j = 0; j &lt; 1000; j++) {<a name="line.355"></a>
-<span class="sourceLineNo">356</span>        int index = Math.min(8, j / 111);<a name="line.356"></a>
-<span class="sourceLineNo">357</span>        assertLocEquals(startKeys[index], endKeys[index], serverNames[index], futures.get(j).get());<a name="line.357"></a>
-<span class="sourceLineNo">358</span>      }<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    }<a name="line.359"></a>
-<span class="sourceLineNo">360</span>  }<a name="line.360"></a>
-<span class="sourceLineNo">361</span><a name="line.361"></a>
-<span class="sourceLineNo">362</span>  @Test<a name="line.362"></a>
-<span class="sourceLineNo">363</span>  public void testReload() throws Exception {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>    createSingleRegionTable();<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    ServerName serverName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.367"></a>
-<span class="sourceLineNo">368</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.368"></a>
-<span class="sourceLineNo">369</span>    }<a name="line.369"></a>
-<span class="sourceLineNo">370</span>    ServerName newServerName = TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream()<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      .map(t -&gt; t.getRegionServer().getServerName()).filter(sn -&gt; !sn.equals(serverName)).findAny()<a name="line.371"></a>
-<span class="sourceLineNo">372</span>      .get();<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    Admin admin = TEST_UTIL.getAdmin();<a name="line.373"></a>
-<span class="sourceLineNo">374</span>    RegionInfo region = admin.getRegions(TABLE_NAME).stream().findAny().get();<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    admin.move(region.getEncodedNameAsBytes(), newServerName);<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    TEST_UTIL.waitFor(30000, new ExplainingPredicate&lt;Exception&gt;() {<a name="line.376"></a>
-<span class="sourceLineNo">377</span><a name="line.377"></a>
-<span class="sourceLineNo">378</span>      @Override<a name="line.378"></a>
-<span class="sourceLineNo">379</span>      public boolean evaluate() throws Exception {<a name="line.379"></a>
-<span class="sourceLineNo">380</span>        ServerName newServerName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.380"></a>
-<span class="sourceLineNo">381</span>        return newServerName != null &amp;&amp; !newServerName.equals(serverName);<a name="line.381"></a>
-<span class="sourceLineNo">382</span>      }<a name="line.382"></a>
-<span class="sourceLineNo">383</span><a name="line.383"></a>
-<span class="sourceLineNo">384</span>      @Override<a name="line.384"></a>
-<span class="sourceLineNo">385</span>      public String explainFailure() throws Exception {<a name="line.385"></a>
-<span class="sourceLineNo">386</span>        return region.getRegionNameAsString() + " is still on " + serverName;<a name="line.386"></a>
-<span class="sourceLineNo">387</span>      }<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    });<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    // The cached location will not change<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.391"></a>
-<span class="sourceLineNo">392</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.392"></a>
-<span class="sourceLineNo">393</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span>    // should get the new location when reload = true<a name="line.395"></a>
-<span class="sourceLineNo">396</span>    // when meta replica LoadBalance mode is enabled, it may delay a bit.<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    TEST_UTIL.waitFor(3000, new ExplainingPredicate&lt;Exception&gt;() {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>      @Override<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      public boolean evaluate() throws Exception {<a name="line.399"></a>
-<span class="sourceLineNo">400</span>        HRegionLocation loc = getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW,<a name="line.400"></a>
-<span class="sourceLineNo">401</span>          RegionLocateType.CURRENT, true).get();<a name="line.401"></a>
-<span class="sourceLineNo">402</span>        return newServerName.equals(loc.getServerName());<a name="line.402"></a>
-<span class="sourceLineNo">403</span>      }<a name="line.403"></a>
-<span class="sourceLineNo">404</span><a name="line.404"></a>
-<span class="sourceLineNo">405</span>      @Override<a name="line.405"></a>
-<span class="sourceLineNo">406</span>      public String explainFailure() throws Exception {<a name="line.406"></a>
-<span class="sourceLineNo">407</span>        return "New location does not show up in meta (replica) region";<a name="line.407"></a>
-<span class="sourceLineNo">408</span>      }<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    });<a name="line.409"></a>
-<span class="sourceLineNo">410</span><a name="line.410"></a>
-<span class="sourceLineNo">411</span>    // the cached location should be replaced<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.412"></a>
-<span class="sourceLineNo">413</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, newServerName,<a name="line.413"></a>
-<span class="sourceLineNo">414</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    }<a name="line.415"></a>
-<span class="sourceLineNo">416</span>  }<a name="line.416"></a>
-<span class="sourceLineNo">417</span><a name="line.417"></a>
-<span class="sourceLineNo">418</span>  // Testcase for HBASE-20822<a name="line.418"></a>
-<span class="sourceLineNo">419</span>  @Test<a name="line.419"></a>
-<span class="sourceLineNo">420</span>  public void testLocateBeforeLastRegion()<a name="line.420"></a>
-<span class="sourceLineNo">421</span>      throws IOException, InterruptedException, ExecutionException {<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    createMultiRegionTable();<a name="line.422"></a>
-<span class="sourceLineNo">423</span>    getDefaultRegionLocation(TABLE_NAME, SPLIT_KEYS[0], RegionLocateType.CURRENT, false).join();<a name="line.423"></a>
-<span class="sourceLineNo">424</span>    HRegionLocation loc =<a name="line.424"></a>
-<span class="sourceLineNo">425</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_END_ROW, RegionLocateType.BEFORE, false).get();<a name="line.425"></a>
-<span class="sourceLineNo">426</span>    // should locate to the last region<a name="line.426"></a>
-<span class="sourceLineNo">427</span>    assertArrayEquals(loc.getRegion().getEndKey(), EMPTY_END_ROW);<a name="line.427"></a>
-<span class="sourceLineNo">428</span>  }<a name="line.428"></a>
-<span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>  @Test<a name="line.430"></a>
-<span class="sourceLineNo">431</span>  public void testRegionReplicas() throws Exception {<a name="line.431"></a>
-<span class="sourceLineNo">432</span>    TEST_UTIL.getAdmin().createTable(TableDescriptorBuilder.newBuilder(TABLE_NAME)<a name="line.432"></a>
-<span class="sourceLineNo">433</span>      .setColumnFamily(ColumnFamilyDescriptorBuilder.of(FAMILY)).setRegionReplication(3).build());<a name="line.433"></a>
-<span class="sourceLineNo">434</span>    TEST_UTIL.waitUntilAllRegionsAssigned(TABLE_NAME);<a name="line.434"></a>
-<span class="sourceLineNo">435</span>    testLocator(TEST_UTIL, TABLE_NAME, new Locator() {<a name="line.435"></a>
-<span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      @Override<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      public void updateCachedLocationOnError(HRegionLocation loc, Throwable error)<a name="line.438"></a>
-<span class="sourceLineNo">439</span>          throws Exception {<a name="line.439"></a>
-<span class="sourceLineNo">440</span>        LOCATOR.updateCachedLocationOnError(loc, error);<a name="line.440"></a>
-<span class="sourceLineNo">441</span>      }<a name="line.441"></a>
-<span class="sourceLineNo">442</span><a name="line.442"></a>
-<span class="sourceLineNo">443</span>      @Override<a name="line.443"></a>
-<span class="sourceLineNo">444</span>      public RegionLocations getRegionLocations(TableName tableName, int replicaId, boolean reload)<a name="line.444"></a>
-<span class="sourceLineNo">445</span>          throws Exception {<a name="line.445"></a>
-<span class="sourceLineNo">446</span>        return LOCATOR.getRegionLocations(tableName, EMPTY_START_ROW, replicaId,<a name="line.446"></a>
-<span class="sourceLineNo">447</span>          RegionLocateType.CURRENT, reload).get();<a name="line.447"></a>
-<span class="sourceLineNo">448</span>      }<a name="line.448"></a>
-<span class="sourceLineNo">449</span>    });<a name="line.449"></a>
-<span class="sourceLineNo">450</span>  }<a name="line.450"></a>
-<span class="sourceLineNo">451</span><a name="line.451"></a>
-<span class="sourceLineNo">452</span>  // Testcase for HBASE-21961<a name="line.452"></a>
-<span class="sourceLineNo">453</span>  @Test<a name="line.453"></a>
-<span class="sourceLineNo">454</span>  public void testLocateBeforeInOnlyRegion() throws IOException, InterruptedException {<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    createSingleRegionTable();<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    HRegionLocation loc =<a name="line.456"></a>
-<span class="sourceLineNo">457</span>      getDefaultRegionLocation(TABLE_NAME, Bytes.toBytes(1), RegionLocateType.BEFORE, false).join();<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // should locate to the only region<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    assertArrayEquals(loc.getRegion().getStartKey(), EMPTY_START_ROW);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    assertArrayEquals(loc.getRegion().getEndKey(), EMPTY_END_ROW);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>  }<a name="line.461"></a>
-<span class="sourceLineNo">462</span><a name="line.462"></a>
-<span class="sourceLineNo">463</span>  @Test<a name="line.463"></a>
-<span class="sourceLineNo">464</span>  public void testConcurrentUpdateCachedLocationOnError() throws Exception {<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    createSingleRegionTable();<a name="line.465"></a>
-<span class="sourceLineNo">466</span>    HRegionLocation loc =<a name="line.466"></a>
-<span class="sourceLineNo">467</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false)<a name="line.467"></a>
-<span class="sourceLineNo">468</span>            .get();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    IntStream.range(0, 100).parallel()<a name="line.469"></a>
-<span class="sourceLineNo">470</span>        .forEach(i -&gt; LOCATOR.updateCachedLocationOnError(loc, new NotServingRegionException()));<a name="line.470"></a>
-<span class="sourceLineNo">471</span>  }<a name="line.471"></a>
-<span class="sourceLineNo">472</span>}<a name="line.472"></a>
+<span class="sourceLineNo">329</span>    assertSame(afterLoc,<a name="line.329"></a>
+<span class="sourceLineNo">330</span>      getDefaultRegionLocation(TABLE_NAME, row, RegionLocateType.AFTER, false).get());<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  // For HBASE-17402<a name="line.333"></a>
+<span class="sourceLineNo">334</span>  @Test<a name="line.334"></a>
+<span class="sourceLineNo">335</span>  public void testConcurrentLocate() throws IOException, InterruptedException, ExecutionException {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    createMultiRegionTable();<a name="line.336"></a>
+<span class="sourceLineNo">337</span>    byte[][] startKeys = getStartKeys();<a name="line.337"></a>
+<span class="sourceLineNo">338</span>    byte[][] endKeys = getEndKeys();<a name="line.338"></a>
+<span class="sourceLineNo">339</span>    ServerName[] serverNames = getLocations(startKeys);<a name="line.339"></a>
+<span class="sourceLineNo">340</span>    for (int i = 0; i &lt; 100; i++) {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      locator.clearCache(TABLE_NAME);<a name="line.341"></a>
+<span class="sourceLineNo">342</span>      List&lt;CompletableFuture&lt;HRegionLocation&gt;&gt; futures =<a name="line.342"></a>
+<span class="sourceLineNo">343</span>        IntStream.range(0, 1000).mapToObj(n -&gt; String.format("%03d", n)).map(s -&gt; Bytes.toBytes(s))<a name="line.343"></a>
+<span class="sourceLineNo">344</span>          .map(r -&gt; getDefaultRegionLocation(TABLE_NAME, r, RegionLocateType.CURRENT, false))<a name="line.344"></a>
+<span class="sourceLineNo">345</span>          .collect(toList());<a name="line.345"></a>
+<span class="sourceLineNo">346</span>      for (int j = 0; j &lt; 1000; j++) {<a name="line.346"></a>
+<span class="sourceLineNo">347</span>        int index = Math.min(8, j / 111);<a name="line.347"></a>
+<span class="sourceLineNo">348</span>        assertLocEquals(startKeys[index], endKeys[index], serverNames[index], futures.get(j).get());<a name="line.348"></a>
+<span class="sourceLineNo">349</span>      }<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    }<a name="line.350"></a>
+<span class="sourceLineNo">351</span>  }<a name="line.351"></a>
+<span class="sourceLineNo">352</span><a name="line.352"></a>
+<span class="sourceLineNo">353</span>  @Test<a name="line.353"></a>
+<span class="sourceLineNo">354</span>  public void testReload() throws Exception {<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    createSingleRegionTable();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    ServerName serverName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.357"></a>
+<span class="sourceLineNo">358</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.358"></a>
+<span class="sourceLineNo">359</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    }<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    ServerName newServerName = TEST_UTIL.getHBaseCluster().getRegionServerThreads().stream()<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      .map(t -&gt; t.getRegionServer().getServerName()).filter(sn -&gt; !sn.equals(serverName)).findAny()<a name="line.362"></a>
+<span class="sourceLineNo">363</span>      .get();<a name="line.363"></a>
+<span class="sourceLineNo">364</span>    Admin admin = TEST_UTIL.getAdmin();<a name="line.364"></a>
+<span class="sourceLineNo">365</span>    RegionInfo region = admin.getRegions(TABLE_NAME).stream().findAny().get();<a name="line.365"></a>
+<span class="sourceLineNo">366</span>    admin.move(region.getEncodedNameAsBytes(), newServerName);<a name="line.366"></a>
+<span class="sourceLineNo">367</span>    TEST_UTIL.waitFor(30000, new ExplainingPredicate&lt;Exception&gt;() {<a name="line.367"></a>
+<span class="sourceLineNo">368</span><a name="line.368"></a>
+<span class="sourceLineNo">369</span>      @Override<a name="line.369"></a>
+<span class="sourceLineNo">370</span>      public boolean evaluate() throws Exception {<a name="line.370"></a>
+<span class="sourceLineNo">371</span>        ServerName newServerName = TEST_UTIL.getRSForFirstRegionInTable(TABLE_NAME).getServerName();<a name="line.371"></a>
+<span class="sourceLineNo">372</span>        return newServerName != null &amp;&amp; !newServerName.equals(serverName);<a name="line.372"></a>
+<span class="sourceLineNo">373</span>      }<a name="line.373"></a>
+<span class="sourceLineNo">374</span><a name="line.374"></a>
+<span class="sourceLineNo">375</span>      @Override<a name="line.375"></a>
+<span class="sourceLineNo">376</span>      public String explainFailure() throws Exception {<a name="line.376"></a>
+<span class="sourceLineNo">377</span>        return region.getRegionNameAsString() + " is still on " + serverName;<a name="line.377"></a>
+<span class="sourceLineNo">378</span>      }<a name="line.378"></a>
+<span class="sourceLineNo">379</span><a name="line.379"></a>
+<span class="sourceLineNo">380</span>    });<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    // The cached location will not change<a name="line.381"></a>
+<span class="sourceLineNo">382</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.382"></a>
+<span class="sourceLineNo">383</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, serverName,<a name="line.383"></a>
+<span class="sourceLineNo">384</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.384"></a>
+<span class="sourceLineNo">385</span>    }<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    // should get the new location when reload = true<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    // when meta replica LoadBalance mode is enabled, it may delay a bit.<a name="line.387"></a>
+<span class="sourceLineNo">388</span>    TEST_UTIL.waitFor(3000, new ExplainingPredicate&lt;Exception&gt;() {<a name="line.388"></a>
+<span class="sourceLineNo">389</span>      @Override<a name="line.389"></a>
+<span class="sourceLineNo">390</span>      public boolean evaluate() throws Exception {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>        HRegionLocation loc =<a name="line.391"></a>
+<span class="sourceLineNo">392</span>          getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, true)<a name="line.392"></a>
+<span class="sourceLineNo">393</span>            .get();<a name="line.393"></a>
+<span class="sourceLineNo">394</span>        return newServerName.equals(loc.getServerName());<a name="line.394"></a>
+<span class="sourceLineNo">395</span>      }<a name="line.395"></a>
+<span class="sourceLineNo">396</span><a name="line.396"></a>
+<span class="sourceLineNo">397</span>      @Override<a name="line.397"></a>
+<span class="sourceLineNo">398</span>      public String explainFailure() throws Exception {<a name="line.398"></a>
+<span class="sourceLineNo">399</span>        return "New location does not show up in meta (replica) region";<a name="line.399"></a>
+<span class="sourceLineNo">400</span>      }<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    });<a name="line.401"></a>
+<span class="sourceLineNo">402</span><a name="line.402"></a>
+<span class="sourceLineNo">403</span>    // the cached location should be replaced<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    for (RegionLocateType locateType : RegionLocateType.values()) {<a name="line.404"></a>
+<span class="sourceLineNo">405</span>      assertLocEquals(EMPTY_START_ROW, EMPTY_END_ROW, newServerName,<a name="line.405"></a>
+<span class="sourceLineNo">406</span>        getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, locateType, false).get());<a name="line.406"></a>
+<span class="sourceLineNo">407</span>    }<a name="line.407"></a>
+<span class="sourceLineNo">408</span>  }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>  // Testcase for HBASE-20822<a name="line.410"></a>
+<span class="sourceLineNo">411</span>  @Test<a name="line.411"></a>
+<span class="sourceLineNo">412</span>  public void testLocateBeforeLastRegion()<a name="line.412"></a>
+<span class="sourceLineNo">413</span>    throws IOException, InterruptedException, ExecutionException {<a name="line.413"></a>
+<span class="sourceLineNo">414</span>    createMultiRegionTable();<a name="line.414"></a>
+<span class="sourceLineNo">415</span>    getDefaultRegionLocation(TABLE_NAME, SPLIT_KEYS[0], RegionLocateType.CURRENT, false).join();<a name="line.415"></a>
+<span class="sourceLineNo">416</span>    HRegionLocation loc =<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_END_ROW, RegionLocateType.BEFORE, false).get();<a name="line.417"></a>
+<span class="sourceLineNo">418</span>    // should locate to the last region<a name="line.418"></a>
+<span class="sourceLineNo">419</span>    assertArrayEquals(loc.getRegion().getEndKey(), EMPTY_END_ROW);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>  }<a name="line.420"></a>
+<span class="sourceLineNo">421</span><a name="line.421"></a>
+<span class="sourceLineNo">422</span>  @Test<a name="line.422"></a>
+<span class="sourceLineNo">423</span>  public void testRegionReplicas() throws Exception {<a name="line.423"></a>
+<span class="sourceLineNo">424</span>    TEST_UTIL.getAdmin().createTable(TableDescriptorBuilder.newBuilder(TABLE_NAME)<a name="line.424"></a>
+<span class="sourceLineNo">425</span>      .setColumnFamily(ColumnFamilyDescriptorBuilder.of(FAMILY)).setRegionReplication(3).build());<a name="line.425"></a>
+<span class="sourceLineNo">426</span>    TEST_UTIL.waitUntilAllRegionsAssigned(TABLE_NAME);<a name="line.426"></a>
+<span class="sourceLineNo">427</span>    testLocator(TEST_UTIL, TABLE_NAME, new Locator() {<a name="line.427"></a>
+<span class="sourceLineNo">428</span><a name="line.428"></a>
+<span class="sourceLineNo">429</span>      @Override<a name="line.429"></a>
+<span class="sourceLineNo">430</span>      public void updateCachedLocationOnError(HRegionLocation loc, Throwable error)<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        throws Exception {<a name="line.431"></a>
+<span class="sourceLineNo">432</span>        locator.updateCachedLocationOnError(loc, error);<a name="line.432"></a>
+<span class="sourceLineNo">433</span>      }<a name="line.433"></a>
+<span class="sourceLineNo">434</span><a name="line.434"></a>
+<span class="sourceLineNo">435</span>      @Override<a name="line.435"></a>
+<span class="sourceLineNo">436</span>      public RegionLocations getRegionLocations(TableName tableName, int replicaId, boolean reload)<a name="line.436"></a>
+<span class="sourceLineNo">437</span>        throws Exception {<a name="line.437"></a>
+<span class="sourceLineNo">438</span>        return locator.getRegionLocations(tableName, EMPTY_START_ROW, replicaId,<a name="line.438"></a>
+<span class="sourceLineNo">439</span>          RegionLocateType.CURRENT, reload).get();<a name="line.439"></a>
+<span class="sourceLineNo">440</span>      }<a name="line.440"></a>
+<span class="sourceLineNo">441</span>    });<a name="line.441"></a>
+<span class="sourceLineNo">442</span>  }<a name="line.442"></a>
+<span class="sourceLineNo">443</span><a name="line.443"></a>
+<span class="sourceLineNo">444</span>  // Testcase for HBASE-21961<a name="line.444"></a>
+<span class="sourceLineNo">445</span>  @Test<a name="line.445"></a>
+<span class="sourceLineNo">446</span>  public void testLocateBeforeInOnlyRegion() throws IOException, InterruptedException {<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    createSingleRegionTable();<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HRegionLocation loc =<a name="line.448"></a>
+<span class="sourceLineNo">449</span>      getDefaultRegionLocation(TABLE_NAME, Bytes.toBytes(1), RegionLocateType.BEFORE, false).join();<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    // should locate to the only region<a name="line.450"></a>
+<span class="sourceLineNo">451</span>    assertArrayEquals(loc.getRegion().getStartKey(), EMPTY_START_ROW);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    assertArrayEquals(loc.getRegion().getEndKey(), EMPTY_END_ROW);<a name="line.452"></a>
+<span class="sourceLineNo">453</span>  }<a name="line.453"></a>
+<span class="sourceLineNo">454</span><a name="line.454"></a>
+<span class="sourceLineNo">455</span>  @Test<a name="line.455"></a>
+<span class="sourceLineNo">456</span>  public void testConcurrentUpdateCachedLocationOnError() throws Exception {<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    createSingleRegionTable();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    HRegionLocation loc =<a name="line.458"></a>
+<span class="sourceLineNo">459</span>      getDefaultRegionLocation(TABLE_NAME, EMPTY_START_ROW, RegionLocateType.CURRENT, false).get();<a name="line.459"></a>
+<span class="sourceLineNo">460</span>    IntStream.range(0, 100).parallel()<a name="line.460"></a>
+<span class="sourceLineNo">461</span>      .forEach(i -&gt; locator.updateCachedLocationOnError(loc, new NotServingRegionException()));<a name="line.461"></a>
+<span class="sourceLineNo">462</span>  }<a name="line.462"></a>
+<span class="sourceLineNo">463</span>}<a name="line.463"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html
new file mode 100644
index 0000000..133248d
--- /dev/null
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.MyFSDataInputStream.html
@@ -0,0 +1,402 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+<title>Source code</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
+</head>
+<body>
+<div class="sourceContainer">
+<pre><span class="sourceLineNo">001</span>/**<a name="line.1"></a>
+<span class="sourceLineNo">002</span> * Licensed to the Apache Software Foundation (ASF) under one<a name="line.2"></a>
+<span class="sourceLineNo">003</span> * or more contributor license agreements.  See the NOTICE file<a name="line.3"></a>
+<span class="sourceLineNo">004</span> * distributed with this work for additional information<a name="line.4"></a>
+<span class="sourceLineNo">005</span> * regarding copyright ownership.  The ASF licenses this file<a name="line.5"></a>
+<span class="sourceLineNo">006</span> * to you under the Apache License, Version 2.0 (the<a name="line.6"></a>
+<span class="sourceLineNo">007</span> * "License"); you may not use this file except in compliance<a name="line.7"></a>
+<span class="sourceLineNo">008</span> * with the License.  You may obtain a copy of the License at<a name="line.8"></a>
+<span class="sourceLineNo">009</span> *<a name="line.9"></a>
+<span class="sourceLineNo">010</span> *     http://www.apache.org/licenses/LICENSE-2.0<a name="line.10"></a>
+<span class="sourceLineNo">011</span> *<a name="line.11"></a>
+<span class="sourceLineNo">012</span> * Unless required by applicable law or agreed to in writing, software<a name="line.12"></a>
+<span class="sourceLineNo">013</span> * distributed under the License is distributed on an "AS IS" BASIS,<a name="line.13"></a>
+<span class="sourceLineNo">014</span> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<a name="line.14"></a>
+<span class="sourceLineNo">015</span> * See the License for the specific language governing permissions and<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * limitations under the License.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> */<a name="line.17"></a>
+<span class="sourceLineNo">018</span>package org.apache.hadoop.hbase.io.hfile;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>import static org.junit.Assert.assertArrayEquals;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import static org.junit.Assert.assertFalse;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import static org.junit.Assert.assertTrue;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import static org.junit.Assert.fail;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import static org.junit.Assume.assumeTrue;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import static org.mockito.ArgumentMatchers.anyString;<a name="line.25"></a>
+<span class="sourceLineNo">026</span>import static org.mockito.Mockito.mock;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import static org.mockito.Mockito.verify;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import static org.mockito.Mockito.verifyNoMoreInteractions;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.mockito.Mockito.when;<a name="line.29"></a>
+<span class="sourceLineNo">030</span><a name="line.30"></a>
+<span class="sourceLineNo">031</span>import java.io.IOException;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import java.io.InputStream;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import java.nio.ByteBuffer;<a name="line.33"></a>
+<span class="sourceLineNo">034</span><a name="line.34"></a>
+<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.FSDataInputStream;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.FileSystem;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.Path;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.io.util.BlockIOUtils;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.nio.ByteBuff;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.apache.hadoop.hbase.nio.MultiByteBuff;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hadoop.hbase.nio.SingleByteBuff;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.hbase.testclassification.IOTests;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.testclassification.SmallTests;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.junit.ClassRule;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.junit.Rule;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.junit.Test;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.junit.experimental.categories.Category;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.junit.rules.ExpectedException;<a name="line.52"></a>
+<span class="sourceLineNo">053</span><a name="line.53"></a>
+<span class="sourceLineNo">054</span>@Category({ IOTests.class, SmallTests.class })<a name="line.54"></a>
+<span class="sourceLineNo">055</span>public class TestBlockIOUtils {<a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>  @ClassRule<a name="line.57"></a>
+<span class="sourceLineNo">058</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      HBaseClassTestRule.forClass(TestBlockIOUtils.class);<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span>  @Rule<a name="line.61"></a>
+<span class="sourceLineNo">062</span>  public ExpectedException exception = ExpectedException.none();<a name="line.62"></a>
+<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">064</span>  private static final HBaseTestingUtil TEST_UTIL = new HBaseTestingUtil();<a name="line.64"></a>
+<span class="sourceLineNo">065</span><a name="line.65"></a>
+<span class="sourceLineNo">066</span>  @Test<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  public void testIsByteBufferReadable() throws IOException {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testIsByteBufferReadable");<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      out.writeInt(23);<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    try (FSDataInputStream is = fs.open(p)) {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>      assertFalse(BlockIOUtils.isByteBufferReadable(is));<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    }<a name="line.75"></a>
+<span class="sourceLineNo">076</span>  }<a name="line.76"></a>
+<span class="sourceLineNo">077</span><a name="line.77"></a>
+<span class="sourceLineNo">078</span>  @Test<a name="line.78"></a>
+<span class="sourceLineNo">079</span>  public void testReadFully() throws IOException {<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testReadFully");<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    String s = "hello world";<a name="line.82"></a>
+<span class="sourceLineNo">083</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      out.writeBytes(s);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>    }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    ByteBuff buf = new SingleByteBuff(ByteBuffer.allocate(11));<a name="line.86"></a>
+<span class="sourceLineNo">087</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      BlockIOUtils.readFully(buf, in, 11);<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    }<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    buf.rewind();<a name="line.90"></a>
+<span class="sourceLineNo">091</span>    byte[] heapBuf = new byte[s.length()];<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    assertArrayEquals(Bytes.toBytes(s), heapBuf);<a name="line.93"></a>
+<span class="sourceLineNo">094</span>  }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>  @Test<a name="line.96"></a>
+<span class="sourceLineNo">097</span>  public void testReadWithExtra() throws IOException {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.98"></a>
+<span class="sourceLineNo">099</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testReadWithExtra");<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    String s = "hello world";<a name="line.100"></a>
+<span class="sourceLineNo">101</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      out.writeBytes(s);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>    }<a name="line.103"></a>
+<span class="sourceLineNo">104</span>    ByteBuff buf = new SingleByteBuff(ByteBuffer.allocate(8));<a name="line.104"></a>
+<span class="sourceLineNo">105</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      assertTrue(BlockIOUtils.readWithExtra(buf, in, 6, 2));<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    buf.rewind();<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    byte[] heapBuf = new byte[buf.capacity()];<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    assertArrayEquals(Bytes.toBytes("hello wo"), heapBuf);<a name="line.111"></a>
+<span class="sourceLineNo">112</span><a name="line.112"></a>
+<span class="sourceLineNo">113</span>    buf = new MultiByteBuff(ByteBuffer.allocate(4), ByteBuffer.allocate(4), ByteBuffer.allocate(4));<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      assertTrue(BlockIOUtils.readWithExtra(buf, in, 8, 3));<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    }<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    buf.rewind();<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    heapBuf = new byte[11];<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.119"></a>
+<span class="sourceLineNo">120</span>    assertArrayEquals(Bytes.toBytes("hello world"), heapBuf);<a name="line.120"></a>
+<span class="sourceLineNo">121</span><a name="line.121"></a>
+<span class="sourceLineNo">122</span>    buf.position(0).limit(12);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      try {<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        BlockIOUtils.readWithExtra(buf, in, 12, 0);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>        fail("Should only read 11 bytes");<a name="line.126"></a>
+<span class="sourceLineNo">127</span>      } catch (IOException e) {<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>      }<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    }<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  }<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  @Test<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  public void testPositionalReadNoExtra() throws IOException {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    long position = 0;<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    int bufOffset = 0;<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    int necessaryLen = 10;<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    int extraLen = 0;<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    int totalLen = necessaryLen + extraLen;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    byte[] buf = new byte[totalLen];<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(totalLen);<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    assertFalse("Expect false return when no extra bytes requested", ret);<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    verify(in).hasCapability(anyString());<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    verifyNoMoreInteractions(in);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
+<span class="sourceLineNo">151</span><a name="line.151"></a>
+<span class="sourceLineNo">152</span>  @Test<a name="line.152"></a>
+<span class="sourceLineNo">153</span>  public void testPositionalReadShortReadOfNecessaryBytes() throws IOException {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    long position = 0;<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    int bufOffset = 0;<a name="line.155"></a>
+<span class="sourceLineNo">156</span>    int necessaryLen = 10;<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    int extraLen = 0;<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    int totalLen = necessaryLen + extraLen;<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    byte[] buf = new byte[totalLen];<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.160"></a>
+<span class="sourceLineNo">161</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(5);<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    when(in.read(5, buf, 5, 5)).thenReturn(5);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    assertFalse("Expect false return when no extra bytes requested", ret);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    verify(in).read(5, buf, 5, 5);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    verify(in).hasCapability(anyString());<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    verifyNoMoreInteractions(in);<a name="line.170"></a>
+<span class="sourceLineNo">171</span>  }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>  @Test<a name="line.173"></a>
+<span class="sourceLineNo">174</span>  public void testPositionalReadExtraSucceeded() throws IOException {<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    long position = 0;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    int bufOffset = 0;<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    int necessaryLen = 10;<a name="line.177"></a>
+<span class="sourceLineNo">178</span>    int extraLen = 5;<a name="line.178"></a>
+<span class="sourceLineNo">179</span>    int totalLen = necessaryLen + extraLen;<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    byte[] buf = new byte[totalLen];<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(totalLen);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    verify(in).hasCapability(anyString());<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    verifyNoMoreInteractions(in);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>  }<a name="line.190"></a>
+<span class="sourceLineNo">191</span><a name="line.191"></a>
+<span class="sourceLineNo">192</span>  @Test<a name="line.192"></a>
+<span class="sourceLineNo">193</span>  public void testPositionalReadExtraFailed() throws IOException {<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    long position = 0;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    int bufOffset = 0;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    int necessaryLen = 10;<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    int extraLen = 5;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    int totalLen = necessaryLen + extraLen;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    byte[] buf = new byte[totalLen];<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(necessaryLen);<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    assertFalse("Expect false return when reading extra bytes fails", ret);<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    verify(in).hasCapability(anyString());<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    verifyNoMoreInteractions(in);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  }<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  @Test<a name="line.211"></a>
+<span class="sourceLineNo">212</span>  public void testPositionalReadShortReadCompletesNecessaryAndExtraBytes()<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      throws IOException {<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    long position = 0;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    int bufOffset = 0;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    int necessaryLen = 10;<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    int extraLen = 5;<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    int totalLen = necessaryLen + extraLen;<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    byte[] buf = new byte[totalLen];<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(5);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    when(in.read(5, buf, 5, 10)).thenReturn(10);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    verify(in).read(5, buf, 5, 10);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    verify(in).hasCapability(anyString());<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    verifyNoMoreInteractions(in);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>  }<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>  @Test<a name="line.233"></a>
+<span class="sourceLineNo">234</span>  public void testPositionalReadPrematureEOF() throws IOException {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    long position = 0;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    int bufOffset = 0;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    int necessaryLen = 10;<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    int extraLen = 0;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    int totalLen = necessaryLen + extraLen;<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    byte[] buf = new byte[totalLen];<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(9);<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(-1);<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    exception.expect(IOException.class);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    exception.expectMessage("EOF");<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>  }<a name="line.249"></a>
+<span class="sourceLineNo">250</span><a name="line.250"></a>
+<span class="sourceLineNo">251</span>  /**<a name="line.251"></a>
+<span class="sourceLineNo">252</span>   * Determine if ByteBufferPositionedReadable API is available<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   * .<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   * @return true if FSDataInputStream implements ByteBufferPositionedReadable API.<a name="line.254"></a>
+<span class="sourceLineNo">255</span>   */<a name="line.255"></a>
+<span class="sourceLineNo">256</span>  private boolean isByteBufferPositionedReadable() {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    try {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      //long position, ByteBuffer buf<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      FSDataInputStream.class.getMethod("read", long.class, ByteBuffer.class);<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    } catch (NoSuchMethodException e) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      return false;<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    }<a name="line.262"></a>
+<span class="sourceLineNo">263</span>    return true;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>  }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>  public static class MyFSDataInputStream extends FSDataInputStream {<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    public MyFSDataInputStream(InputStream in) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      super(in);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    }<a name="line.269"></a>
+<span class="sourceLineNo">270</span><a name="line.270"></a>
+<span class="sourceLineNo">271</span>    // This is the ByteBufferPositionReadable API we want to test.<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    // Because the API is only available in Hadoop 3.3, FSDataInputStream in older Hadoop<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    // does not implement the interface, and it wouldn't compile trying to mock the method.<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    // So explicitly declare the method here to make mocking possible.<a name="line.274"></a>
+<span class="sourceLineNo">275</span>    public int read(long position, ByteBuffer buf) throws IOException {<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      return 0;<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    }<a name="line.277"></a>
+<span class="sourceLineNo">278</span>  }<a name="line.278"></a>
+<span class="sourceLineNo">279</span><a name="line.279"></a>
+<span class="sourceLineNo">280</span>  @Test<a name="line.280"></a>
+<span class="sourceLineNo">281</span>  public void testByteBufferPositionedReadable() throws IOException {<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    assumeTrue("Skip the test because ByteBufferPositionedReadable is not available",<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      isByteBufferPositionedReadable());<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    long position = 0;<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    int necessaryLen = 10;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    int extraLen = 1;<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    int totalLen = necessaryLen + extraLen;<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    int firstReadLen = 6;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    int secondReadLen = totalLen - firstReadLen;<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    ByteBuffer buf = ByteBuffer.allocate(totalLen);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    ByteBuff bb = new SingleByteBuff(buf);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    MyFSDataInputStream in = mock(MyFSDataInputStream.class);<a name="line.292"></a>
+<span class="sourceLineNo">293</span><a name="line.293"></a>
+<span class="sourceLineNo">294</span>    when(in.read(position, buf)).thenReturn(firstReadLen);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    when(in.read(firstReadLen, buf)).thenReturn(secondReadLen);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>    when(in.hasCapability(anyString())).thenReturn(true);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    verify(in).read(position, buf);<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    verify(in).read(firstReadLen, buf);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    verify(in).hasCapability(anyString());<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    verifyNoMoreInteractions(in);<a name="line.302"></a>
+<span class="sourceLineNo">303</span>  }<a name="line.303"></a>
+<span class="sourceLineNo">304</span><a name="line.304"></a>
+<span class="sourceLineNo">305</span>  @Test<a name="line.305"></a>
+<span class="sourceLineNo">306</span>  public void testByteBufferPositionedReadableEOF() throws IOException {<a name="line.306"></a>
+<span class="sourceLineNo">307</span>    assumeTrue("Skip the test because ByteBufferPositionedReadable is not available",<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      isByteBufferPositionedReadable());<a name="line.308"></a>
+<span class="sourceLineNo">309</span>    long position = 0;<a name="line.309"></a>
+<span class="sourceLineNo">310</span>    int necessaryLen = 10;<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    int extraLen = 0;<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    int totalLen = necessaryLen + extraLen;<a name="line.312"></a>
+<span class="sourceLineNo">313</span>    int firstReadLen = 9;<a name="line.313"></a>
+<span class="sourceLineNo">314</span>    ByteBuffer buf = ByteBuffer.allocate(totalLen);<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    ByteBuff bb = new SingleByteBuff(buf);<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    MyFSDataInputStream in = mock(MyFSDataInputStream.class);<a name="line.316"></a>
+<span class="sourceLineNo">317</span><a name="line.317"></a>
+<span class="sourceLineNo">318</span>    when(in.read(position, buf)).thenReturn(firstReadLen);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>    when(in.read(position, buf)).thenReturn(-1);<a name="line.319"></a>
+<span class="sourceLineNo">320</span>    when(in.hasCapability(anyString())).thenReturn(true);<a name="line.320"></a>
+<span class="sourceLineNo">321</span>    exception.expect(IOException.class);<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    exception.expectMessage("EOF");<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.323"></a>
+<span class="sourceLineNo">324</span><a name="line.324"></a>
+<span class="sourceLineNo">325</span>    verify(in).read(position, buf);<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    verify(in).read(firstReadLen, buf);<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    verify(in).hasCapability(anyString());<a name="line.327"></a>
+<span class="sourceLineNo">328</span>    verifyNoMoreInteractions(in);<a name="line.328"></a>
+<span class="sourceLineNo">329</span>  }<a name="line.329"></a>
+<span class="sourceLineNo">330</span>}<a name="line.330"></a>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html
index 94094a7..133248d 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/io/hfile/TestBlockIOUtils.html
@@ -29,219 +29,313 @@
 <span class="sourceLineNo">021</span>import static org.junit.Assert.assertFalse;<a name="line.21"></a>
 <span class="sourceLineNo">022</span>import static org.junit.Assert.assertTrue;<a name="line.22"></a>
 <span class="sourceLineNo">023</span>import static org.junit.Assert.fail;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import static org.mockito.Mockito.mock;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import static org.mockito.Mockito.verify;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import static org.mockito.Mockito.verifyNoMoreInteractions;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import static org.mockito.Mockito.when;<a name="line.27"></a>
-<span class="sourceLineNo">028</span><a name="line.28"></a>
-<span class="sourceLineNo">029</span>import java.io.IOException;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import java.nio.ByteBuffer;<a name="line.30"></a>
-<span class="sourceLineNo">031</span><a name="line.31"></a>
-<span class="sourceLineNo">032</span>import org.apache.hadoop.fs.FSDataInputStream;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import org.apache.hadoop.fs.FileSystem;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.Path;<a name="line.35"></a>
-<span class="sourceLineNo">036</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.io.util.BlockIOUtils;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.nio.ByteBuff;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.hbase.nio.MultiByteBuff;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.nio.SingleByteBuff;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.testclassification.IOTests;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.hbase.testclassification.SmallTests;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.junit.ClassRule;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.junit.Rule;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.junit.Test;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.junit.experimental.categories.Category;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.junit.rules.ExpectedException;<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>@Category({ IOTests.class, SmallTests.class })<a name="line.51"></a>
-<span class="sourceLineNo">052</span>public class TestBlockIOUtils {<a name="line.52"></a>
+<span class="sourceLineNo">024</span>import static org.junit.Assume.assumeTrue;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import static org.mockito.ArgumentMatchers.anyString;<a name="line.25"></a>
+<span class="sourceLineNo">026</span>import static org.mockito.Mockito.mock;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import static org.mockito.Mockito.verify;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import static org.mockito.Mockito.verifyNoMoreInteractions;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.mockito.Mockito.when;<a name="line.29"></a>
+<span class="sourceLineNo">030</span><a name="line.30"></a>
+<span class="sourceLineNo">031</span>import java.io.IOException;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import java.io.InputStream;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import java.nio.ByteBuffer;<a name="line.33"></a>
+<span class="sourceLineNo">034</span><a name="line.34"></a>
+<span class="sourceLineNo">035</span>import org.apache.hadoop.fs.FSDataInputStream;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.fs.FileSystem;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.fs.Path;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.io.util.BlockIOUtils;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.nio.ByteBuff;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.apache.hadoop.hbase.nio.MultiByteBuff;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.apache.hadoop.hbase.nio.SingleByteBuff;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.hbase.testclassification.IOTests;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.testclassification.SmallTests;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.junit.ClassRule;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.junit.Rule;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.junit.Test;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.junit.experimental.categories.Category;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.junit.rules.ExpectedException;<a name="line.52"></a>
 <span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>  @ClassRule<a name="line.54"></a>
-<span class="sourceLineNo">055</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      HBaseClassTestRule.forClass(TestBlockIOUtils.class);<a name="line.56"></a>
-<span class="sourceLineNo">057</span><a name="line.57"></a>
-<span class="sourceLineNo">058</span>  @Rule<a name="line.58"></a>
-<span class="sourceLineNo">059</span>  public ExpectedException exception = ExpectedException.none();<a name="line.59"></a>
+<span class="sourceLineNo">054</span>@Category({ IOTests.class, SmallTests.class })<a name="line.54"></a>
+<span class="sourceLineNo">055</span>public class TestBlockIOUtils {<a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>  @ClassRule<a name="line.57"></a>
+<span class="sourceLineNo">058</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      HBaseClassTestRule.forClass(TestBlockIOUtils.class);<a name="line.59"></a>
 <span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>  private static final HBaseTestingUtil TEST_UTIL = new HBaseTestingUtil();<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>  @Test<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  public void testIsByteBufferReadable() throws IOException {<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testIsByteBufferReadable");<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>      out.writeInt(23);<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    }<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    try (FSDataInputStream is = fs.open(p)) {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>      assertFalse(BlockIOUtils.isByteBufferReadable(is));<a name="line.71"></a>
+<span class="sourceLineNo">061</span>  @Rule<a name="line.61"></a>
+<span class="sourceLineNo">062</span>  public ExpectedException exception = ExpectedException.none();<a name="line.62"></a>
+<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">064</span>  private static final HBaseTestingUtil TEST_UTIL = new HBaseTestingUtil();<a name="line.64"></a>
+<span class="sourceLineNo">065</span><a name="line.65"></a>
+<span class="sourceLineNo">066</span>  @Test<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  public void testIsByteBufferReadable() throws IOException {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testIsByteBufferReadable");<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      out.writeInt(23);<a name="line.71"></a>
 <span class="sourceLineNo">072</span>    }<a name="line.72"></a>
-<span class="sourceLineNo">073</span>  }<a name="line.73"></a>
-<span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>  @Test<a name="line.75"></a>
-<span class="sourceLineNo">076</span>  public void testReadFully() throws IOException {<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testReadFully");<a name="line.78"></a>
-<span class="sourceLineNo">079</span>    String s = "hello world";<a name="line.79"></a>
-<span class="sourceLineNo">080</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      out.writeBytes(s);<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    }<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    ByteBuff buf = new SingleByteBuff(ByteBuffer.allocate(11));<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.84"></a>
-<span class="sourceLineNo">085</span>      BlockIOUtils.readFully(buf, in, 11);<a name="line.85"></a>
-<span class="sourceLineNo">086</span>    }<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    buf.rewind();<a name="line.87"></a>
-<span class="sourceLineNo">088</span>    byte[] heapBuf = new byte[s.length()];<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.89"></a>
-<span class="sourceLineNo">090</span>    assertArrayEquals(Bytes.toBytes(s), heapBuf);<a name="line.90"></a>
-<span class="sourceLineNo">091</span>  }<a name="line.91"></a>
-<span class="sourceLineNo">092</span><a name="line.92"></a>
-<span class="sourceLineNo">093</span>  @Test<a name="line.93"></a>
-<span class="sourceLineNo">094</span>  public void testReadWithExtra() throws IOException {<a name="line.94"></a>
-<span class="sourceLineNo">095</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testReadWithExtra");<a name="line.96"></a>
-<span class="sourceLineNo">097</span>    String s = "hello world";<a name="line.97"></a>
-<span class="sourceLineNo">098</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.98"></a>
-<span class="sourceLineNo">099</span>      out.writeBytes(s);<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    }<a name="line.100"></a>
-<span class="sourceLineNo">101</span>    ByteBuff buf = new SingleByteBuff(ByteBuffer.allocate(8));<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      assertTrue(BlockIOUtils.readWithExtra(buf, in, 6, 2));<a name="line.103"></a>
-<span class="sourceLineNo">104</span>    }<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    buf.rewind();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    byte[] heapBuf = new byte[buf.capacity()];<a name="line.106"></a>
-<span class="sourceLineNo">107</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    assertArrayEquals(Bytes.toBytes("hello wo"), heapBuf);<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>    buf = new MultiByteBuff(ByteBuffer.allocate(4), ByteBuffer.allocate(4), ByteBuffer.allocate(4));<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.111"></a>
-<span class="sourceLineNo">112</span>      assertTrue(BlockIOUtils.readWithExtra(buf, in, 8, 3));<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    }<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    buf.rewind();<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    heapBuf = new byte[11];<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    assertArrayEquals(Bytes.toBytes("hello world"), heapBuf);<a name="line.117"></a>
-<span class="sourceLineNo">118</span><a name="line.118"></a>
-<span class="sourceLineNo">119</span>    buf.position(0).limit(12);<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.120"></a>
-<span class="sourceLineNo">121</span>      try {<a name="line.121"></a>
-<span class="sourceLineNo">122</span>        BlockIOUtils.readWithExtra(buf, in, 12, 0);<a name="line.122"></a>
-<span class="sourceLineNo">123</span>        fail("Should only read 11 bytes");<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      } catch (IOException e) {<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      }<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
-<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>  @Test<a name="line.130"></a>
-<span class="sourceLineNo">131</span>  public void testPositionalReadNoExtra() throws IOException {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    long position = 0;<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    int bufOffset = 0;<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    int necessaryLen = 10;<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    int extraLen = 0;<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    int totalLen = necessaryLen + extraLen;<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    byte[] buf = new byte[totalLen];<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(totalLen);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    assertFalse("Expect false return when no extra bytes requested", ret);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    verifyNoMoreInteractions(in);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  @Test<a name="line.147"></a>
-<span class="sourceLineNo">148</span>  public void testPositionalReadShortReadOfNecessaryBytes() throws IOException {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    long position = 0;<a name="line.149"></a>
-<span class="sourceLineNo">150</span>    int bufOffset = 0;<a name="line.150"></a>
-<span class="sourceLineNo">151</span>    int necessaryLen = 10;<a name="line.151"></a>
-<span class="sourceLineNo">152</span>    int extraLen = 0;<a name="line.152"></a>
-<span class="sourceLineNo">153</span>    int totalLen = necessaryLen + extraLen;<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    byte[] buf = new byte[totalLen];<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(5);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    when(in.read(5, buf, 5, 5)).thenReturn(5);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.159"></a>
-<span class="sourceLineNo">160</span>    assertFalse("Expect false return when no extra bytes requested", ret);<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    verify(in).read(5, buf, 5, 5);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    verifyNoMoreInteractions(in);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  }<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>  @Test<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  public void testPositionalReadExtraSucceeded() throws IOException {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    long position = 0;<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    int bufOffset = 0;<a name="line.169"></a>
-<span class="sourceLineNo">170</span>    int necessaryLen = 10;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    int extraLen = 5;<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    int totalLen = necessaryLen + extraLen;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    byte[] buf = new byte[totalLen];<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(totalLen);<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>    verifyNoMoreInteractions(in);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>  }<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>  @Test<a name="line.183"></a>
-<span class="sourceLineNo">184</span>  public void testPositionalReadExtraFailed() throws IOException {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>    long position = 0;<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    int bufOffset = 0;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    int necessaryLen = 10;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    int extraLen = 5;<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    int totalLen = necessaryLen + extraLen;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    byte[] buf = new byte[totalLen];<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(necessaryLen);<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    assertFalse("Expect false return when reading extra bytes fails", ret);<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    verifyNoMoreInteractions(in);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>  }<a name="line.198"></a>
-<span class="sourceLineNo">199</span><a name="line.199"></a>
-<span class="sourceLineNo">200</span>  @Test<a name="line.200"></a>
-<span class="sourceLineNo">201</span>  public void testPositionalReadShortReadCompletesNecessaryAndExtraBytes()<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      throws IOException {<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    long position = 0;<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    int bufOffset = 0;<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    int necessaryLen = 10;<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    int extraLen = 5;<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    int totalLen = necessaryLen + extraLen;<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    byte[] buf = new byte[totalLen];<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(5);<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    when(in.read(5, buf, 5, 10)).thenReturn(10);<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    verify(in).read(5, buf, 5, 10);<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    verifyNoMoreInteractions(in);<a name="line.217"></a>
-<span class="sourceLineNo">218</span>  }<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span>  @Test<a name="line.220"></a>
-<span class="sourceLineNo">221</span>  public void testPositionalReadPrematureEOF() throws IOException {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    long position = 0;<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    int bufOffset = 0;<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    int necessaryLen = 10;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    int extraLen = 0;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    int totalLen = necessaryLen + extraLen;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    byte[] buf = new byte[totalLen];<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(9);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(-1);<a name="line.231"></a>
-<span class="sourceLineNo">232</span>    exception.expect(IOException.class);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>    exception.expectMessage("EOF");<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
-<span class="sourceLineNo">236</span>}<a name="line.236"></a>
+<span class="sourceLineNo">073</span>    try (FSDataInputStream is = fs.open(p)) {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>      assertFalse(BlockIOUtils.isByteBufferReadable(is));<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    }<a name="line.75"></a>
+<span class="sourceLineNo">076</span>  }<a name="line.76"></a>
+<span class="sourceLineNo">077</span><a name="line.77"></a>
+<span class="sourceLineNo">078</span>  @Test<a name="line.78"></a>
+<span class="sourceLineNo">079</span>  public void testReadFully() throws IOException {<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testReadFully");<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    String s = "hello world";<a name="line.82"></a>
+<span class="sourceLineNo">083</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      out.writeBytes(s);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>    }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    ByteBuff buf = new SingleByteBuff(ByteBuffer.allocate(11));<a name="line.86"></a>
+<span class="sourceLineNo">087</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      BlockIOUtils.readFully(buf, in, 11);<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    }<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    buf.rewind();<a name="line.90"></a>
+<span class="sourceLineNo">091</span>    byte[] heapBuf = new byte[s.length()];<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    assertArrayEquals(Bytes.toBytes(s), heapBuf);<a name="line.93"></a>
+<span class="sourceLineNo">094</span>  }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>  @Test<a name="line.96"></a>
+<span class="sourceLineNo">097</span>  public void testReadWithExtra() throws IOException {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    FileSystem fs = TEST_UTIL.getTestFileSystem();<a name="line.98"></a>
+<span class="sourceLineNo">099</span>    Path p = new Path(TEST_UTIL.getDataTestDirOnTestFS(), "testReadWithExtra");<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    String s = "hello world";<a name="line.100"></a>
+<span class="sourceLineNo">101</span>    try (FSDataOutputStream out = fs.create(p)) {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      out.writeBytes(s);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>    }<a name="line.103"></a>
+<span class="sourceLineNo">104</span>    ByteBuff buf = new SingleByteBuff(ByteBuffer.allocate(8));<a name="line.104"></a>
+<span class="sourceLineNo">105</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      assertTrue(BlockIOUtils.readWithExtra(buf, in, 6, 2));<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    buf.rewind();<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    byte[] heapBuf = new byte[buf.capacity()];<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    assertArrayEquals(Bytes.toBytes("hello wo"), heapBuf);<a name="line.111"></a>
+<span class="sourceLineNo">112</span><a name="line.112"></a>
+<span class="sourceLineNo">113</span>    buf = new MultiByteBuff(ByteBuffer.allocate(4), ByteBuffer.allocate(4), ByteBuffer.allocate(4));<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      assertTrue(BlockIOUtils.readWithExtra(buf, in, 8, 3));<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    }<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    buf.rewind();<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    heapBuf = new byte[11];<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    buf.get(heapBuf, 0, heapBuf.length);<a name="line.119"></a>
+<span class="sourceLineNo">120</span>    assertArrayEquals(Bytes.toBytes("hello world"), heapBuf);<a name="line.120"></a>
+<span class="sourceLineNo">121</span><a name="line.121"></a>
+<span class="sourceLineNo">122</span>    buf.position(0).limit(12);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    try (FSDataInputStream in = fs.open(p)) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      try {<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        BlockIOUtils.readWithExtra(buf, in, 12, 0);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>        fail("Should only read 11 bytes");<a name="line.126"></a>
+<span class="sourceLineNo">127</span>      } catch (IOException e) {<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>      }<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    }<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  }<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  @Test<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  public void testPositionalReadNoExtra() throws IOException {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    long position = 0;<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    int bufOffset = 0;<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    int necessaryLen = 10;<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    int extraLen = 0;<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    int totalLen = necessaryLen + extraLen;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    byte[] buf = new byte[totalLen];<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(totalLen);<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    assertFalse("Expect false return when no extra bytes requested", ret);<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    verify(in).hasCapability(anyString());<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    verifyNoMoreInteractions(in);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
+<span class="sourceLineNo">151</span><a name="line.151"></a>
+<span class="sourceLineNo">152</span>  @Test<a name="line.152"></a>
+<span class="sourceLineNo">153</span>  public void testPositionalReadShortReadOfNecessaryBytes() throws IOException {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    long position = 0;<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    int bufOffset = 0;<a name="line.155"></a>
+<span class="sourceLineNo">156</span>    int necessaryLen = 10;<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    int extraLen = 0;<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    int totalLen = necessaryLen + extraLen;<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    byte[] buf = new byte[totalLen];<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.160"></a>
+<span class="sourceLineNo">161</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(5);<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    when(in.read(5, buf, 5, 5)).thenReturn(5);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    assertFalse("Expect false return when no extra bytes requested", ret);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    verify(in).read(5, buf, 5, 5);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    verify(in).hasCapability(anyString());<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    verifyNoMoreInteractions(in);<a name="line.170"></a>
+<span class="sourceLineNo">171</span>  }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>  @Test<a name="line.173"></a>
+<span class="sourceLineNo">174</span>  public void testPositionalReadExtraSucceeded() throws IOException {<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    long position = 0;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    int bufOffset = 0;<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    int necessaryLen = 10;<a name="line.177"></a>
+<span class="sourceLineNo">178</span>    int extraLen = 5;<a name="line.178"></a>
+<span class="sourceLineNo">179</span>    int totalLen = necessaryLen + extraLen;<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    byte[] buf = new byte[totalLen];<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(totalLen);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    verify(in).hasCapability(anyString());<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    verifyNoMoreInteractions(in);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>  }<a name="line.190"></a>
+<span class="sourceLineNo">191</span><a name="line.191"></a>
+<span class="sourceLineNo">192</span>  @Test<a name="line.192"></a>
+<span class="sourceLineNo">193</span>  public void testPositionalReadExtraFailed() throws IOException {<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    long position = 0;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    int bufOffset = 0;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    int necessaryLen = 10;<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    int extraLen = 5;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    int totalLen = necessaryLen + extraLen;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    byte[] buf = new byte[totalLen];<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(necessaryLen);<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    assertFalse("Expect false return when reading extra bytes fails", ret);<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    verify(in).hasCapability(anyString());<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    verifyNoMoreInteractions(in);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  }<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  @Test<a name="line.211"></a>
+<span class="sourceLineNo">212</span>  public void testPositionalReadShortReadCompletesNecessaryAndExtraBytes()<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      throws IOException {<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    long position = 0;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    int bufOffset = 0;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    int necessaryLen = 10;<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    int extraLen = 5;<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    int totalLen = necessaryLen + extraLen;<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    byte[] buf = new byte[totalLen];<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(5);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    when(in.read(5, buf, 5, 10)).thenReturn(10);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    verify(in).read(position, buf, bufOffset, totalLen);<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    verify(in).read(5, buf, 5, 10);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    verify(in).hasCapability(anyString());<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    verifyNoMoreInteractions(in);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>  }<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>  @Test<a name="line.233"></a>
+<span class="sourceLineNo">234</span>  public void testPositionalReadPrematureEOF() throws IOException {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    long position = 0;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    int bufOffset = 0;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    int necessaryLen = 10;<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    int extraLen = 0;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    int totalLen = necessaryLen + extraLen;<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    byte[] buf = new byte[totalLen];<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    ByteBuff bb = new SingleByteBuff(ByteBuffer.wrap(buf, 0, totalLen));<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    FSDataInputStream in = mock(FSDataInputStream.class);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(9);<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    when(in.read(position, buf, bufOffset, totalLen)).thenReturn(-1);<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    when(in.hasCapability(anyString())).thenReturn(false);<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    exception.expect(IOException.class);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    exception.expectMessage("EOF");<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>  }<a name="line.249"></a>
+<span class="sourceLineNo">250</span><a name="line.250"></a>
+<span class="sourceLineNo">251</span>  /**<a name="line.251"></a>
+<span class="sourceLineNo">252</span>   * Determine if ByteBufferPositionedReadable API is available<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   * .<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   * @return true if FSDataInputStream implements ByteBufferPositionedReadable API.<a name="line.254"></a>
+<span class="sourceLineNo">255</span>   */<a name="line.255"></a>
+<span class="sourceLineNo">256</span>  private boolean isByteBufferPositionedReadable() {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    try {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      //long position, ByteBuffer buf<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      FSDataInputStream.class.getMethod("read", long.class, ByteBuffer.class);<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    } catch (NoSuchMethodException e) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      return false;<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    }<a name="line.262"></a>
+<span class="sourceLineNo">263</span>    return true;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>  }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>  public static class MyFSDataInputStream extends FSDataInputStream {<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    public MyFSDataInputStream(InputStream in) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      super(in);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    }<a name="line.269"></a>
+<span class="sourceLineNo">270</span><a name="line.270"></a>
+<span class="sourceLineNo">271</span>    // This is the ByteBufferPositionReadable API we want to test.<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    // Because the API is only available in Hadoop 3.3, FSDataInputStream in older Hadoop<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    // does not implement the interface, and it wouldn't compile trying to mock the method.<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    // So explicitly declare the method here to make mocking possible.<a name="line.274"></a>
+<span class="sourceLineNo">275</span>    public int read(long position, ByteBuffer buf) throws IOException {<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      return 0;<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    }<a name="line.277"></a>
+<span class="sourceLineNo">278</span>  }<a name="line.278"></a>
+<span class="sourceLineNo">279</span><a name="line.279"></a>
+<span class="sourceLineNo">280</span>  @Test<a name="line.280"></a>
+<span class="sourceLineNo">281</span>  public void testByteBufferPositionedReadable() throws IOException {<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    assumeTrue("Skip the test because ByteBufferPositionedReadable is not available",<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      isByteBufferPositionedReadable());<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    long position = 0;<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    int necessaryLen = 10;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    int extraLen = 1;<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    int totalLen = necessaryLen + extraLen;<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    int firstReadLen = 6;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    int secondReadLen = totalLen - firstReadLen;<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    ByteBuffer buf = ByteBuffer.allocate(totalLen);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    ByteBuff bb = new SingleByteBuff(buf);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    MyFSDataInputStream in = mock(MyFSDataInputStream.class);<a name="line.292"></a>
+<span class="sourceLineNo">293</span><a name="line.293"></a>
+<span class="sourceLineNo">294</span>    when(in.read(position, buf)).thenReturn(firstReadLen);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    when(in.read(firstReadLen, buf)).thenReturn(secondReadLen);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>    when(in.hasCapability(anyString())).thenReturn(true);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    boolean ret = BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    assertTrue("Expect true return when reading extra bytes succeeds", ret);<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    verify(in).read(position, buf);<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    verify(in).read(firstReadLen, buf);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    verify(in).hasCapability(anyString());<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    verifyNoMoreInteractions(in);<a name="line.302"></a>
+<span class="sourceLineNo">303</span>  }<a name="line.303"></a>
+<span class="sourceLineNo">304</span><a name="line.304"></a>
+<span class="sourceLineNo">305</span>  @Test<a name="line.305"></a>
+<span class="sourceLineNo">306</span>  public void testByteBufferPositionedReadableEOF() throws IOException {<a name="line.306"></a>
+<span class="sourceLineNo">307</span>    assumeTrue("Skip the test because ByteBufferPositionedReadable is not available",<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      isByteBufferPositionedReadable());<a name="line.308"></a>
+<span class="sourceLineNo">309</span>    long position = 0;<a name="line.309"></a>
+<span class="sourceLineNo">310</span>    int necessaryLen = 10;<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    int extraLen = 0;<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    int totalLen = necessaryLen + extraLen;<a name="line.312"></a>
+<span class="sourceLineNo">313</span>    int firstReadLen = 9;<a name="line.313"></a>
+<span class="sourceLineNo">314</span>    ByteBuffer buf = ByteBuffer.allocate(totalLen);<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    ByteBuff bb = new SingleByteBuff(buf);<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    MyFSDataInputStream in = mock(MyFSDataInputStream.class);<a name="line.316"></a>
+<span class="sourceLineNo">317</span><a name="line.317"></a>
+<span class="sourceLineNo">318</span>    when(in.read(position, buf)).thenReturn(firstReadLen);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>    when(in.read(position, buf)).thenReturn(-1);<a name="line.319"></a>
+<span class="sourceLineNo">320</span>    when(in.hasCapability(anyString())).thenReturn(true);<a name="line.320"></a>
+<span class="sourceLineNo">321</span>    exception.expect(IOException.class);<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    exception.expectMessage("EOF");<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    BlockIOUtils.preadWithExtra(bb, in, position, necessaryLen, extraLen);<a name="line.323"></a>
+<span class="sourceLineNo">324</span><a name="line.324"></a>
+<span class="sourceLineNo">325</span>    verify(in).read(position, buf);<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    verify(in).read(firstReadLen, buf);<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    verify(in).hasCapability(anyString());<a name="line.327"></a>
+<span class="sourceLineNo">328</span>    verifyNoMoreInteractions(in);<a name="line.328"></a>
+<span class="sourceLineNo">329</span>  }<a name="line.329"></a>
+<span class="sourceLineNo">330</span>}<a name="line.330"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.BlockingCompactionContext.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.BlockingStoreMockMaker.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.DummyCompactor.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.TestCompactionContext.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.StoreMockMaker.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.Tracker.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.WaitThroughPutController.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>
 
 
 
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html
index 3b119f4..2eb0d36 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestCompaction.html
@@ -33,874 +33,863 @@
 <span class="sourceLineNo">025</span>import static org.apache.hadoop.hbase.regionserver.compactions.CloseChecker.TIME_LIMIT_KEY;<a name="line.25"></a>
 <span class="sourceLineNo">026</span>import static org.junit.Assert.assertEquals;<a name="line.26"></a>
 <span class="sourceLineNo">027</span>import static org.junit.Assert.assertFalse;<a name="line.27"></a>
-<span class="sourceLineNo">028</span>import static org.junit.Assert.assertTrue;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import static org.junit.Assert.fail;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import static org.mockito.ArgumentMatchers.any;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import static org.mockito.Mockito.doAnswer;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import static org.mockito.Mockito.mock;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import static org.mockito.Mockito.spy;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import static org.mockito.Mockito.when;<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>import java.io.IOException;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import java.util.ArrayList;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import java.util.Collection;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import java.util.List;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import java.util.Optional;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.concurrent.CountDownLatch;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.concurrent.TimeUnit;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.conf.Configuration;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.fs.FileStatus;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FileSystem;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.Path;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HConstants;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.Waiter;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Put;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Table;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.security.User;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.junit.After;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>import org.junit.Assume;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>import org.junit.Before;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>import org.junit.ClassRule;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>import org.junit.Rule;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>import org.junit.Test;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>import org.junit.experimental.categories.Category;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>import org.junit.rules.TestName;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>import org.mockito.Mockito;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>import org.mockito.invocation.InvocationOnMock;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>import org.mockito.stubbing.Answer;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>import org.slf4j.Logger;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>import org.slf4j.LoggerFactory;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>/**<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * Test compaction framework and common functions<a name="line.92"></a>
-<span class="sourceLineNo">093</span> */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.94"></a>
-<span class="sourceLineNo">095</span>public class TestCompaction {<a name="line.95"></a>
-<span class="sourceLineNo">096</span><a name="line.96"></a>
-<span class="sourceLineNo">097</span>  @ClassRule<a name="line.97"></a>
-<span class="sourceLineNo">098</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.99"></a>
-<span class="sourceLineNo">100</span><a name="line.100"></a>
-<span class="sourceLineNo">101</span>  private static final Logger LOG = LoggerFactory.getLogger(TestCompaction.class);<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  @Rule<a name="line.103"></a>
-<span class="sourceLineNo">104</span>  public TestName name = new TestName();<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.106"></a>
-<span class="sourceLineNo">107</span><a name="line.107"></a>
-<span class="sourceLineNo">108</span>  private HRegion r = null;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  private TableDescriptor tableDescriptor = null;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  private int compactionThreshold;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>  /** constructor */<a name="line.118"></a>
-<span class="sourceLineNo">119</span>  public TestCompaction() {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    super();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    // Set cache flush size to 1MB<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.125"></a>
-<span class="sourceLineNo">126</span>        NoLimitThroughputController.class.getName());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    // Increment the least significant character so we get to next row.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>  }<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>  @Before<a name="line.137"></a>
-<span class="sourceLineNo">138</span>  public void setUp() throws Exception {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.142"></a>
-<span class="sourceLineNo">143</span>        DummyCompactor.class.getName());<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.144"></a>
-<span class="sourceLineNo">145</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      builder.setColumnFamily(familyDescriptor);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    this.tableDescriptor = builder.build();<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @After<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void tearDown() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    WAL wal = r.getWAL();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    this.r.close();<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    wal.close();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>  }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>  /**<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   * Verify that you can stop a long-running compaction<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   * (used during RS shutdown)<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   */<a name="line.162"></a>
-<span class="sourceLineNo">163</span>  @Test<a name="line.163"></a>
-<span class="sourceLineNo">164</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    assertEquals(0, count());<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // lower the polling interval for this test<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        Table loader = new RegionAsTable(r);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        }<a name="line.180"></a>
-<span class="sourceLineNo">181</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.181"></a>
-<span class="sourceLineNo">182</span>        loader.put(p);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        r.flush(true);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      HRegion spyR = spy(r);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>        @Override<a name="line.188"></a>
-<span class="sourceLineNo">189</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>          r.writestate.writesEnabled = false;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>          return invocation.callRealMethod();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>        }<a name="line.192"></a>
-<span class="sourceLineNo">193</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>      // force a minor compaction, but not before requesting a stop<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      spyR.compactStores();<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      // and no new store files persisted past compactStores()<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      // only one empty dir exists in temp dir<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      assertEquals(1, ls.length);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      assertEquals(0, ls.length);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    } finally {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>      // don't mess up future tests<a name="line.211"></a>
-<span class="sourceLineNo">212</span>      r.writestate.writesEnabled = true;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.213"></a>
-<span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      // Delete all Store information once done using<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.218"></a>
-<span class="sourceLineNo">219</span>        delete.addFamily(famAndQf[0]);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        r.delete(delete);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>      }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      r.flush(true);<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      final int ttl = 1000;<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      for (HStore store : this.r.stores.values()) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>        ScanInfo old = store.getScanInfo();<a name="line.228"></a>
-<span class="sourceLineNo">229</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.229"></a>
-<span class="sourceLineNo">230</span>        store.setScanInfo(si);<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      Thread.sleep(ttl);<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>      r.compact(true);<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      assertEquals(0, count());<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>  }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>  @Test<a name="line.239"></a>
-<span class="sourceLineNo">240</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    assertEquals(0, count());<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>    // lower the polling interval for this test<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.244"></a>
-<span class="sourceLineNo">245</span><a name="line.245"></a>
-<span class="sourceLineNo">246</span>    try {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>        Table loader = new RegionAsTable(r);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.252"></a>
-<span class="sourceLineNo">253</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.253"></a>
-<span class="sourceLineNo">254</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.255"></a>
-<span class="sourceLineNo">256</span>        }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.257"></a>
-<span class="sourceLineNo">258</span>        loader.put(p);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>        r.flush(true);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>      HRegion spyR = spy(r);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        @Override<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>          r.writestate.writesEnabled = false;<a name="line.266"></a>
-<span class="sourceLineNo">267</span>          return invocation.callRealMethod();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>        }<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.269"></a>
-<span class="sourceLineNo">270</span><a name="line.270"></a>
-<span class="sourceLineNo">271</span>      // force a minor compaction, but not before requesting a stop<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      spyR.compactStores();<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      // and no new store files persisted past compactStores()<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      // only one empty dir exists in temp dir<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      assertEquals(1, ls.length);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      Path storeTempDir =<a name="line.282"></a>
-<span class="sourceLineNo">283</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      assertEquals(0, ls.length);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    } finally {<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      // don't mess up future tests<a name="line.288"></a>
-<span class="sourceLineNo">289</span>      r.writestate.writesEnabled = true;<a name="line.289"></a>
-<span class="sourceLineNo">290</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.290"></a>
-<span class="sourceLineNo">291</span><a name="line.291"></a>
-<span class="sourceLineNo">292</span>      // Delete all Store information once done using<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.295"></a>
-<span class="sourceLineNo">296</span>        delete.addFamily(famAndQf[0]);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>        r.delete(delete);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      r.flush(true);<a name="line.299"></a>
-<span class="sourceLineNo">300</span><a name="line.300"></a>
-<span class="sourceLineNo">301</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.301"></a>
-<span class="sourceLineNo">302</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      final int ttl = 1000;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      for (HStore store : this.r.stores.values()) {<a name="line.304"></a>
-<span class="sourceLineNo">305</span>        ScanInfo old = store.getScanInfo();<a name="line.305"></a>
-<span class="sourceLineNo">306</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>        store.setScanInfo(si);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      }<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      Thread.sleep(ttl);<a name="line.309"></a>
-<span class="sourceLineNo">310</span><a name="line.310"></a>
-<span class="sourceLineNo">311</span>      r.compact(true);<a name="line.311"></a>
-<span class="sourceLineNo">312</span>      assertEquals(0, count());<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    }<a name="line.313"></a>
-<span class="sourceLineNo">314</span>  }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>  private int count() throws IOException {<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    int count = 0;<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      if (!scanner.seekTo()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>        continue;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      do {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        count++;<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      } while (scanner.next());<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    return count;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>  }<a name="line.328"></a>
-<span class="sourceLineNo">329</span><a name="line.329"></a>
-<span class="sourceLineNo">330</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    Table loader = new RegionAsTable(region);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    HTestConst.addContent(loader, family);<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    region.flush(true);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>  }<a name="line.338"></a>
-<span class="sourceLineNo">339</span><a name="line.339"></a>
-<span class="sourceLineNo">340</span>  @Test<a name="line.340"></a>
-<span class="sourceLineNo">341</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    int nfiles = 10;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      createStoreFile(r);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    DefaultCompactor tool = (DefaultCompactor)store.storeEngine.getCompactor();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>    // Now lets corrupt the compacted file.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    FileSystem fs = store.getFileSystem();<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    // default compaction policy created one and only one new compacted file<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    Path dstPath = store.getRegionFileSystem().createTempName();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    FSDataOutputStream stream = fs.create(dstPath, null, true, 512, (short)3, 1024L, null);<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    stream.writeChars("CORRUPT FILE!!!!");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    stream.close();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    Path origPath = store.getRegionFileSystem().commitStoreFile(<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      Bytes.toString(COLUMN_FAMILY), dstPath);<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>    try {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>      ((HStore)store).moveFileIntoPlace(origPath);<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    } catch (Exception e) {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      // The complete compaction should fail and the corrupt file should remain<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      // in the 'tmp' directory;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      assertTrue(fs.exists(origPath));<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      assertFalse(fs.exists(dstPath));<a name="line.369"></a>
-<span class="sourceLineNo">370</span>      LOG.info("testCompactionWithCorruptResult Passed");<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      return;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    }<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    fail("testCompactionWithCorruptResult failed since no exception was" +<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        "thrown while completing a corrupt file");<a name="line.374"></a>
-<span class="sourceLineNo">375</span>  }<a name="line.375"></a>
-<span class="sourceLineNo">376</span><a name="line.376"></a>
-<span class="sourceLineNo">377</span>  /**<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.378"></a>
-<span class="sourceLineNo">379</span>   * when the compaction is completed.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>   */<a name="line.380"></a>
-<span class="sourceLineNo">381</span>  @Test<a name="line.381"></a>
-<span class="sourceLineNo">382</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    // setup a compact/split thread on a mock server<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>    // setup a region/store with some files<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    createStoreFile(r);<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>      createStoreFile(r);<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    Tracker tracker = new Tracker(latch);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.398"></a>
-<span class="sourceLineNo">399</span>      null);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    // wait for the latch to complete.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    latch.await();<a name="line.401"></a>
+<span class="sourceLineNo">028</span>import static org.junit.Assert.assertThrows;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import static org.junit.Assert.assertTrue;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import static org.junit.Assert.fail;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import static org.mockito.ArgumentMatchers.any;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import static org.mockito.Mockito.doAnswer;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import static org.mockito.Mockito.mock;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import static org.mockito.Mockito.spy;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import static org.mockito.Mockito.when;<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span>import java.io.IOException;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import java.util.ArrayList;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import java.util.Collection;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import java.util.Collections;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import java.util.List;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.Optional;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.TimeUnit;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.apache.hadoop.conf.Configuration;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.apache.hadoop.fs.FSDataOutputStream;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.apache.hadoop.fs.FileStatus;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.apache.hadoop.fs.FileSystem;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import org.apache.hadoop.fs.Path;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import org.apache.hadoop.hbase.ChoreService;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import org.apache.hadoop.hbase.HBaseConfiguration;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import org.apache.hadoop.hbase.HBaseTestingUtil;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import org.apache.hadoop.hbase.HConstants;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import org.apache.hadoop.hbase.HTestConst;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.hbase.Waiter;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.client.Delete;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.client.Durability;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.client.Put;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.client.Table;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.client.TableDescriptor;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.io.hfile.HFileScanner;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionLifeCycleTracker;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequestImpl;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.regionserver.throttle.CompactionThroughputControllerFactory;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.regionserver.throttle.NoLimitThroughputController;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.regionserver.throttle.ThroughputController;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.security.User;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>import org.apache.hadoop.hbase.wal.WAL;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>import org.junit.After;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>import org.junit.Assume;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>import org.junit.Before;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>import org.junit.ClassRule;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>import org.junit.Rule;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>import org.junit.Test;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>import org.junit.experimental.categories.Category;<a name="line.86"></a>
+<span class="sourceLineNo">087</span>import org.junit.rules.TestName;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>import org.mockito.Mockito;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>import org.mockito.invocation.InvocationOnMock;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>import org.mockito.stubbing.Answer;<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>/**<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * Test compaction framework and common functions<a name="line.93"></a>
+<span class="sourceLineNo">094</span> */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>@Category({RegionServerTests.class, MediumTests.class})<a name="line.95"></a>
+<span class="sourceLineNo">096</span>public class TestCompaction {<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>  @ClassRule<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    HBaseClassTestRule.forClass(TestCompaction.class);<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Rule<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public TestName name = new TestName();<a name="line.103"></a>
+<span class="sourceLineNo">104</span>  private static final HBaseTestingUtil UTIL = new HBaseTestingUtil();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>  protected Configuration conf = UTIL.getConfiguration();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>  private HRegion r = null;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>  private TableDescriptor tableDescriptor = null;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  private static final byte [] COLUMN_FAMILY = fam1;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  private final byte [] STARTROW = Bytes.toBytes(START_KEY);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  private static final byte [] COLUMN_FAMILY_TEXT = COLUMN_FAMILY;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  private int compactionThreshold;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  private byte[] secondRowBytes, thirdRowBytes;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  private static final long MAX_FILES_TO_COMPACT = 10;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>  private final byte[] FAMILY = Bytes.toBytes("cf");<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>  /** constructor */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  public TestCompaction() {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    super();<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>    // Set cache flush size to 1MB<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    conf.setInt(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 1024 * 1024);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    conf.setInt(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER, 100);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.124"></a>
+<span class="sourceLineNo">125</span>        NoLimitThroughputController.class.getName());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    compactionThreshold = conf.getInt("hbase.hstore.compactionThreshold", 3);<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    secondRowBytes = START_KEY_BYTES.clone();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    // Increment the least significant character so we get to next row.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    secondRowBytes[START_KEY_BYTES.length - 1]++;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    thirdRowBytes = START_KEY_BYTES.clone();<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    thirdRowBytes[START_KEY_BYTES.length - 1] =<a name="line.132"></a>
+<span class="sourceLineNo">133</span>        (byte) (thirdRowBytes[START_KEY_BYTES.length - 1] + 2);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>  @Before<a name="line.136"></a>
+<span class="sourceLineNo">137</span>  public void setUp() throws Exception {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    TableDescriptorBuilder builder = UTIL.createModifyableTableDescriptor(name.getMethodName());<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if (name.getMethodName().equals("testCompactionSeqId")) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      UTIL.getConfiguration().set("hbase.hstore.compaction.kv.max", "10");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      UTIL.getConfiguration().set(DefaultStoreEngine.DEFAULT_COMPACTOR_CLASS_KEY,<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        DummyCompactor.class.getName());<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      ColumnFamilyDescriptor familyDescriptor =<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        ColumnFamilyDescriptorBuilder.newBuilder(FAMILY).setMaxVersions(65536).build();<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      builder.setColumnFamily(familyDescriptor);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    this.tableDescriptor = builder.build();<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    this.r = UTIL.createLocalHRegion(tableDescriptor, null, null);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>  }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>  @After<a name="line.151"></a>
+<span class="sourceLineNo">152</span>  public void tearDown() throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    WAL wal = r.getWAL();<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    this.r.close();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    wal.close();<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>  /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   * Verify that you can stop a long-running compaction<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   * (used during RS shutdown)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>  @Test<a name="line.162"></a>
+<span class="sourceLineNo">163</span>  public void testInterruptCompactionBySize() throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertEquals(0, count());<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // lower the polling interval for this test<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 /* 10 KB */);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    try {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        Table loader = new RegionAsTable(r);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.180"></a>
+<span class="sourceLineNo">181</span>        loader.put(p);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>        r.flush(true);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>      HRegion spyR = spy(r);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>        @Override<a name="line.187"></a>
+<span class="sourceLineNo">188</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          r.writestate.writesEnabled = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>          return invocation.callRealMethod();<a name="line.190"></a>
+<span class="sourceLineNo">191</span>        }<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.192"></a>
+<span class="sourceLineNo">193</span><a name="line.193"></a>
+<span class="sourceLineNo">194</span>      // force a minor compaction, but not before requesting a stop<a name="line.194"></a>
+<span class="sourceLineNo">195</span>      spyR.compactStores();<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      // and no new store files persisted past compactStores()<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      // only one empty dir exists in temp dir<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      assertEquals(1, ls.length);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      Path storeTempDir = new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      assertEquals(0, ls.length);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    } finally {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      // don't mess up future tests<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      r.writestate.writesEnabled = true;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      conf.setInt(SIZE_LIMIT_KEY, 10 * 1000 * 1000 /* 10 MB */);<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>      // Delete all Store information once done using<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.216"></a>
+<span class="sourceLineNo">217</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.217"></a>
+<span class="sourceLineNo">218</span>        delete.addFamily(famAndQf[0]);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>        r.delete(delete);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      r.flush(true);<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      final int ttl = 1000;<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      for (HStore store : this.r.stores.values()) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        ScanInfo old = store.getScanInfo();<a name="line.227"></a>
+<span class="sourceLineNo">228</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        store.setScanInfo(si);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      Thread.sleep(ttl);<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>      r.compact(true);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      assertEquals(0, count());<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Test<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void testInterruptCompactionByTime() throws Exception {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    assertEquals(0, count());<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    // lower the polling interval for this test<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    conf.setLong(TIME_LIMIT_KEY, 1 /* 1ms */);<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>    try {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      // Create a couple store files w/ 15KB (over 10KB interval)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      int jmax = (int) Math.ceil(15.0/compactionThreshold);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      byte [] pad = new byte[1000]; // 1 KB chunk<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        Table loader = new RegionAsTable(r);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>        Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.251"></a>
+<span class="sourceLineNo">252</span>        p.setDurability(Durability.SKIP_WAL);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>        for (int j = 0; j &lt; jmax; j++) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>          p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>        }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>        HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.256"></a>
+<span class="sourceLineNo">257</span>        loader.put(p);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>        r.flush(true);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>      HRegion spyR = spy(r);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      doAnswer(new Answer&lt;Object&gt;() {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>        @Override<a name="line.263"></a>
+<span class="sourceLineNo">264</span>        public Object answer(InvocationOnMock invocation) throws Throwable {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>          r.writestate.writesEnabled = false;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>          return invocation.callRealMethod();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>        }<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      }).when(spyR).doRegionCompactionPrep();<a name="line.268"></a>
+<span class="sourceLineNo">269</span><a name="line.269"></a>
+<span class="sourceLineNo">270</span>      // force a minor compaction, but not before requesting a stop<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      spyR.compactStores();<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>      // ensure that the compaction stopped, all old files are intact,<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      HStore s = r.getStore(COLUMN_FAMILY);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      assertEquals(compactionThreshold, s.getStorefilesCount());<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      assertTrue(s.getStorefilesSize() &gt; 15*1000);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      // and no new store files persisted past compactStores()<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      // only one empty dir exists in temp dir<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      FileStatus[] ls = r.getFilesystem().listStatus(r.getRegionFileSystem().getTempDir());<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      assertEquals(1, ls.length);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      Path storeTempDir =<a name="line.281"></a>
+<span class="sourceLineNo">282</span>        new Path(r.getRegionFileSystem().getTempDir(), Bytes.toString(COLUMN_FAMILY));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      assertTrue(r.getFilesystem().exists(storeTempDir));<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ls = r.getFilesystem().listStatus(storeTempDir);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>      assertEquals(0, ls.length);<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    } finally {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      // don't mess up future tests<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      r.writestate.writesEnabled = true;<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      conf.setLong(TIME_LIMIT_KEY, 10 * 1000L /* 10 s */);<a name="line.289"></a>
+<span class="sourceLineNo">290</span><a name="line.290"></a>
+<span class="sourceLineNo">291</span>      // Delete all Store information once done using<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>        Delete delete = new Delete(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.293"></a>
+<span class="sourceLineNo">294</span>        byte [][] famAndQf = {COLUMN_FAMILY, null};<a name="line.294"></a>
+<span class="sourceLineNo">295</span>        delete.addFamily(famAndQf[0]);<a name="line.295"></a>
+<span class="sourceLineNo">296</span>        r.delete(delete);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      r.flush(true);<a name="line.298"></a>
+<span class="sourceLineNo">299</span><a name="line.299"></a>
+<span class="sourceLineNo">300</span>      // Multiple versions allowed for an entry, so the delete isn't enough<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      // Lower TTL and expire to ensure that all our entries have been wiped<a name="line.301"></a>
+<span class="sourceLineNo">302</span>      final int ttl = 1000;<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      for (HStore store : this.r.stores.values()) {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        ScanInfo old = store.getScanInfo();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>        ScanInfo si = old.customize(old.getMaxVersions(), ttl, old.getKeepDeletedCells());<a name="line.305"></a>
+<span class="sourceLineNo">306</span>        store.setScanInfo(si);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      }<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      Thread.sleep(ttl);<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>      r.compact(true);<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      assertEquals(0, count());<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    }<a name="line.312"></a>
+<span class="sourceLineNo">313</span>  }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>  private int count() throws IOException {<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    int count = 0;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    for (HStoreFile f : this.r.stores.get(COLUMN_FAMILY_TEXT).getStorefiles()) {<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      HFileScanner scanner = f.getReader().getScanner(false, false);<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (!scanner.seekTo()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>        continue;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      do {<a name="line.322"></a>
+<span class="sourceLineNo">323</span>        count++;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>      } while (scanner.next());<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    }<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    return count;<a name="line.326"></a>
+<span class="sourceLineNo">327</span>  }<a name="line.327"></a>
+<span class="sourceLineNo">328</span><a name="line.328"></a>
+<span class="sourceLineNo">329</span>  private void createStoreFile(final HRegion region) throws IOException {<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    createStoreFile(region, Bytes.toString(COLUMN_FAMILY));<a name="line.330"></a>
+<span class="sourceLineNo">331</span>  }<a name="line.331"></a>
+<span class="sourceLineNo">332</span><a name="line.332"></a>
+<span class="sourceLineNo">333</span>  private void createStoreFile(final HRegion region, String family) throws IOException {<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    Table loader = new RegionAsTable(region);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    HTestConst.addContent(loader, family);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>    region.flush(true);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>  }<a name="line.337"></a>
+<span class="sourceLineNo">338</span><a name="line.338"></a>
+<span class="sourceLineNo">339</span>  @Test<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  public void testCompactionWithCorruptResult() throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    int nfiles = 10;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    for (int i = 0; i &lt; nfiles; i++) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      createStoreFile(r);<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>    Collection&lt;HStoreFile&gt; storeFiles = store.getStorefiles();<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    DefaultCompactor tool = (DefaultCompactor) store.storeEngine.getCompactor();<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    CompactionRequestImpl request = new CompactionRequestImpl(storeFiles);<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    tool.compact(request, NoLimitThroughputController.INSTANCE, null);<a name="line.350"></a>
+<span class="sourceLineNo">351</span><a name="line.351"></a>
+<span class="sourceLineNo">352</span>    // Now lets corrupt the compacted file.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    FileSystem fs = store.getFileSystem();<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    // default compaction policy created one and only one new compacted file<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    Path tmpPath = store.getRegionFileSystem().createTempName();<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    try (FSDataOutputStream stream = fs.create(tmpPath, null, true, 512, (short) 3, 1024L, null)) {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      stream.writeChars("CORRUPT FILE!!!!");<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    }<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    // The complete compaction should fail and the corrupt file should remain<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    // in the 'tmp' directory;<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    assertThrows(IOException.class, () -&gt; store.doCompaction(null, null, null,<a name="line.361"></a>
+<span class="sourceLineNo">362</span>      EnvironmentEdgeManager.currentTime(), Collections.singletonList(tmpPath)));<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    assertTrue(fs.exists(tmpPath));<a name="line.363"></a>
+<span class="sourceLineNo">364</span>  }<a name="line.364"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>  /**<a name="line.366"></a>
+<span class="sourceLineNo">367</span>   * Create a custom compaction request and be sure that we can track it through the queue, knowing<a name="line.367"></a>
+<span class="sourceLineNo">368</span>   * when the compaction is completed.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>   */<a name="line.369"></a>
+<span class="sourceLineNo">370</span>  @Test<a name="line.370"></a>
+<span class="sourceLineNo">371</span>  public void testTrackingCompactionRequest() throws Exception {<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    // setup a compact/split thread on a mock server<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>    // setup a region/store with some files<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    createStoreFile(r);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    for (int i = 0; i &lt; MAX_FILES_TO_COMPACT + 1; i++) {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      createStoreFile(r);<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>    CountDownLatch latch = new CountDownLatch(1);<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    Tracker tracker = new Tracker(latch);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      null);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    // wait for the latch to complete.<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    latch.await();<a name="line.390"></a>
+<span class="sourceLineNo">391</span><a name="line.391"></a>
+<span class="sourceLineNo">392</span>    thread.interruptIfNecessary();<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>  @Test<a name="line.395"></a>
+<span class="sourceLineNo">396</span>  public void testCompactionFailure() throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    // setup a compact/split thread on a mock server<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.401"></a>
 <span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>    thread.interruptIfNecessary();<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>  @Test<a name="line.406"></a>
-<span class="sourceLineNo">407</span>  public void testCompactionFailure() throws Exception {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    // setup a compact/split thread on a mock server<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.412"></a>
+<span class="sourceLineNo">403</span>    // setup a region/store with some files<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    createStoreFile(r);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.406"></a>
+<span class="sourceLineNo">407</span>      createStoreFile(r);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    }<a name="line.408"></a>
+<span class="sourceLineNo">409</span><a name="line.409"></a>
+<span class="sourceLineNo">410</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.412"></a>
 <span class="sourceLineNo">413</span><a name="line.413"></a>
-<span class="sourceLineNo">414</span>    // setup a region/store with some files<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    createStoreFile(r);<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>      createStoreFile(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    }<a name="line.419"></a>
-<span class="sourceLineNo">420</span><a name="line.420"></a>
-<span class="sourceLineNo">421</span>    HRegion mockRegion = Mockito.spy(r);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    Mockito.when(mockRegion.checkSplit()).<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      thenThrow(new RuntimeException("Thrown intentionally by test!"));<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
+<span class="sourceLineNo">414</span>    try (MetricsRegionWrapperImpl metricsWrapper = new MetricsRegionWrapperImpl(r)) {<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>      long preCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>      long preFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.419"></a>
+<span class="sourceLineNo">420</span>      Tracker tracker = new Tracker(latch);<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.421"></a>
+<span class="sourceLineNo">422</span>        null);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>      // wait for the latch to complete.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.426"></a>
+<span class="sourceLineNo">427</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.428"></a>
 <span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>      CountDownLatch latch = new CountDownLatch(1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Tracker tracker = new Tracker(latch);<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      thread.requestCompaction(mockRegion, store, "test custom comapction", PRIORITY_USER, tracker,<a name="line.432"></a>
-<span class="sourceLineNo">433</span>        null);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>      // wait for the latch to complete.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      latch.await(120, TimeUnit.SECONDS);<a name="line.435"></a>
+<span class="sourceLineNo">430</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.430"></a>
+<span class="sourceLineNo">431</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.432"></a>
+<span class="sourceLineNo">433</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.433"></a>
+<span class="sourceLineNo">434</span>    }<a name="line.434"></a>
+<span class="sourceLineNo">435</span>  }<a name="line.435"></a>
 <span class="sourceLineNo">436</span><a name="line.436"></a>
-<span class="sourceLineNo">437</span>      // compaction should have completed and been marked as failed due to error in split request<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      long postCompletedCount = metricsWrapper.getNumCompactionsCompleted();<a name="line.438"></a>
-<span class="sourceLineNo">439</span>      long postFailedCount = metricsWrapper.getNumCompactionsFailed();<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>      assertTrue("Completed count should have increased (pre=" + preCompletedCount + ", post=" +<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        postCompletedCount + ")", postCompletedCount &gt; preCompletedCount);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      assertTrue("Failed count should have increased (pre=" + preFailedCount + ", post=" +<a name="line.443"></a>
-<span class="sourceLineNo">444</span>        postFailedCount + ")", postFailedCount &gt; preFailedCount);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>  }<a name="line.446"></a>
-<span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>  /**<a name="line.448"></a>
-<span class="sourceLineNo">449</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.449"></a>
-<span class="sourceLineNo">450</span>   */<a name="line.450"></a>
-<span class="sourceLineNo">451</span>  @Test<a name="line.451"></a>
-<span class="sourceLineNo">452</span>  public void testStopStartCompaction() throws IOException {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    // setup a compact/split thread on a mock server<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    // setup a region/store with some files<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    createStoreFile(r);<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      createStoreFile(r);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>    }<a name="line.463"></a>
-<span class="sourceLineNo">464</span>    thread.switchCompaction(false);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.465"></a>
-<span class="sourceLineNo">466</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.470"></a>
-<span class="sourceLineNo">471</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    thread.switchCompaction(true);<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    // Make sure no compactions have run.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.475"></a>
-<span class="sourceLineNo">476</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    // Wait until the compaction finishes.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.481"></a>
-<span class="sourceLineNo">482</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.482"></a>
-<span class="sourceLineNo">483</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    // Make sure there are no compactions running.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.485"></a>
-<span class="sourceLineNo">486</span>        + thread.getShortCompactions().getActiveCount());<a name="line.486"></a>
-<span class="sourceLineNo">487</span>  }<a name="line.487"></a>
-<span class="sourceLineNo">488</span><a name="line.488"></a>
-<span class="sourceLineNo">489</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    // setup a compact/split thread on a mock server<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.491"></a>
-<span class="sourceLineNo">492</span>        WaitThroughPutController.class.getName());<a name="line.492"></a>
-<span class="sourceLineNo">493</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.493"></a>
-<span class="sourceLineNo">494</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>    // setup a region/store with some files<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>      Table loader = new RegionAsTable(r);<a name="line.504"></a>
-<span class="sourceLineNo">505</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.505"></a>
-<span class="sourceLineNo">506</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.510"></a>
-<span class="sourceLineNo">511</span>      loader.put(p);<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      r.flush(true);<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    }<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    int initialFiles = s.getStorefilesCount();<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.518"></a>
-<span class="sourceLineNo">519</span><a name="line.519"></a>
-<span class="sourceLineNo">520</span>    Thread.sleep(3000);<a name="line.520"></a>
-<span class="sourceLineNo">521</span>    thread.switchCompaction(false);<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.522"></a>
-<span class="sourceLineNo">523</span>    //don't mess up future tests<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    thread.switchCompaction(true);<a name="line.524"></a>
-<span class="sourceLineNo">525</span>  }<a name="line.525"></a>
-<span class="sourceLineNo">526</span><a name="line.526"></a>
-<span class="sourceLineNo">527</span>  /**<a name="line.527"></a>
-<span class="sourceLineNo">528</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.528"></a>
-<span class="sourceLineNo">529</span>   * {@link CompactSplit}<a name="line.529"></a>
-<span class="sourceLineNo">530</span>   * @throws Exception on failure<a name="line.530"></a>
-<span class="sourceLineNo">531</span>   */<a name="line.531"></a>
-<span class="sourceLineNo">532</span>  @Test<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    // setup a compact/split thread on a mock server<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>    // setup a region/store with some files<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    int numStores = r.getStores().size();<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    Tracker tracker = new Tracker(latch);<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    // compaction<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    for (HStore store : r.getStores()) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.550"></a>
-<span class="sourceLineNo">551</span>        tracker, null);<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    }<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    // wait for the latch to complete.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    latch.await();<a name="line.554"></a>
-<span class="sourceLineNo">555</span><a name="line.555"></a>
-<span class="sourceLineNo">556</span>    thread.interruptIfNecessary();<a name="line.556"></a>
-<span class="sourceLineNo">557</span>  }<a name="line.557"></a>
+<span class="sourceLineNo">437</span>  /**<a name="line.437"></a>
+<span class="sourceLineNo">438</span>   * Test no new Compaction requests are generated after calling stop compactions<a name="line.438"></a>
+<span class="sourceLineNo">439</span>   */<a name="line.439"></a>
+<span class="sourceLineNo">440</span>  @Test<a name="line.440"></a>
+<span class="sourceLineNo">441</span>  public void testStopStartCompaction() throws IOException {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>    // setup a compact/split thread on a mock server<a name="line.442"></a>
+<span class="sourceLineNo">443</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.444"></a>
+<span class="sourceLineNo">445</span>    final CompactSplit thread = new CompactSplit(mockServer);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    // setup a region/store with some files<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    createStoreFile(r);<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    for (int i = 0; i &lt; HStore.DEFAULT_BLOCKING_STOREFILE_COUNT - 1; i++) {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      createStoreFile(r);<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    thread.switchCompaction(false);<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      CompactionLifeCycleTracker.DUMMY, null);<a name="line.455"></a>
+<span class="sourceLineNo">456</span>    assertFalse(thread.isCompactionsEnabled());<a name="line.456"></a>
+<span class="sourceLineNo">457</span>    int longCompactions = thread.getLongCompactions().getActiveCount();<a name="line.457"></a>
+<span class="sourceLineNo">458</span>    int shortCompactions = thread.getShortCompactions().getActiveCount();<a name="line.458"></a>
+<span class="sourceLineNo">459</span>    assertEquals("longCompactions=" + longCompactions + "," +<a name="line.459"></a>
+<span class="sourceLineNo">460</span>        "shortCompactions=" + shortCompactions, 0, longCompactions + shortCompactions);<a name="line.460"></a>
+<span class="sourceLineNo">461</span>    thread.switchCompaction(true);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>    assertTrue(thread.isCompactionsEnabled());<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    // Make sure no compactions have run.<a name="line.463"></a>
+<span class="sourceLineNo">464</span>    assertEquals(0, thread.getLongCompactions().getCompletedTaskCount() +<a name="line.464"></a>
+<span class="sourceLineNo">465</span>        thread.getShortCompactions().getCompletedTaskCount());<a name="line.465"></a>
+<span class="sourceLineNo">466</span>    // Request a compaction and make sure it is submitted successfully.<a name="line.466"></a>
+<span class="sourceLineNo">467</span>    thread.requestCompaction(r, store, "test", Store.PRIORITY_USER,<a name="line.467"></a>
+<span class="sourceLineNo">468</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    // Wait until the compaction finishes.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    Waiter.waitFor(UTIL.getConfiguration(), 5000,<a name="line.470"></a>
+<span class="sourceLineNo">471</span>        (Waiter.Predicate&lt;Exception&gt;) () -&gt; thread.getLongCompactions().getCompletedTaskCount() +<a name="line.471"></a>
+<span class="sourceLineNo">472</span>        thread.getShortCompactions().getCompletedTaskCount() == 1);<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    // Make sure there are no compactions running.<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    assertEquals(0, thread.getLongCompactions().getActiveCount()<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        + thread.getShortCompactions().getActiveCount());<a name="line.475"></a>
+<span class="sourceLineNo">476</span>  }<a name="line.476"></a>
+<span class="sourceLineNo">477</span><a name="line.477"></a>
+<span class="sourceLineNo">478</span>  @Test public void testInterruptingRunningCompactions() throws Exception {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>    // setup a compact/split thread on a mock server<a name="line.479"></a>
+<span class="sourceLineNo">480</span>    conf.set(CompactionThroughputControllerFactory.HBASE_THROUGHPUT_CONTROLLER_KEY,<a name="line.480"></a>
+<span class="sourceLineNo">481</span>        WaitThroughPutController.class.getName());<a name="line.481"></a>
+<span class="sourceLineNo">482</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.482"></a>
+<span class="sourceLineNo">483</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.484"></a>
+<span class="sourceLineNo">485</span><a name="line.485"></a>
+<span class="sourceLineNo">486</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.486"></a>
+<span class="sourceLineNo">487</span><a name="line.487"></a>
+<span class="sourceLineNo">488</span>    // setup a region/store with some files<a name="line.488"></a>
+<span class="sourceLineNo">489</span>    HStore store = r.getStore(COLUMN_FAMILY);<a name="line.489"></a>
+<span class="sourceLineNo">490</span>    int jmax = (int) Math.ceil(15.0 / compactionThreshold);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>    byte[] pad = new byte[1000]; // 1 KB chunk<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    for (int i = 0; i &lt; compactionThreshold; i++) {<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      Table loader = new RegionAsTable(r);<a name="line.493"></a>
+<span class="sourceLineNo">494</span>      Put p = new Put(Bytes.add(STARTROW, Bytes.toBytes(i)));<a name="line.494"></a>
+<span class="sourceLineNo">495</span>      p.setDurability(Durability.SKIP_WAL);<a name="line.495"></a>
+<span class="sourceLineNo">496</span>      for (int j = 0; j &lt; jmax; j++) {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>        p.addColumn(COLUMN_FAMILY, Bytes.toBytes(j), pad);<a name="line.497"></a>
+<span class="sourceLineNo">498</span>      }<a name="line.498"></a>
+<span class="sourceLineNo">499</span>      HTestConst.addContent(loader, Bytes.toString(COLUMN_FAMILY));<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      loader.put(p);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      r.flush(true);<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    }<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    HStore s = r.getStore(COLUMN_FAMILY);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>    int initialFiles = s.getStorefilesCount();<a name="line.504"></a>
+<span class="sourceLineNo">505</span><a name="line.505"></a>
+<span class="sourceLineNo">506</span>    thread.requestCompaction(r, store, "test custom comapction", PRIORITY_USER,<a name="line.506"></a>
+<span class="sourceLineNo">507</span>        CompactionLifeCycleTracker.DUMMY, null);<a name="line.507"></a>
+<span class="sourceLineNo">508</span><a name="line.508"></a>
+<span class="sourceLineNo">509</span>    Thread.sleep(3000);<a name="line.509"></a>
+<span class="sourceLineNo">510</span>    thread.switchCompaction(false);<a name="line.510"></a>
+<span class="sourceLineNo">511</span>    assertEquals(initialFiles, s.getStorefilesCount());<a name="line.511"></a>
+<span class="sourceLineNo">512</span>    //don't mess up future tests<a name="line.512"></a>
+<span class="sourceLineNo">513</span>    thread.switchCompaction(true);<a name="line.513"></a>
+<span class="sourceLineNo">514</span>  }<a name="line.514"></a>
+<span class="sourceLineNo">515</span><a name="line.515"></a>
+<span class="sourceLineNo">516</span>  /**<a name="line.516"></a>
+<span class="sourceLineNo">517</span>   * HBASE-7947: Regression test to ensure adding to the correct list in the<a name="line.517"></a>
+<span class="sourceLineNo">518</span>   * {@link CompactSplit}<a name="line.518"></a>
+<span class="sourceLineNo">519</span>   * @throws Exception on failure<a name="line.519"></a>
+<span class="sourceLineNo">520</span>   */<a name="line.520"></a>
+<span class="sourceLineNo">521</span>  @Test<a name="line.521"></a>
+<span class="sourceLineNo">522</span>  public void testMultipleCustomCompactionRequests() throws Exception {<a name="line.522"></a>
+<span class="sourceLineNo">523</span>    // setup a compact/split thread on a mock server<a name="line.523"></a>
+<span class="sourceLineNo">524</span>    HRegionServer mockServer = Mockito.mock(HRegionServer.class);<a name="line.524"></a>
+<span class="sourceLineNo">525</span>    Mockito.when(mockServer.getConfiguration()).thenReturn(r.getBaseConf());<a name="line.525"></a>
+<span class="sourceLineNo">526</span>    CompactSplit thread = new CompactSplit(mockServer);<a name="line.526"></a>
+<span class="sourceLineNo">527</span>    Mockito.when(mockServer.getCompactSplitThread()).thenReturn(thread);<a name="line.527"></a>
+<span class="sourceLineNo">528</span><a name="line.528"></a>
+<span class="sourceLineNo">529</span>    // setup a region/store with some files<a name="line.529"></a>
+<span class="sourceLineNo">530</span>    int numStores = r.getStores().size();<a name="line.530"></a>
+<span class="sourceLineNo">531</span>    CountDownLatch latch = new CountDownLatch(numStores);<a name="line.531"></a>
+<span class="sourceLineNo">532</span>    Tracker tracker = new Tracker(latch);<a name="line.532"></a>
+<span class="sourceLineNo">533</span>    // create some store files and setup requests for each store on which we want to do a<a name="line.533"></a>
+<span class="sourceLineNo">534</span>    // compaction<a name="line.534"></a>
+<span class="sourceLineNo">535</span>    for (HStore store : r.getStores()) {<a name="line.535"></a>
+<span class="sourceLineNo">536</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.536"></a>
+<span class="sourceLineNo">537</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.537"></a>
+<span class="sourceLineNo">538</span>      createStoreFile(r, store.getColumnFamilyName());<a name="line.538"></a>
+<span class="sourceLineNo">539</span>      thread.requestCompaction(r, store, "test mulitple custom comapctions", PRIORITY_USER,<a name="line.539"></a>
+<span class="sourceLineNo">540</span>        tracker, null);<a name="line.540"></a>
+<span class="sourceLineNo">541</span>    }<a name="line.541"></a>
+<span class="sourceLineNo">542</span>    // wait for the latch to complete.<a name="line.542"></a>
+<span class="sourceLineNo">543</span>    latch.await();<a name="line.543"></a>
+<span class="sourceLineNo">544</span><a name="line.544"></a>
+<span class="sourceLineNo">545</span>    thread.interruptIfNecessary();<a name="line.545"></a>
+<span class="sourceLineNo">546</span>  }<a name="line.546"></a>
+<span class="sourceLineNo">547</span><a name="line.547"></a>
+<span class="sourceLineNo">548</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.548"></a>
+<span class="sourceLineNo">549</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.549"></a>
+<span class="sourceLineNo">550</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.550"></a>
+<span class="sourceLineNo">551</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.551"></a>
+<span class="sourceLineNo">552</span><a name="line.552"></a>
+<span class="sourceLineNo">553</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.553"></a>
+<span class="sourceLineNo">554</span>      this.results = results;<a name="line.554"></a>
+<span class="sourceLineNo">555</span>    }<a name="line.555"></a>
+<span class="sourceLineNo">556</span><a name="line.556"></a>
+<span class="sourceLineNo">557</span>    public class TestCompactionContext extends CompactionContext {<a name="line.557"></a>
 <span class="sourceLineNo">558</span><a name="line.558"></a>
-<span class="sourceLineNo">559</span>  class StoreMockMaker extends StatefulStoreMockMaker {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    public ArrayList&lt;HStoreFile&gt; compacting = new ArrayList&lt;&gt;();<a name="line.560"></a>
-<span class="sourceLineNo">561</span>    public ArrayList&lt;HStoreFile&gt; notCompacting = new ArrayList&lt;&gt;();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>    private final ArrayList&lt;Integer&gt; results;<a name="line.562"></a>
-<span class="sourceLineNo">563</span><a name="line.563"></a>
-<span class="sourceLineNo">564</span>    public StoreMockMaker(ArrayList&lt;Integer&gt; results) {<a name="line.564"></a>
-<span class="sourceLineNo">565</span>      this.results = results;<a name="line.565"></a>
-<span class="sourceLineNo">566</span>    }<a name="line.566"></a>
-<span class="sourceLineNo">567</span><a name="line.567"></a>
-<span class="sourceLineNo">568</span>    public class TestCompactionContext extends CompactionContext {<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.570"></a>
-<span class="sourceLineNo">571</span><a name="line.571"></a>
-<span class="sourceLineNo">572</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.572"></a>
-<span class="sourceLineNo">573</span>        super();<a name="line.573"></a>
-<span class="sourceLineNo">574</span>        this.selectedFiles = selectedFiles;<a name="line.574"></a>
-<span class="sourceLineNo">575</span>      }<a name="line.575"></a>
-<span class="sourceLineNo">576</span><a name="line.576"></a>
-<span class="sourceLineNo">577</span>      @Override<a name="line.577"></a>
-<span class="sourceLineNo">578</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.578"></a>
-<span class="sourceLineNo">579</span>        return new ArrayList&lt;&gt;();<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      }<a name="line.580"></a>
-<span class="sourceLineNo">581</span><a name="line.581"></a>
-<span class="sourceLineNo">582</span>      @Override<a name="line.582"></a>
-<span class="sourceLineNo">583</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.583"></a>
-<span class="sourceLineNo">584</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.584"></a>
-<span class="sourceLineNo">585</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.585"></a>
-<span class="sourceLineNo">586</span>        this.request.setPriority(getPriority());<a name="line.586"></a>
-<span class="sourceLineNo">587</span>        return true;<a name="line.587"></a>
-<span class="sourceLineNo">588</span>      }<a name="line.588"></a>
-<span class="sourceLineNo">589</span><a name="line.589"></a>
-<span class="sourceLineNo">590</span>      @Override<a name="line.590"></a>
-<span class="sourceLineNo">591</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.591"></a>
-<span class="sourceLineNo">592</span>          throws IOException {<a name="line.592"></a>
-<span class="sourceLineNo">593</span>        finishCompaction(this.selectedFiles);<a name="line.593"></a>
-<span class="sourceLineNo">594</span>        return new ArrayList&lt;&gt;();<a name="line.594"></a>
-<span class="sourceLineNo">595</span>      }<a name="line.595"></a>
-<span class="sourceLineNo">596</span>    }<a name="line.596"></a>
-<span class="sourceLineNo">597</span><a name="line.597"></a>
-<span class="sourceLineNo">598</span>    @Override<a name="line.598"></a>
-<span class="sourceLineNo">599</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.599"></a>
-<span class="sourceLineNo">600</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.600"></a>
-<span class="sourceLineNo">601</span>      compacting.addAll(notCompacting);<a name="line.601"></a>
-<span class="sourceLineNo">602</span>      notCompacting.clear();<a name="line.602"></a>
-<span class="sourceLineNo">603</span>      try {<a name="line.603"></a>
-<span class="sourceLineNo">604</span>        ctx.select(null, false, false, false);<a name="line.604"></a>
-<span class="sourceLineNo">605</span>      } catch (IOException ex) {<a name="line.605"></a>
-<span class="sourceLineNo">606</span>        fail("Shouldn't happen");<a name="line.606"></a>
-<span class="sourceLineNo">607</span>      }<a name="line.607"></a>
-<span class="sourceLineNo">608</span>      return Optional.of(ctx);<a name="line.608"></a>
-<span class="sourceLineNo">609</span>    }<a name="line.609"></a>
-<span class="sourceLineNo">610</span><a name="line.610"></a>
-<span class="sourceLineNo">611</span>    @Override<a name="line.611"></a>
-<span class="sourceLineNo">612</span>    public synchronized void cancelCompaction(Object object) {<a name="line.612"></a>
-<span class="sourceLineNo">613</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.613"></a>
-<span class="sourceLineNo">614</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.614"></a>
-<span class="sourceLineNo">615</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.615"></a>
-<span class="sourceLineNo">616</span>    }<a name="line.616"></a>
-<span class="sourceLineNo">617</span><a name="line.617"></a>
-<span class="sourceLineNo">618</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.618"></a>
-<span class="sourceLineNo">619</span>      if (sfs.isEmpty()) return;<a name="line.619"></a>
-<span class="sourceLineNo">620</span>      synchronized (results) {<a name="line.620"></a>
-<span class="sourceLineNo">621</span>        results.add(sfs.size());<a name="line.621"></a>
-<span class="sourceLineNo">622</span>      }<a name="line.622"></a>
-<span class="sourceLineNo">623</span>      compacting.removeAll(sfs);<a name="line.623"></a>
-<span class="sourceLineNo">624</span>    }<a name="line.624"></a>
-<span class="sourceLineNo">625</span><a name="line.625"></a>
-<span class="sourceLineNo">626</span>    @Override<a name="line.626"></a>
-<span class="sourceLineNo">627</span>    public int getPriority() {<a name="line.627"></a>
-<span class="sourceLineNo">628</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.628"></a>
-<span class="sourceLineNo">629</span>    }<a name="line.629"></a>
-<span class="sourceLineNo">630</span>  }<a name="line.630"></a>
-<span class="sourceLineNo">631</span><a name="line.631"></a>
-<span class="sourceLineNo">632</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.632"></a>
-<span class="sourceLineNo">633</span>    BlockingCompactionContext blocked = null;<a name="line.633"></a>
-<span class="sourceLineNo">634</span><a name="line.634"></a>
-<span class="sourceLineNo">635</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.635"></a>
-<span class="sourceLineNo">636</span>      public volatile boolean isInCompact = false;<a name="line.636"></a>
-<span class="sourceLineNo">637</span><a name="line.637"></a>
-<span class="sourceLineNo">638</span>      public void unblock() {<a name="line.638"></a>
-<span class="sourceLineNo">639</span>        synchronized (this) {<a name="line.639"></a>
-<span class="sourceLineNo">640</span>          this.notifyAll();<a name="line.640"></a>
-<span class="sourceLineNo">641</span>        }<a name="line.641"></a>
-<span class="sourceLineNo">642</span>      }<a name="line.642"></a>
-<span class="sourceLineNo">643</span><a name="line.643"></a>
-<span class="sourceLineNo">644</span>      @Override<a name="line.644"></a>
-<span class="sourceLineNo">645</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.645"></a>
-<span class="sourceLineNo">646</span>          throws IOException {<a name="line.646"></a>
-<span class="sourceLineNo">647</span>        try {<a name="line.647"></a>
-<span class="sourceLineNo">648</span>          isInCompact = true;<a name="line.648"></a>
-<span class="sourceLineNo">649</span>          synchronized (this) {<a name="line.649"></a>
-<span class="sourceLineNo">650</span>            this.wait();<a name="line.650"></a>
-<span class="sourceLineNo">651</span>          }<a name="line.651"></a>
-<span class="sourceLineNo">652</span>        } catch (InterruptedException e) {<a name="line.652"></a>
-<span class="sourceLineNo">653</span>          Assume.assumeNoException(e);<a name="line.653"></a>
-<span class="sourceLineNo">654</span>        }<a name="line.654"></a>
-<span class="sourceLineNo">655</span>        return new ArrayList&lt;&gt;();<a name="line.655"></a>
-<span class="sourceLineNo">656</span>      }<a name="line.656"></a>
-<span class="sourceLineNo">657</span><a name="line.657"></a>
-<span class="sourceLineNo">658</span>      @Override<a name="line.658"></a>
-<span class="sourceLineNo">659</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.659"></a>
-<span class="sourceLineNo">660</span>        return new ArrayList&lt;&gt;();<a name="line.660"></a>
-<span class="sourceLineNo">661</span>      }<a name="line.661"></a>
-<span class="sourceLineNo">662</span><a name="line.662"></a>
-<span class="sourceLineNo">663</span>      @Override<a name="line.663"></a>
-<span class="sourceLineNo">664</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.664"></a>
-<span class="sourceLineNo">665</span>          throws IOException {<a name="line.665"></a>
-<span class="sourceLineNo">666</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.666"></a>
-<span class="sourceLineNo">667</span>        return true;<a name="line.667"></a>
-<span class="sourceLineNo">668</span>      }<a name="line.668"></a>
+<span class="sourceLineNo">559</span>      private List&lt;HStoreFile&gt; selectedFiles;<a name="line.559"></a>
+<span class="sourceLineNo">560</span><a name="line.560"></a>
+<span class="sourceLineNo">561</span>      public TestCompactionContext(List&lt;HStoreFile&gt; selectedFiles) {<a name="line.561"></a>
+<span class="sourceLineNo">562</span>        super();<a name="line.562"></a>
+<span class="sourceLineNo">563</span>        this.selectedFiles = selectedFiles;<a name="line.563"></a>
+<span class="sourceLineNo">564</span>      }<a name="line.564"></a>
+<span class="sourceLineNo">565</span><a name="line.565"></a>
+<span class="sourceLineNo">566</span>      @Override<a name="line.566"></a>
+<span class="sourceLineNo">567</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.567"></a>
+<span class="sourceLineNo">568</span>        return new ArrayList&lt;&gt;();<a name="line.568"></a>
+<span class="sourceLineNo">569</span>      }<a name="line.569"></a>
+<span class="sourceLineNo">570</span><a name="line.570"></a>
+<span class="sourceLineNo">571</span>      @Override<a name="line.571"></a>
+<span class="sourceLineNo">572</span>      public boolean select(List&lt;HStoreFile&gt; filesCompacting, boolean isUserCompaction,<a name="line.572"></a>
+<span class="sourceLineNo">573</span>          boolean mayUseOffPeak, boolean forceMajor) throws IOException {<a name="line.573"></a>
+<span class="sourceLineNo">574</span>        this.request = new CompactionRequestImpl(selectedFiles);<a name="line.574"></a>
+<span class="sourceLineNo">575</span>        this.request.setPriority(getPriority());<a name="line.575"></a>
+<span class="sourceLineNo">576</span>        return true;<a name="line.576"></a>
+<span class="sourceLineNo">577</span>      }<a name="line.577"></a>
+<span class="sourceLineNo">578</span><a name="line.578"></a>
+<span class="sourceLineNo">579</span>      @Override<a name="line.579"></a>
+<span class="sourceLineNo">580</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.580"></a>
+<span class="sourceLineNo">581</span>          throws IOException {<a name="line.581"></a>
+<span class="sourceLineNo">582</span>        finishCompaction(this.selectedFiles);<a name="line.582"></a>
+<span class="sourceLineNo">583</span>        return new ArrayList&lt;&gt;();<a name="line.583"></a>
+<span class="sourceLineNo">584</span>      }<a name="line.584"></a>
+<span class="sourceLineNo">585</span>    }<a name="line.585"></a>
+<span class="sourceLineNo">586</span><a name="line.586"></a>
+<span class="sourceLineNo">587</span>    @Override<a name="line.587"></a>
+<span class="sourceLineNo">588</span>    public synchronized Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.588"></a>
+<span class="sourceLineNo">589</span>      CompactionContext ctx = new TestCompactionContext(new ArrayList&lt;&gt;(notCompacting));<a name="line.589"></a>
+<span class="sourceLineNo">590</span>      compacting.addAll(notCompacting);<a name="line.590"></a>
+<span class="sourceLineNo">591</span>      notCompacting.clear();<a name="line.591"></a>
+<span class="sourceLineNo">592</span>      try {<a name="line.592"></a>
+<span class="sourceLineNo">593</span>        ctx.select(null, false, false, false);<a name="line.593"></a>
+<span class="sourceLineNo">594</span>      } catch (IOException ex) {<a name="line.594"></a>
+<span class="sourceLineNo">595</span>        fail("Shouldn't happen");<a name="line.595"></a>
+<span class="sourceLineNo">596</span>      }<a name="line.596"></a>
+<span class="sourceLineNo">597</span>      return Optional.of(ctx);<a name="line.597"></a>
+<span class="sourceLineNo">598</span>    }<a name="line.598"></a>
+<span class="sourceLineNo">599</span><a name="line.599"></a>
+<span class="sourceLineNo">600</span>    @Override<a name="line.600"></a>
+<span class="sourceLineNo">601</span>    public synchronized void cancelCompaction(Object object) {<a name="line.601"></a>
+<span class="sourceLineNo">602</span>      TestCompactionContext ctx = (TestCompactionContext)object;<a name="line.602"></a>
+<span class="sourceLineNo">603</span>      compacting.removeAll(ctx.selectedFiles);<a name="line.603"></a>
+<span class="sourceLineNo">604</span>      notCompacting.addAll(ctx.selectedFiles);<a name="line.604"></a>
+<span class="sourceLineNo">605</span>    }<a name="line.605"></a>
+<span class="sourceLineNo">606</span><a name="line.606"></a>
+<span class="sourceLineNo">607</span>    public synchronized void finishCompaction(List&lt;HStoreFile&gt; sfs) {<a name="line.607"></a>
+<span class="sourceLineNo">608</span>      if (sfs.isEmpty()) return;<a name="line.608"></a>
+<span class="sourceLineNo">609</span>      synchronized (results) {<a name="line.609"></a>
+<span class="sourceLineNo">610</span>        results.add(sfs.size());<a name="line.610"></a>
+<span class="sourceLineNo">611</span>      }<a name="line.611"></a>
+<span class="sourceLineNo">612</span>      compacting.removeAll(sfs);<a name="line.612"></a>
+<span class="sourceLineNo">613</span>    }<a name="line.613"></a>
+<span class="sourceLineNo">614</span><a name="line.614"></a>
+<span class="sourceLineNo">615</span>    @Override<a name="line.615"></a>
+<span class="sourceLineNo">616</span>    public int getPriority() {<a name="line.616"></a>
+<span class="sourceLineNo">617</span>      return 7 - compacting.size() - notCompacting.size();<a name="line.617"></a>
+<span class="sourceLineNo">618</span>    }<a name="line.618"></a>
+<span class="sourceLineNo">619</span>  }<a name="line.619"></a>
+<span class="sourceLineNo">620</span><a name="line.620"></a>
+<span class="sourceLineNo">621</span>  public class BlockingStoreMockMaker extends StatefulStoreMockMaker {<a name="line.621"></a>
+<span class="sourceLineNo">622</span>    BlockingCompactionContext blocked = null;<a name="line.622"></a>
+<span class="sourceLineNo">623</span><a name="line.623"></a>
+<span class="sourceLineNo">624</span>    public class BlockingCompactionContext extends CompactionContext {<a name="line.624"></a>
+<span class="sourceLineNo">625</span>      public volatile boolean isInCompact = false;<a name="line.625"></a>
+<span class="sourceLineNo">626</span><a name="line.626"></a>
+<span class="sourceLineNo">627</span>      public void unblock() {<a name="line.627"></a>
+<span class="sourceLineNo">628</span>        synchronized (this) {<a name="line.628"></a>
+<span class="sourceLineNo">629</span>          this.notifyAll();<a name="line.629"></a>
+<span class="sourceLineNo">630</span>        }<a name="line.630"></a>
+<span class="sourceLineNo">631</span>      }<a name="line.631"></a>
+<span class="sourceLineNo">632</span><a name="line.632"></a>
+<span class="sourceLineNo">633</span>      @Override<a name="line.633"></a>
+<span class="sourceLineNo">634</span>      public List&lt;Path&gt; compact(ThroughputController throughputController, User user)<a name="line.634"></a>
+<span class="sourceLineNo">635</span>          throws IOException {<a name="line.635"></a>
+<span class="sourceLineNo">636</span>        try {<a name="line.636"></a>
+<span class="sourceLineNo">637</span>          isInCompact = true;<a name="line.637"></a>
+<span class="sourceLineNo">638</span>          synchronized (this) {<a name="line.638"></a>
+<span class="sourceLineNo">639</span>            this.wait();<a name="line.639"></a>
+<span class="sourceLineNo">640</span>          }<a name="line.640"></a>
+<span class="sourceLineNo">641</span>        } catch (InterruptedException e) {<a name="line.641"></a>
+<span class="sourceLineNo">642</span>          Assume.assumeNoException(e);<a name="line.642"></a>
+<span class="sourceLineNo">643</span>        }<a name="line.643"></a>
+<span class="sourceLineNo">644</span>        return new ArrayList&lt;&gt;();<a name="line.644"></a>
+<span class="sourceLineNo">645</span>      }<a name="line.645"></a>
+<span class="sourceLineNo">646</span><a name="line.646"></a>
+<span class="sourceLineNo">647</span>      @Override<a name="line.647"></a>
+<span class="sourceLineNo">648</span>      public List&lt;HStoreFile&gt; preSelect(List&lt;HStoreFile&gt; filesCompacting) {<a name="line.648"></a>
+<span class="sourceLineNo">649</span>        return new ArrayList&lt;&gt;();<a name="line.649"></a>
+<span class="sourceLineNo">650</span>      }<a name="line.650"></a>
+<span class="sourceLineNo">651</span><a name="line.651"></a>
+<span class="sourceLineNo">652</span>      @Override<a name="line.652"></a>
+<span class="sourceLineNo">653</span>      public boolean select(List&lt;HStoreFile&gt; f, boolean i, boolean m, boolean e)<a name="line.653"></a>
+<span class="sourceLineNo">654</span>          throws IOException {<a name="line.654"></a>
+<span class="sourceLineNo">655</span>        this.request = new CompactionRequestImpl(new ArrayList&lt;&gt;());<a name="line.655"></a>
+<span class="sourceLineNo">656</span>        return true;<a name="line.656"></a>
+<span class="sourceLineNo">657</span>      }<a name="line.657"></a>
+<span class="sourceLineNo">658</span>    }<a name="line.658"></a>
+<span class="sourceLineNo">659</span><a name="line.659"></a>
+<span class="sourceLineNo">660</span>    @Override<a name="line.660"></a>
+<span class="sourceLineNo">661</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.661"></a>
+<span class="sourceLineNo">662</span>      this.blocked = new BlockingCompactionContext();<a name="line.662"></a>
+<span class="sourceLineNo">663</span>      try {<a name="line.663"></a>
+<span class="sourceLineNo">664</span>        this.blocked.select(null, false, false, false);<a name="line.664"></a>
+<span class="sourceLineNo">665</span>      } catch (IOException ex) {<a name="line.665"></a>
+<span class="sourceLineNo">666</span>        fail("Shouldn't happen");<a name="line.666"></a>
+<span class="sourceLineNo">667</span>      }<a name="line.667"></a>
+<span class="sourceLineNo">668</span>      return Optional.of(blocked);<a name="line.668"></a>
 <span class="sourceLineNo">669</span>    }<a name="line.669"></a>
 <span class="sourceLineNo">670</span><a name="line.670"></a>
 <span class="sourceLineNo">671</span>    @Override<a name="line.671"></a>
-<span class="sourceLineNo">672</span>    public Optional&lt;CompactionContext&gt; selectCompaction() {<a name="line.672"></a>
-<span class="sourceLineNo">673</span>      this.blocked = new BlockingCompactionContext();<a name="line.673"></a>
-<span class="sourceLineNo">674</span>      try {<a name="line.674"></a>
-<span class="sourceLineNo">675</span>        this.blocked.select(null, false, false, false);<a name="line.675"></a>
-<span class="sourceLineNo">676</span>      } catch (IOException ex) {<a name="line.676"></a>
-<span class="sourceLineNo">677</span>        fail("Shouldn't happen");<a name="line.677"></a>
-<span class="sourceLineNo">678</span>      }<a name="line.678"></a>
-<span class="sourceLineNo">679</span>      return Optional.of(blocked);<a name="line.679"></a>
-<span class="sourceLineNo">680</span>    }<a name="line.680"></a>
-<span class="sourceLineNo">681</span><a name="line.681"></a>
-<span class="sourceLineNo">682</span>    @Override<a name="line.682"></a>
-<span class="sourceLineNo">683</span>    public void cancelCompaction(Object object) {}<a name="line.683"></a>
-<span class="sourceLineNo">684</span><a name="line.684"></a>
-<span class="sourceLineNo">685</span>    @Override<a name="line.685"></a>
-<span class="sourceLineNo">686</span>    public int getPriority() {<a name="line.686"></a>
-<span class="sourceLineNo">687</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.687"></a>
-<span class="sourceLineNo">688</span>    }<a name="line.688"></a>
-<span class="sourceLineNo">689</span><a name="line.689"></a>
-<span class="sourceLineNo">690</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.690"></a>
-<span class="sourceLineNo">691</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.691"></a>
-<span class="sourceLineNo">692</span>        Threads.sleepWithoutInterrupt(50);<a name="line.692"></a>
-<span class="sourceLineNo">693</span>      }<a name="line.693"></a>
-<span class="sourceLineNo">694</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.694"></a>
-<span class="sourceLineNo">695</span>      this.blocked = null;<a name="line.695"></a>
-<span class="sourceLineNo">696</span>      return ctx;<a name="line.696"></a>
-<span class="sourceLineNo">697</span>    }<a name="line.697"></a>
-<span class="sourceLineNo">698</span><a name="line.698"></a>
-<span class="sourceLineNo">699</span>    @Override<a name="line.699"></a>
-<span class="sourceLineNo">700</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.700"></a>
-<span class="sourceLineNo">701</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.701"></a>
-<span class="sourceLineNo">702</span>    }<a name="line.702"></a>
-<span class="sourceLineNo">703</span><a name="line.703"></a>
-<span class="sourceLineNo">704</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.704"></a>
-<span class="sourceLineNo">705</span>      // Override the mock to always return the specified priority.<a name="line.705"></a>
-<span class="sourceLineNo">706</span>      HStore s = super.createStoreMock(name);<a name="line.706"></a>
-<span class="sourceLineNo">707</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.707"></a>
-<span class="sourceLineNo">708</span>      return s;<a name="line.708"></a>
-<span class="sourceLineNo">709</span>    }<a name="line.709"></a>
-<span class="sourceLineNo">710</span>  }<a name="line.710"></a>
-<span class="sourceLineNo">711</span><a name="line.711"></a>
-<span class="sourceLineNo">712</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.712"></a>
-<span class="sourceLineNo">713</span>  @Test<a name="line.713"></a>
-<span class="sourceLineNo">714</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    // Setup a compact/split thread on a mock server.<a name="line.715"></a>
-<span class="sourceLineNo">716</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.716"></a>
-<span class="sourceLineNo">717</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.717"></a>
-<span class="sourceLineNo">718</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.718"></a>
-<span class="sourceLineNo">719</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.719"></a>
-<span class="sourceLineNo">720</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.720"></a>
-<span class="sourceLineNo">721</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.721"></a>
-<span class="sourceLineNo">722</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.722"></a>
-<span class="sourceLineNo">723</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.723"></a>
-<span class="sourceLineNo">724</span>    cst.shutdownLongCompactions();<a name="line.724"></a>
-<span class="sourceLineNo">725</span>    // Set up the region mock that redirects compactions.<a name="line.725"></a>
-<span class="sourceLineNo">726</span>    HRegion r = mock(HRegion.class);<a name="line.726"></a>
-<span class="sourceLineNo">727</span>    when(<a name="line.727"></a>
-<span class="sourceLineNo">728</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.728"></a>
-<span class="sourceLineNo">729</span>        @Override<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.730"></a>
-<span class="sourceLineNo">731</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.731"></a>
-<span class="sourceLineNo">732</span>          return true;<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        }<a name="line.733"></a>
-<span class="sourceLineNo">734</span>    });<a name="line.734"></a>
+<span class="sourceLineNo">672</span>    public void cancelCompaction(Object object) {}<a name="line.672"></a>
+<span class="sourceLineNo">673</span><a name="line.673"></a>
+<span class="sourceLineNo">674</span>    @Override<a name="line.674"></a>
+<span class="sourceLineNo">675</span>    public int getPriority() {<a name="line.675"></a>
+<span class="sourceLineNo">676</span>      return Integer.MIN_VALUE; // some invalid value, see createStoreMock<a name="line.676"></a>
+<span class="sourceLineNo">677</span>    }<a name="line.677"></a>
+<span class="sourceLineNo">678</span><a name="line.678"></a>
+<span class="sourceLineNo">679</span>    public BlockingCompactionContext waitForBlocking() {<a name="line.679"></a>
+<span class="sourceLineNo">680</span>      while (this.blocked == null || !this.blocked.isInCompact) {<a name="line.680"></a>
+<span class="sourceLineNo">681</span>        Threads.sleepWithoutInterrupt(50);<a name="line.681"></a>
+<span class="sourceLineNo">682</span>      }<a name="line.682"></a>
+<span class="sourceLineNo">683</span>      BlockingCompactionContext ctx = this.blocked;<a name="line.683"></a>
+<span class="sourceLineNo">684</span>      this.blocked = null;<a name="line.684"></a>
+<span class="sourceLineNo">685</span>      return ctx;<a name="line.685"></a>
+<span class="sourceLineNo">686</span>    }<a name="line.686"></a>
+<span class="sourceLineNo">687</span><a name="line.687"></a>
+<span class="sourceLineNo">688</span>    @Override<a name="line.688"></a>
+<span class="sourceLineNo">689</span>    public HStore createStoreMock(String name) throws Exception {<a name="line.689"></a>
+<span class="sourceLineNo">690</span>      return createStoreMock(Integer.MIN_VALUE, name);<a name="line.690"></a>
+<span class="sourceLineNo">691</span>    }<a name="line.691"></a>
+<span class="sourceLineNo">692</span><a name="line.692"></a>
+<span class="sourceLineNo">693</span>    public HStore createStoreMock(int priority, String name) throws Exception {<a name="line.693"></a>
+<span class="sourceLineNo">694</span>      // Override the mock to always return the specified priority.<a name="line.694"></a>
+<span class="sourceLineNo">695</span>      HStore s = super.createStoreMock(name);<a name="line.695"></a>
+<span class="sourceLineNo">696</span>      when(s.getCompactPriority()).thenReturn(priority);<a name="line.696"></a>
+<span class="sourceLineNo">697</span>      return s;<a name="line.697"></a>
+<span class="sourceLineNo">698</span>    }<a name="line.698"></a>
+<span class="sourceLineNo">699</span>  }<a name="line.699"></a>
+<span class="sourceLineNo">700</span><a name="line.700"></a>
+<span class="sourceLineNo">701</span>  /** Test compaction priority management and multiple compactions per store (HBASE-8665). */<a name="line.701"></a>
+<span class="sourceLineNo">702</span>  @Test<a name="line.702"></a>
+<span class="sourceLineNo">703</span>  public void testCompactionQueuePriorities() throws Exception {<a name="line.703"></a>
+<span class="sourceLineNo">704</span>    // Setup a compact/split thread on a mock server.<a name="line.704"></a>
+<span class="sourceLineNo">705</span>    final Configuration conf = HBaseConfiguration.create();<a name="line.705"></a>
+<span class="sourceLineNo">706</span>    HRegionServer mockServer = mock(HRegionServer.class);<a name="line.706"></a>
+<span class="sourceLineNo">707</span>    when(mockServer.isStopped()).thenReturn(false);<a name="line.707"></a>
+<span class="sourceLineNo">708</span>    when(mockServer.getConfiguration()).thenReturn(conf);<a name="line.708"></a>
+<span class="sourceLineNo">709</span>    when(mockServer.getChoreService()).thenReturn(new ChoreService("test"));<a name="line.709"></a>
+<span class="sourceLineNo">710</span>    CompactSplit cst = new CompactSplit(mockServer);<a name="line.710"></a>
+<span class="sourceLineNo">711</span>    when(mockServer.getCompactSplitThread()).thenReturn(cst);<a name="line.711"></a>
+<span class="sourceLineNo">712</span>    //prevent large compaction thread pool stealing job from small compaction queue.<a name="line.712"></a>
+<span class="sourceLineNo">713</span>    cst.shutdownLongCompactions();<a name="line.713"></a>
+<span class="sourceLineNo">714</span>    // Set up the region mock that redirects compactions.<a name="line.714"></a>
+<span class="sourceLineNo">715</span>    HRegion r = mock(HRegion.class);<a name="line.715"></a>
+<span class="sourceLineNo">716</span>    when(<a name="line.716"></a>
+<span class="sourceLineNo">717</span>      r.compact(any(), any(), any(), any())).then(new Answer&lt;Boolean&gt;() {<a name="line.717"></a>
+<span class="sourceLineNo">718</span>        @Override<a name="line.718"></a>
+<span class="sourceLineNo">719</span>        public Boolean answer(InvocationOnMock invocation) throws Throwable {<a name="line.719"></a>
+<span class="sourceLineNo">720</span>          invocation.&lt;CompactionContext&gt;getArgument(0).compact(invocation.getArgument(2), null);<a name="line.720"></a>
+<span class="sourceLineNo">721</span>          return true;<a name="line.721"></a>
+<span class="sourceLineNo">722</span>        }<a name="line.722"></a>
+<span class="sourceLineNo">723</span>    });<a name="line.723"></a>
+<span class="sourceLineNo">724</span><a name="line.724"></a>
+<span class="sourceLineNo">725</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.725"></a>
+<span class="sourceLineNo">726</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.726"></a>
+<span class="sourceLineNo">727</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.727"></a>
+<span class="sourceLineNo">728</span>    HStore store = sm.createStoreMock("store1");<a name="line.728"></a>
+<span class="sourceLineNo">729</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.729"></a>
+<span class="sourceLineNo">730</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.730"></a>
+<span class="sourceLineNo">731</span><a name="line.731"></a>
+<span class="sourceLineNo">732</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.732"></a>
+<span class="sourceLineNo">733</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.733"></a>
+<span class="sourceLineNo">734</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.734"></a>
 <span class="sourceLineNo">735</span><a name="line.735"></a>
-<span class="sourceLineNo">736</span>    // Set up store mocks for 2 "real" stores and the one we use for blocking CST.<a name="line.736"></a>
-<span class="sourceLineNo">737</span>    ArrayList&lt;Integer&gt; results = new ArrayList&lt;&gt;();<a name="line.737"></a>
-<span class="sourceLineNo">738</span>    StoreMockMaker sm = new StoreMockMaker(results), sm2 = new StoreMockMaker(results);<a name="line.738"></a>
-<span class="sourceLineNo">739</span>    HStore store = sm.createStoreMock("store1");<a name="line.739"></a>
-<span class="sourceLineNo">740</span>    HStore store2 = sm2.createStoreMock("store2");<a name="line.740"></a>
-<span class="sourceLineNo">741</span>    BlockingStoreMockMaker blocker = new BlockingStoreMockMaker();<a name="line.741"></a>
-<span class="sourceLineNo">742</span><a name="line.742"></a>
-<span class="sourceLineNo">743</span>    // First, block the compaction thread so that we could muck with queue.<a name="line.743"></a>
-<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(1, "b-pri1"), "b-pri1");<a name="line.744"></a>
-<span class="sourceLineNo">745</span>    BlockingStoreMockMaker.BlockingCompactionContext currentBlock = blocker.waitForBlocking();<a name="line.745"></a>
-<span class="sourceLineNo">746</span><a name="line.746"></a>
-<span class="sourceLineNo">747</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.747"></a>
-<span class="sourceLineNo">748</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.748"></a>
-<span class="sourceLineNo">749</span>      sm.notCompacting.add(createFile());<a name="line.749"></a>
-<span class="sourceLineNo">750</span>    }<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.751"></a>
-<span class="sourceLineNo">752</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.752"></a>
-<span class="sourceLineNo">753</span>      sm2.notCompacting.add(createFile());<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
-<span class="sourceLineNo">755</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.755"></a>
-<span class="sourceLineNo">756</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.756"></a>
-<span class="sourceLineNo">757</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.757"></a>
-<span class="sourceLineNo">758</span>      sm.notCompacting.add(createFile());<a name="line.758"></a>
-<span class="sourceLineNo">759</span>    }<a name="line.759"></a>
-<span class="sourceLineNo">760</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.760"></a>
-<span class="sourceLineNo">761</span>    // Finally add blocking compaction with priority 2.<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    currentBlock.unblock();<a name="line.765"></a>
-<span class="sourceLineNo">766</span>    currentBlock = blocker.waitForBlocking();<a name="line.766"></a>
-<span class="sourceLineNo">767</span>    // Pri1 should have "compacted" all 6 files.<a name="line.767"></a>
-<span class="sourceLineNo">768</span>    assertEquals(1, results.size());<a name="line.768"></a>
-<span class="sourceLineNo">769</span>    assertEquals(6, results.get(0).intValue());<a name="line.769"></a>
-<span class="sourceLineNo">770</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.770"></a>
-<span class="sourceLineNo">771</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.771"></a>
-<span class="sourceLineNo">772</span>      sm.notCompacting.add(createFile());<a name="line.772"></a>
-<span class="sourceLineNo">773</span>    }<a name="line.773"></a>
-<span class="sourceLineNo">774</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.774"></a>
-<span class="sourceLineNo">775</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.775"></a>
-<span class="sourceLineNo">776</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.776"></a>
-<span class="sourceLineNo">777</span>    currentBlock.unblock();<a name="line.777"></a>
-<span class="sourceLineNo">778</span>    currentBlock = blocker.waitForBlocking();<a name="line.778"></a>
-<span class="sourceLineNo">779</span>    assertEquals(3, results.size());<a name="line.779"></a>
-<span class="sourceLineNo">780</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.780"></a>
-<span class="sourceLineNo">781</span>    assertEquals(2, results.get(2).intValue());<a name="line.781"></a>
-<span class="sourceLineNo">782</span><a name="line.782"></a>
-<span class="sourceLineNo">783</span>    currentBlock.unblock();<a name="line.783"></a>
-<span class="sourceLineNo">784</span>    cst.interruptIfNecessary();<a name="line.784"></a>
-<span class="sourceLineNo">785</span>  }<a name="line.785"></a>
-<span class="sourceLineNo">786</span><a name="line.786"></a>
-<span class="sourceLineNo">787</span>  /**<a name="line.787"></a>
-<span class="sourceLineNo">788</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.788"></a>
-<span class="sourceLineNo">789</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.789"></a>
-<span class="sourceLineNo">790</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.790"></a>
-<span class="sourceLineNo">791</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.791"></a>
-<span class="sourceLineNo">792</span>   * sequence id, and will get scanned successively during compaction.<a name="line.792"></a>
-<span class="sourceLineNo">793</span>   * &lt;p/&gt;<a name="line.793"></a>
-<span class="sourceLineNo">794</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.794"></a>
-<span class="sourceLineNo">795</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.795"></a>
-<span class="sourceLineNo">796</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.796"></a>
-<span class="sourceLineNo">797</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.797"></a>
-<span class="sourceLineNo">798</span>   * out-of-order assertion error before HBASE-16931<a name="line.798"></a>
-<span class="sourceLineNo">799</span>   *<a name="line.799"></a>
-<span class="sourceLineNo">800</span>   * @throws Exception<a name="line.800"></a>
-<span class="sourceLineNo">801</span>   *           if error occurs during the test<a name="line.801"></a>
-<span class="sourceLineNo">802</span>   */<a name="line.802"></a>
-<span class="sourceLineNo">803</span>  @Test<a name="line.803"></a>
-<span class="sourceLineNo">804</span>  public void testCompactionSeqId() throws Exception {<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.805"></a>
-<span class="sourceLineNo">806</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.806"></a>
-<span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>    long timestamp = 10000;<a name="line.808"></a>
-<span class="sourceLineNo">809</span><a name="line.809"></a>
-<span class="sourceLineNo">810</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.810"></a>
-<span class="sourceLineNo">811</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.811"></a>
-<span class="sourceLineNo">812</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.812"></a>
-<span class="sourceLineNo">813</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.815"></a>
-<span class="sourceLineNo">816</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.816"></a>
-<span class="sourceLineNo">817</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.818"></a>
-<span class="sourceLineNo">819</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.819"></a>
-<span class="sourceLineNo">820</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      Put put = new Put(ROW);<a name="line.821"></a>
-<span class="sourceLineNo">822</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.822"></a>
-<span class="sourceLineNo">823</span>      r.put(put);<a name="line.823"></a>
-<span class="sourceLineNo">824</span>    }<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    r.flush(true);<a name="line.825"></a>
-<span class="sourceLineNo">826</span><a name="line.826"></a>
-<span class="sourceLineNo">827</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.827"></a>
-<span class="sourceLineNo">828</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.828"></a>
-<span class="sourceLineNo">829</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.829"></a>
-<span class="sourceLineNo">830</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.830"></a>
-<span class="sourceLineNo">831</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.831"></a>
-<span class="sourceLineNo">832</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.832"></a>
-<span class="sourceLineNo">833</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.833"></a>
-<span class="sourceLineNo">834</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>      Put put = new Put(ROW);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      r.put(put);<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    r.flush(true);<a name="line.842"></a>
-<span class="sourceLineNo">843</span>    r.compact(true);<a name="line.843"></a>
-<span class="sourceLineNo">844</span>  }<a name="line.844"></a>
-<span class="sourceLineNo">845</span><a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.847"></a>
-<span class="sourceLineNo">848</span>      super(conf, store);<a name="line.848"></a>
-<span class="sourceLineNo">849</span>      this.keepSeqIdPeriod = 0;<a name="line.849"></a>
-<span class="sourceLineNo">850</span>    }<a name="line.850"></a>
-<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
-<span class="sourceLineNo">852</span><a name="line.852"></a>
-<span class="sourceLineNo">853</span>  private static HStoreFile createFile() throws Exception {<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.854"></a>
-<span class="sourceLineNo">855</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.855"></a>
-<span class="sourceLineNo">856</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.856"></a>
-<span class="sourceLineNo">857</span>    when(r.length()).thenReturn(10L);<a name="line.857"></a>
-<span class="sourceLineNo">858</span>    when(sf.getReader()).thenReturn(r);<a name="line.858"></a>
-<span class="sourceLineNo">859</span>    return sf;<a name="line.859"></a>
-<span class="sourceLineNo">860</span>  }<a name="line.860"></a>
-<span class="sourceLineNo">861</span><a name="line.861"></a>
-<span class="sourceLineNo">862</span>  /**<a name="line.862"></a>
-<span class="sourceLineNo">863</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.863"></a>
-<span class="sourceLineNo">864</span>   * finishes.<a name="line.864"></a>
-<span class="sourceLineNo">865</span>   */<a name="line.865"></a>
-<span class="sourceLineNo">866</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.866"></a>
-<span class="sourceLineNo">867</span><a name="line.867"></a>
-<span class="sourceLineNo">868</span>    private final CountDownLatch done;<a name="line.868"></a>
-<span class="sourceLineNo">869</span><a name="line.869"></a>
-<span class="sourceLineNo">870</span>    public Tracker(CountDownLatch done) {<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      this.done = done;<a name="line.871"></a>
-<span class="sourceLineNo">872</span>    }<a name="line.872"></a>
-<span class="sourceLineNo">873</span><a name="line.873"></a>
-<span class="sourceLineNo">874</span>    @Override<a name="line.874"></a>
-<span class="sourceLineNo">875</span>    public void afterExecution(Store store) {<a name="line.875"></a>
-<span class="sourceLineNo">876</span>      done.countDown();<a name="line.876"></a>
-<span class="sourceLineNo">877</span>    }<a name="line.877"></a>
-<span class="sourceLineNo">878</span>  }<a name="line.878"></a>
-<span class="sourceLineNo">879</span><a name="line.879"></a>
-<span class="sourceLineNo">880</span>  /**<a name="line.880"></a>
-<span class="sourceLineNo">881</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.881"></a>
-<span class="sourceLineNo">882</span>   * finishes.<a name="line.882"></a>
-<span class="sourceLineNo">883</span>   */<a name="line.883"></a>
-<span class="sourceLineNo">884</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.884"></a>
-<span class="sourceLineNo">885</span><a name="line.885"></a>
-<span class="sourceLineNo">886</span>    public WaitThroughPutController() {<a name="line.886"></a>
-<span class="sourceLineNo">887</span>    }<a name="line.887"></a>
-<span class="sourceLineNo">888</span><a name="line.888"></a>
-<span class="sourceLineNo">889</span>    @Override<a name="line.889"></a>
-<span class="sourceLineNo">890</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.890"></a>
-<span class="sourceLineNo">891</span>      Thread.sleep(6000000);<a name="line.891"></a>
-<span class="sourceLineNo">892</span>      return 6000000;<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    }<a name="line.893"></a>
-<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
-<span class="sourceLineNo">895</span>}<a name="line.895"></a>
+<span class="sourceLineNo">736</span>    // Add 4 files to store1, 3 to store2, and queue compactions; pri 3 and 4 respectively.<a name="line.736"></a>
+<span class="sourceLineNo">737</span>    for (int i = 0; i &lt; 4; ++i) {<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      sm.notCompacting.add(createFile());<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>    cst.requestSystemCompaction(r, store, "s1-pri3");<a name="line.740"></a>
+<span class="sourceLineNo">741</span>    for (int i = 0; i &lt; 3; ++i) {<a name="line.741"></a>
+<span class="sourceLineNo">742</span>      sm2.notCompacting.add(createFile());<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    }<a name="line.743"></a>
+<span class="sourceLineNo">744</span>    cst.requestSystemCompaction(r, store2, "s2-pri4");<a name="line.744"></a>
+<span class="sourceLineNo">745</span>    // Now add 2 more files to store1 and queue compaction - pri 1.<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.746"></a>
+<span class="sourceLineNo">747</span>      sm.notCompacting.add(createFile());<a name="line.747"></a>
+<span class="sourceLineNo">748</span>    }<a name="line.748"></a>
+<span class="sourceLineNo">749</span>    cst.requestSystemCompaction(r, store, "s1-pri1");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>    // Finally add blocking compaction with priority 2.<a name="line.750"></a>
+<span class="sourceLineNo">751</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(2, "b-pri2"), "b-pri2");<a name="line.751"></a>
+<span class="sourceLineNo">752</span><a name="line.752"></a>
+<span class="sourceLineNo">753</span>    // Unblock the blocking compaction; we should run pri1 and become block again in pri2.<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    currentBlock.unblock();<a name="line.754"></a>
+<span class="sourceLineNo">755</span>    currentBlock = blocker.waitForBlocking();<a name="line.755"></a>
+<span class="sourceLineNo">756</span>    // Pri1 should have "compacted" all 6 files.<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    assertEquals(1, results.size());<a name="line.757"></a>
+<span class="sourceLineNo">758</span>    assertEquals(6, results.get(0).intValue());<a name="line.758"></a>
+<span class="sourceLineNo">759</span>    // Add 2 files to store 1 (it has 2 files now).<a name="line.759"></a>
+<span class="sourceLineNo">760</span>    for (int i = 0; i &lt; 2; ++i) {<a name="line.760"></a>
+<span class="sourceLineNo">761</span>      sm.notCompacting.add(createFile());<a name="line.761"></a>
+<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
+<span class="sourceLineNo">763</span>    // Now we have pri4 for store 2 in queue, and pri3 for store1; store1's current priority<a name="line.763"></a>
+<span class="sourceLineNo">764</span>    // is 5, however, so it must not preempt store 2. Add blocking compaction at the end.<a name="line.764"></a>
+<span class="sourceLineNo">765</span>    cst.requestSystemCompaction(r, blocker.createStoreMock(7, "b-pri7"), "b-pri7");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>    currentBlock.unblock();<a name="line.766"></a>
+<span class="sourceLineNo">767</span>    currentBlock = blocker.waitForBlocking();<a name="line.767"></a>
+<span class="sourceLineNo">768</span>    assertEquals(3, results.size());<a name="line.768"></a>
+<span class="sourceLineNo">769</span>    assertEquals(3, results.get(1).intValue()); // 3 files should go before 2 files.<a name="line.769"></a>
+<span class="sourceLineNo">770</span>    assertEquals(2, results.get(2).intValue());<a name="line.770"></a>
+<span class="sourceLineNo">771</span><a name="line.771"></a>
+<span class="sourceLineNo">772</span>    currentBlock.unblock();<a name="line.772"></a>
+<span class="sourceLineNo">773</span>    cst.interruptIfNecessary();<a name="line.773"></a>
+<span class="sourceLineNo">774</span>  }<a name="line.774"></a>
+<span class="sourceLineNo">775</span><a name="line.775"></a>
+<span class="sourceLineNo">776</span>  /**<a name="line.776"></a>
+<span class="sourceLineNo">777</span>   * Firstly write 10 cells (with different time stamp) to a qualifier and flush<a name="line.777"></a>
+<span class="sourceLineNo">778</span>   * to hfile1, then write 10 cells (with different time stamp) to the same<a name="line.778"></a>
+<span class="sourceLineNo">779</span>   * qualifier and flush to hfile2. The latest cell (cell-A) in hfile1 and the<a name="line.779"></a>
+<span class="sourceLineNo">780</span>   * oldest cell (cell-B) in hfile2 are with the same time stamp but different<a name="line.780"></a>
+<span class="sourceLineNo">781</span>   * sequence id, and will get scanned successively during compaction.<a name="line.781"></a>
+<span class="sourceLineNo">782</span>   * &lt;p/&gt;<a name="line.782"></a>
+<span class="sourceLineNo">783</span>   * We set compaction.kv.max to 10 so compaction will scan 10 versions each<a name="line.783"></a>
+<span class="sourceLineNo">784</span>   * round, meanwhile we set keepSeqIdPeriod=0 in {@link DummyCompactor} so all<a name="line.784"></a>
+<span class="sourceLineNo">785</span>   * 10 versions of hfile2 will be written out with seqId cleaned (set to 0)<a name="line.785"></a>
+<span class="sourceLineNo">786</span>   * including cell-B, then when scanner goes to cell-A it will cause a scan<a name="line.786"></a>
+<span class="sourceLineNo">787</span>   * out-of-order assertion error before HBASE-16931<a name="line.787"></a>
+<span class="sourceLineNo">788</span>   *<a name="line.788"></a>
+<span class="sourceLineNo">789</span>   * @throws Exception<a name="line.789"></a>
+<span class="sourceLineNo">790</span>   *           if error occurs during the test<a name="line.790"></a>
+<span class="sourceLineNo">791</span>   */<a name="line.791"></a>
+<span class="sourceLineNo">792</span>  @Test<a name="line.792"></a>
+<span class="sourceLineNo">793</span>  public void testCompactionSeqId() throws Exception {<a name="line.793"></a>
+<span class="sourceLineNo">794</span>    final byte[] ROW = Bytes.toBytes("row");<a name="line.794"></a>
+<span class="sourceLineNo">795</span>    final byte[] QUALIFIER = Bytes.toBytes("qualifier");<a name="line.795"></a>
+<span class="sourceLineNo">796</span><a name="line.796"></a>
+<span class="sourceLineNo">797</span>    long timestamp = 10000;<a name="line.797"></a>
+<span class="sourceLineNo">798</span><a name="line.798"></a>
+<span class="sourceLineNo">799</span>    // row1/cf:a/10009/Put/vlen=2/seqid=11 V: v9<a name="line.799"></a>
+<span class="sourceLineNo">800</span>    // row1/cf:a/10008/Put/vlen=2/seqid=10 V: v8<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    // row1/cf:a/10007/Put/vlen=2/seqid=9 V: v7<a name="line.801"></a>
+<span class="sourceLineNo">802</span>    // row1/cf:a/10006/Put/vlen=2/seqid=8 V: v6<a name="line.802"></a>
+<span class="sourceLineNo">803</span>    // row1/cf:a/10005/Put/vlen=2/seqid=7 V: v5<a name="line.803"></a>
+<span class="sourceLineNo">804</span>    // row1/cf:a/10004/Put/vlen=2/seqid=6 V: v4<a name="line.804"></a>
+<span class="sourceLineNo">805</span>    // row1/cf:a/10003/Put/vlen=2/seqid=5 V: v3<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // row1/cf:a/10002/Put/vlen=2/seqid=4 V: v2<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    // row1/cf:a/10001/Put/vlen=2/seqid=3 V: v1<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    // row1/cf:a/10000/Put/vlen=2/seqid=2 V: v0<a name="line.808"></a>
+<span class="sourceLineNo">809</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      Put put = new Put(ROW);<a name="line.810"></a>
+<span class="sourceLineNo">811</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.811"></a>
+<span class="sourceLineNo">812</span>      r.put(put);<a name="line.812"></a>
+<span class="sourceLineNo">813</span>    }<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    r.flush(true);<a name="line.814"></a>
+<span class="sourceLineNo">815</span><a name="line.815"></a>
+<span class="sourceLineNo">816</span>    // row1/cf:a/10018/Put/vlen=3/seqid=16 V: v18<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    // row1/cf:a/10017/Put/vlen=3/seqid=17 V: v17<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    // row1/cf:a/10016/Put/vlen=3/seqid=18 V: v16<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    // row1/cf:a/10015/Put/vlen=3/seqid=19 V: v15<a name="line.819"></a>
+<span class="sourceLineNo">820</span>    // row1/cf:a/10014/Put/vlen=3/seqid=20 V: v14<a name="line.820"></a>
+<span class="sourceLineNo">821</span>    // row1/cf:a/10013/Put/vlen=3/seqid=21 V: v13<a name="line.821"></a>
+<span class="sourceLineNo">822</span>    // row1/cf:a/10012/Put/vlen=3/seqid=22 V: v12<a name="line.822"></a>
+<span class="sourceLineNo">823</span>    // row1/cf:a/10011/Put/vlen=3/seqid=23 V: v11<a name="line.823"></a>
+<span class="sourceLineNo">824</span>    // row1/cf:a/10010/Put/vlen=3/seqid=24 V: v10<a name="line.824"></a>
+<span class="sourceLineNo">825</span>    // row1/cf:a/10009/Put/vlen=2/seqid=25 V: v9<a name="line.825"></a>
+<span class="sourceLineNo">826</span>    for (int i = 18; i &gt; 8; i--) {<a name="line.826"></a>
+<span class="sourceLineNo">827</span>      Put put = new Put(ROW);<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      put.addColumn(FAMILY, QUALIFIER, timestamp + i, Bytes.toBytes("v" + i));<a name="line.828"></a>
+<span class="sourceLineNo">829</span>      r.put(put);<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    }<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    r.flush(true);<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    r.compact(true);<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
+<span class="sourceLineNo">834</span><a name="line.834"></a>
+<span class="sourceLineNo">835</span>  public static class DummyCompactor extends DefaultCompactor {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    public DummyCompactor(Configuration conf, HStore store) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>      super(conf, store);<a name="line.837"></a>
+<span class="sourceLineNo">838</span>      this.keepSeqIdPeriod = 0;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    }<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span><a name="line.841"></a>
+<span class="sourceLineNo">842</span>  private static HStoreFile createFile() throws Exception {<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    HStoreFile sf = mock(HStoreFile.class);<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    when(sf.getPath()).thenReturn(new Path("file"));<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    StoreFileReader r = mock(StoreFileReader.class);<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    when(r.length()).thenReturn(10L);<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    when(sf.getReader()).thenReturn(r);<a name="line.847"></a>
+<span class="sourceLineNo">848</span>    return sf;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>  }<a name="line.849"></a>
+<span class="sourceLineNo">850</span><a name="line.850"></a>
+<span class="sourceLineNo">851</span>  /**<a name="line.851"></a>
+<span class="sourceLineNo">852</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.852"></a>
+<span class="sourceLineNo">853</span>   * finishes.<a name="line.853"></a>
+<span class="sourceLineNo">854</span>   */<a name="line.854"></a>
+<span class="sourceLineNo">855</span>  public static class Tracker implements CompactionLifeCycleTracker {<a name="line.855"></a>
+<span class="sourceLineNo">856</span><a name="line.856"></a>
+<span class="sourceLineNo">857</span>    private final CountDownLatch done;<a name="line.857"></a>
+<span class="sourceLineNo">858</span><a name="line.858"></a>
+<span class="sourceLineNo">859</span>    public Tracker(CountDownLatch done) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      this.done = done;<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span><a name="line.862"></a>
+<span class="sourceLineNo">863</span>    @Override<a name="line.863"></a>
+<span class="sourceLineNo">864</span>    public void afterExecution(Store store) {<a name="line.864"></a>
+<span class="sourceLineNo">865</span>      done.countDown();<a name="line.865"></a>
+<span class="sourceLineNo">866</span>    }<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  }<a name="line.867"></a>
+<span class="sourceLineNo">868</span><a name="line.868"></a>
+<span class="sourceLineNo">869</span>  /**<a name="line.869"></a>
+<span class="sourceLineNo">870</span>   * Simple {@link CompactionLifeCycleTracker} on which you can wait until the requested compaction<a name="line.870"></a>
+<span class="sourceLineNo">871</span>   * finishes.<a name="line.871"></a>
+<span class="sourceLineNo">872</span>   */<a name="line.872"></a>
+<span class="sourceLineNo">873</span>  public static class WaitThroughPutController extends NoLimitThroughputController{<a name="line.873"></a>
+<span class="sourceLineNo">874</span><a name="line.874"></a>
+<span class="sourceLineNo">875</span>    public WaitThroughPutController() {<a name="line.875"></a>
+<span class="sourceLineNo">876</span>    }<a name="line.876"></a>
+<span class="sourceLineNo">877</span><a name="line.877"></a>
+<span class="sourceLineNo">878</span>    @Override<a name="line.878"></a>
+<span class="sourceLineNo">879</span>    public long control(String compactionName, long size) throws InterruptedException {<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      Thread.sleep(6000000);<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      return 6000000;<a name="line.881"></a>
+<span class="sourceLineNo">882</span>    }<a name="line.882"></a>
+<span class="sourceLineNo">883</span>  }<a name="line.883"></a>
+<span class="sourceLineNo">884</span>}<a name="line.884"></a>